Commit Graph

5080 Commits

Author SHA1 Message Date
ocornut
b66f923895 ImStrv: made length() returns an int as it simplify the most common case (of passing %.*s to printf) 2025-12-11 23:28:16 +01:00
璀境石
e82377c3b1 ImStrv: enhanced VS debugger .natvis support. build fixes. (5333, 5906) 2025-12-11 23:28:16 +01:00
ocornut
2109538d7a ImStrv: standardized code doing format copy, optimized ImStrStr 2025-12-11 23:28:16 +01:00
ocornut
9feb591c60 ImStrv: Fixed various compile errors/warnings. 2025-12-11 23:28:15 +01:00
ocornut
2b6162b747 ImStrv: moved double char* function signatures under #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS blocks. 2025-12-11 23:28:15 +01:00
ocornut
3505a7082f ImStrv: Step 2 - change ImStrv typedef to struct, perform all other logic conversion.
Squashed commits (initially a commit from rokups + many rework by ocornut. keeping them separate commits made rebasing unnecessarily tricking so merged from 2024/02)
ImStrv: many fixes (see details), added imconfig class extension example, added natvis description.
ImStrv: rework toward ensuring End is always set to constant can be compile time calculated
ImStrv: using length(), fix ambiguous empty() function, fix altered behaviors, removed unused operators.
ImStrv: various tweaks and fixes. removed ImGuiTextRange from ImGuiTextFilter, fix test engine hooks, removed constructor only used twice.
2025-12-11 23:28:15 +01:00
Rokas Kupstys
935c78cb85 ImStrv: Step 1 - change string type to ImStrv in API. (REBASED)
(last rebase amend 2024/12/11)
2025-12-11 23:26:50 +01:00
ocornut
4dac00ca0c Windows: fixed always updating internal buffer for ### window titles even when Ctrl+Tab window is hidden. Instead forcing an update on mismatching when appearing.
3997e8b555 was already doing that. (Relates to 8e67fe1: code assume pointer used to be nulled when ctrl+tab window is disabled. not the case).
2025-12-11 23:24:43 +01:00
omar
fc89c61089 Hashing: handling of "###" operator to reset to seed within a string identifier doesn't include the "###" characters in the output hash anymore.
This has various simplifying properties.
Need a test engine update too.
+ Demo: removed misleading/unnecessary usage of ###.
2025-12-11 23:02:20 +01:00
ocornut
9971251574 Fonts: amend/comment on FontDataOwnedByAtlas=false fix being a breaking change. (#9086, #8465) 2025-12-10 21:42:07 +01:00
ocornut
7f78f52243 Demo: removed some hardcoded widths. 2025-12-05 18:46:13 +01:00
ocornut
60f8b0733c Rework color marker internals to facilitate arbitrary override using SetNextItemColorMarker().
Amend fa4b47c
2025-12-05 18:28:55 +01:00
ocornut
fa4b47c5e2 Added RGBA color markers to ColorEdit3/ColorEdit4 + opt-in ImGuiSliderFlags_ColorMarkers for Drags/Sliders.
+ Added ImGuiColorEditFlags_NoColorMarkers
+ Added style.ColorMarkerSize.
2025-12-05 16:32:48 +01:00
ocornut
ded52c71d9 Debug Log: can output to debugger. Added ImGuiDebugLogFlags_OutputToDebugger. 2025-12-05 15:07:44 +01:00
ocornut
9d4fafa671 Nav: removed an unnecessary FindWindowByName() call.
Amend c7016c25e8. It's not clear to me why it was committed like that, maybe a leftover of wip code which used the pointer before Begin().
2025-12-05 14:16:14 +01:00
ocornut
bfe137893a Debug Log: fixed incorrectly printing characters in IO log when submitting non-ASCII values to io.AddInputCharacter(). (#9099) 2025-12-01 17:03:04 +01:00
ocornut
1a62292ac0 Tables: fixed an issue where a very thin scrolling table would advance parent layout slightly differently depending on its visibility. 2025-11-27 22:37:00 +01:00
ocornut
ae873b1e0d Misc: rename extraneous parenthesizes from return statements. 2025-11-27 15:01:24 +01:00
ocornut
c36162fc6c Internals: add SetContextName() helper. (#9097)
Amend 37c243b.
2025-11-26 17:29:37 +01:00
ocornut
285e3042ba Docs: tweaks. Add reference to imgui-module from main README. (#9092, #8868) 2025-11-26 14:49:11 +01:00
ocornut
d981b33dd0 Textures: amend to please static analyzer. 2025-11-26 14:24:55 +01:00
ocornut
e768f91dc2 Textures: fixed displaying texture # in metrics/debugger. 2025-11-26 14:21:48 +01:00
ocornut
3fef0d553d Textures: fixed a building issue when ImTextureID is defined as a struct.
+ Added CI for this case.
2025-11-26 14:21:48 +01:00
ocornut
5f82275ba1 Docs: updated 1.91.5 logs for missing info that GetKeyIndex() was removed at this date.
Amend 6f287dd16
2025-11-24 14:49:16 +01:00
ocornut
324cea1f41 Version 1.92.6 WIP 2025-11-24 13:35:41 +01:00
ocornut
6d910d5487 Version 1.92.5 2025-11-20 17:49:52 +01:00
ocornut
4ab86e1d61 Nav: fixed scoring when using PageUp/PageDown from a focused item which is outside of visible boundaries. (#9079)
We only use ImGuiNavMoveFlags_AlsoScoreVisibleSet when starting point is visible.
2025-11-19 19:01:22 +01:00
ocornut
0faa0dba15 Drag and Drop: rework cancel drag and drop logic to be overridable. (#9071) 2025-11-19 18:26:44 +01:00
ocornut
db6b8e0fb3 Drag and Drop: handling of Escape after UpdateKeyboardInputs(). (#9071) 2025-11-19 18:26:43 +01:00
ocornut
23bd697f05 Drag and Drop: Pressing Escape while carrying a payload automatically cancel the active drag and drop. (#9071) 2025-11-18 19:18:10 +01:00
ocornut
37f9153105 Nav: improved/clarified behavior when requesting PageUp/PageDown from a focused item which is outside of visible boundaries. (#9079) 2025-11-18 18:59:06 +01:00
ocornut
81e01ddebe Nav: reworked PageUp/PageDown to pick same-page top/bottom page based on inner rectangle rather than clipping rectangle. 2025-11-18 18:57:32 +01:00
ocornut
405c802607 Nav: shallow tweaks. 2025-11-18 18:22:36 +01:00
ocornut
91b5256c57 Clipper: fixed an issue when using up/down from an item outside of visible bound and using the clipper. (#9079) 2025-11-18 17:00:01 +01:00
ocornut
f145b0cffd Debug Tools: ID Stack Tool: refactor, extract data/code into ImGuiDebugItemPathQuery for reuse. 2025-11-13 18:32:43 +01:00
ocornut
c254db7637 Debug Tools: ID Stack Tool: store ResultsComplete and don't display incomplete paths. 2025-11-13 16:19:27 +01:00
ocornut
5a0c67c4b8 Debug Tools: ID Stack Tool: extracted code into a StackToolGetResultAsPath() function. 2025-11-13 16:15:00 +01:00
ocornut
e60e5bff63 Misc: standardized casing of keyboard mods in comments and demo ("CTRL" -> "Ctrl"). 2025-11-13 15:24:03 +01:00
ocornut
873fe34b31 Debug Tools: ID Stack Tool: preserve first data type, so user of PushOverrideID() e.g. TreeNode() elements don't get demoted from _String to _ID. 2025-11-13 15:05:16 +01:00
ocornut
68a44776bd Misc: tweak conflicting id error tooltip to use a link.
Now that nested tooltips are not hiding each others.
2025-11-13 13:47:45 +01:00
ocornut
613cfaf0b4 Tooltips: made BeginTooltipEx() not hide nested tooltips.
It's not typically possible to nest tooltips since BeginTooltipEx() imply ImGuiWindowFlags_NoInputs + following mouse pos + most tooltips would be triggered on hover. But BeginErrorTooltip() bypass that.
2025-11-13 13:47:45 +01:00
ocornut
de917ebb95 Windows: move auto-fit block into braces for clarify. (no-op) 2025-11-11 21:48:17 +01:00
ocornut
501e0adcdb Windows: CalcWindowAutoFitSize() remove child-specific hack added by 29439bdd27 and made obsolete by 7537ba2b4. (#9060, #1710) 2025-11-11 21:47:15 +01:00
ocornut
a2544f9496 Windows: programmatic auto-sizing on a single axis also apply proper logic. (#9060) 2025-11-11 21:37:21 +01:00
ocornut
b51f6e073c Windows: reorganize auto-fitting code blocks in Begin(), step 2.
Toward #9060
2025-11-11 21:15:43 +01:00
ocornut
52e9d94f93 Windows: reorganize auto-fitting code blocks in Begin(), aimed to have no side-effect, but..
..outer ImGuiWindowFlags_AlwaysAutoResize previously took priority for both axis. New logic per-axis.
Toward #9060
2025-11-11 20:03:31 +01:00
ocornut
fc262355ca Windows: Fixed an issue where repeated calls to SetNextWindowSize() using 0.0f to auto-size would keep marking ini settings as dirty.
+ marking dirty on old io.FontAllowUserScaling Ctrl+Wheel
2025-11-11 19:47:48 +01:00
ocornut
7537ba2b44 Windows: fixed single-axis auto-sizing (via double-clicking a border) to take account of remaining scrollbar on the other axis. (#9060)
Potentially now should apply same logic to the other resizing path also described in #9060
2025-11-10 19:36:16 +01:00
ocornut
b0d3c3a674 Drag and Drop: prev/curr storage for DragDropAcceptFlags. ImGuiDragDropFlags_AcceptNoPreviewTooltip test uses DragDropAcceptFlagsPrev for consistency. (#143)
I don't think this would have materialized as a visible bug.
2025-11-06 17:59:01 +01:00
ocornut
8e2e87d638 (Breaking) Commented out legacy SetItemAllowOverlap() obsoleted in 1.89.7: this never worked right. Use SetNextItemAllowOverlap() _before_ item instead. 2025-11-06 16:29:19 +01:00