ocornut
f10c152608
ImStrv: detect and fixed misuses of CalcTextSize() old signature. (9321)
...
For IMGUI_DISABLE_OBSOLETE_FUNCTIONS only.
2026-03-25 12:29:00 +01:00
ocornut
23c16d625e
ImStrv: made length() returns an int as it simplify the most common case (of passing %.*s to printf)
2026-03-25 12:29:00 +01:00
ocornut
94d4ce5d9f
ImStrv: allow constructing from two null pointers.
2026-03-25 12:29:00 +01:00
ocornut
fa8ec5c463
ImStrv: Combo(), ListBox(): seems better to not introduce the ImStrv [] versions?
...
As 1) user is unlikely to store that on their end. 2) nowadays with lambdas isn't an easy user-side conversion.
Then we limit explosion of an already messy API.
2026-03-25 12:29:00 +01:00
ocornut
e2f3628cd9
ImStrv: convert Combo()/ListBox() to use ImStrv in their getters.
...
Didn't convert Combo() "const char* items_separated_by_zeros" as this doesn't translate well when used via a ImStrv constructor, may actually aim to obsolete.
Fixed for shadowing local variable warning on 2025/06/25.
2026-03-25 12:28:59 +01:00
ocornut
f56131aa7a
ImStrv: add needed disambiguishing functions for const char* now being ambiguous. (5079)
...
amended for gcc/clang warnings
amended to facilitate merge with docking
2026-03-25 12:28:59 +01:00
ocornut
07a985c9a5
ImStrv: backtracked for now on supporting ImStrv for format strings.
...
It's widely incomplete and slow, requires a printf function taking non-zero-terminated format string to work.
Might do it eventually but it's much less a problem than labels. Format string are more frequently inlined in code and tend to be small, so existing solutions at call site can work better for now.
2026-03-25 12:28:59 +01:00
ocornut
731c8ab11f
ImStrv: moved double char* function signatures under #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS blocks + fixed various compiles errors/warnings.
2026-03-25 12:28:59 +01:00
ocornut
c53d7a62cc
ImStrv: changed ImStrv xxx=NULL args to an explicit xxx=ImStrv()
...
This is mostly for the benefit of cimgui parser, ideally we would do without.
2026-03-25 12:28:59 +01:00
ocornut
7df3385776
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.
2026-03-25 12:28:59 +01:00
Rokas Kupstys
71f5155eea
ImStrv: Step 1 - change string type to ImStrv in API. (REBASED)
...
(last rebase amend 2024/12/11)
2026-03-25 12:28:58 +01:00
ocornut
697b6886e3
Docs: update FAQ about label/ID system. ( #9318 )
2026-03-23 14:13:36 +01:00
ocornut
50b488765f
ButtonBehavior, Selectable: made low-level ImGuiButtonFlags_PressedOnRelease not explicitely avoid taking current active id. ImGuiButtonFlags_NoHoldingActiveId may be used for that.
...
Ditto for ImGuiSelectableFlags_SelectOnRelease, ImGuiSelectableFlags_NoHoldingActiveId. All internals.
Toward #9312
2026-03-20 20:15:17 +01:00
Pascal Thomet
763db046fa
Docs: fixed imgui_manual -> imgui_explorer link. ( #9315 )
2026-03-20 12:40:32 +01:00
ocornut
9700846bb3
MultiSelect: added ImGuiMultiSelectFlags_SelectOnClickAlways mode. Prevents Drag and Drop of multiple items but allows BoxSelect to always reselect even when clicking inside a selecttion. ( #9307 , #1861 )
2026-03-19 16:39:50 +01:00
ocornut
20d8bcb600
(Breaking) MultiSelect: renamed ImGuiMultiSelectFlags_SelectOnClick to ImGuiMultiSelectFlags_SelectOnAuto. ( #1861 , #6518 )
2026-03-19 16:04:04 +01:00
ocornut
4d1ba782ee
Revert changing default value of ImTextureID_Invalid to -1. Back to 0. ( #9295 , #9310 , #9293 , #8745 , #8465 , #7090 )
...
Reverts 0db591935f
2026-03-19 11:54:42 +01:00
ocornut
4252275c64
InputTextMultiline: fixed an issue calculating lines count when inactive, no word-wrap, and ending with a \n.
...
Amend 1e52e7b90c (#3237 , #952 , #1062 , #7363 )
2026-03-18 20:12:14 +01:00
ocornut
16772365e2
Moved ImGuiButtonFlags_AllowOverlap from imgui_internal.h to imgui.h + standardize comments.
2026-03-16 18:42:22 +01:00
ocornut
49ee151ed6
Nav: pressing gamepad north button activates context menus.
...
+ update ShowUserGuide().
2026-03-13 15:07:46 +01:00
ocornut
b76ab6232d
Nav: changed Gamepad mapping for "Activate with Text Input" action from FaceUp press to FaceDown long press. ( #8803 , #787 )
2026-03-13 15:07:46 +01:00
ocornut
0db591935f
Changed default ImTextureID_Invalid value to -1 instead of 0 +added comments. ( #9293 , #8745 , #8465 , #7090 )
2026-03-12 14:44:15 +01:00
ocornut
5aa7d61139
InputText: reworked so that io.ConfigInputTextEnterKeepActive reactivate in order for e.g. IsItemDeactivatedAfterEdit() to work. Amends. ( #9001 , #9115 )
...
Rework. Fixes dangling InputTextReactivateId in case of field being hidden on activation.
2026-03-11 20:33:18 +01:00
Brenton Bostick
6f8bdb7bf7
Docs: fixed misc typos ( #9267 )
2026-03-09 14:51:06 +01:00
ocornut
ef022c5e0a
Separator: added and following style.SeparatorSize. ( #2657 , #9263 )
...
Reapply c5d83d8a from 1.70 which was reverted in 9534ef9b2 .
2026-02-26 17:21:57 +01:00
ocornut
650eca386e
Doc: update link to imgui_manual, add a new one near top of the demo + update binaries.
2026-02-25 20:34:35 +01:00
ocornut
68a91d3060
InputText: Shift+Enter in multi-line editor always adds a new line. ( #9239 )
2026-02-24 17:10:56 +01:00
ocornut
f6e0953b38
TreeNode: moved TreeNodeGetOpen() helper to public API. ( #3823 , #9251 , #7553 , #6754 , #5423 , #2958 , #2079 , #1947 , #1131 , #722 )
...
Amend 0653a0d
2026-02-23 22:36:29 +01:00
ocornut
14b4d8a625
Clipper: added UserIndex helper storage.
2026-02-23 22:36:29 +01:00
ocornut
dbee23e09c
Commented out legacy signatures for Combo()/ListBox() which were obsoleted in 1.90.
...
Amend b101cf4 .
2026-02-23 15:21:20 +01:00
ocornut
221bac8b06
Style: border sizes are now scaled and rounded by ScaleAllSizes(). Lift 1.0f limit in Style Editor.
2026-02-20 16:16:27 +01:00
ocornut
c234426f89
TreeNode: comments on ImGuiTreeNodeFlags_Leaf. ( #4833 )
2026-02-19 16:32:14 +01:00
ocornut
b8a1f74fd9
Version 1.92.7 WIP
...
+ minor demo tweaks.
2026-02-18 16:05:51 +01:00
ocornut
e118ea06e0
Version 1.92.6
2026-02-17 17:45:07 +01:00
Laurenz Altenmüller
fbe973a8d0
Cast this to (void*) in zero-clearing memset calls to fix -Wnontrivial-memcall ( #9247 , #8295 , #8129 , #8135 )
...
Clang 20+ warns on memset(this, ...) for non-trivially copyable types via -Wnontrivial-memcall.
Should separately investigate -Wnonontrivial-memaccess vs -Wnonontrivial-memcall.
2026-02-16 16:29:00 +01:00
ocornut
041cdddf35
Fonts: add new ProggyForever font!
...
Amend f006400
2026-02-12 20:06:33 +01:00
ocornut
a8bf659143
Fonts: AddFontDefaultBitmap() doesn't need to explicitely set OversampleH/OversampleV to 1 as this is automatic.
2026-02-12 19:35:41 +01:00
ocornut
291787bcac
Fonts: comment about swapping EllipsisChar value. ( #9228 )
2026-02-11 19:09:51 +01:00
Ryan Jensen
8ed10d538e
Docs: update comment on ImGuiConfigFlags_NavEnableKeyboard. ( #9218 )
...
Reworked comment of original PR + trim trailing blanks.
2026-02-10 21:12:35 +01:00
tanksdude
5fe48b6a0e
Docs: fixed some typos ( #9217 )
2026-02-10 16:40:52 +01:00
ocornut
d12b1a938e
Demo: improved Selectable() demos. ( #9193 )
2026-01-26 11:45:32 +01:00
ocornut
66bb8add73
Docs: better document Shortcut() related stuff. ( #9188 ) Better document io.ConfigDpiScaleFonts. ( #9179 )
2026-01-22 14:35:16 +01:00
ocornut
cb3b7ff4fb
InputText: added mGuiInputTextCallbackData::EventActive helpers. ( #9174 )
2026-01-21 18:46:38 +01:00
ocornut
d448045669
InputText: Added ImGuiInputTextCallbackData::ID field.
2026-01-21 18:34:28 +01:00
ocornut
f21307e5c9
InputText: ImGuiInputTextCallbackData::SelectAll() sets CursorPos. Added SetSelection() helper.
...
Context was for #9174 but not specific to it.
2026-01-21 18:25:38 +01:00
ocornut
d7598aa84f
Backends: SDL2, SDL3: changed GetClipboardText() handler to return NULL on error aka clipboard contents is not text. ( #9168 )
...
Consistent with other backends.
2026-01-15 16:08:18 +01:00
ocornut
7143d711bf
Images, Style: added style.ImageRounding, ImGuiStyleVar_ImageRounding to configure rounding of Image() widgets. ( #2942 , #845 )
...
Moving border drawing above AddImage() call, should not make a difference for square images.
2026-01-14 15:55:03 +01:00
ocornut
f5384544cb
(Breaking) Commented out legacy names obsoleted in 1.90 (Sept 2023): BeginChildFrame(), EndChildFrame(), ShowStackToolWindow(), IM_OFFSETOF(), IM_FLOOR().
2026-01-08 17:33:09 +01:00
maf
43a90adc61
Docs: Fix spelling errors ( #9158 )
2026-01-08 09:17:44 +01:00
ocornut
7b3ad4a282
(Breaking) Popups: changed 'ImGuiPopupFlags popup_flags = 1' default value to be '= 0' for BeginPopupContextItem(), BeginPopupContextWindow(), BeginPopupContextVoid(), OpenPopupOnItemClick(). ( #9157 , #9146 )
2026-01-07 18:15:15 +01:00