ocornut
beabc5db24
ImStrv: marked with IM_NODEBUGSTEP.
...
Reduce cognitive/debug-stepping load.
2026-09-09 21:26:07 +02:00
ocornut
9f115f3324
ImStrv: detect and fixed misuses of CalcTextSize() old signature. (9321)
2026-09-09 21:26:07 +02:00
ocornut
e95890cfd0
ImStrv: made length() returns an int as it simplify the most common case (of passing %.*s to printf)
2026-09-09 21:26:06 +02:00
ocornut
a9d4d45431
ImStrv: allow constructing from two null pointers.
2026-09-09 21:26:06 +02:00
ocornut
36d4913c85
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-09-09 21:26:06 +02:00
ocornut
56eb4c9357
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-09-09 21:26:06 +02:00
ocornut
2ef1ba81ac
ImStrv: add needed disambiguishing functions for const char* now being ambiguous. (5079)
...
amended for gcc/clang warnings
amended to facilitate merge with docking
2026-09-09 21:26:05 +02:00
ocornut
ed2fae996f
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-09-09 21:26:05 +02:00
ocornut
84ccc62ad8
ImStrv: moved double char* function signatures under #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS blocks + fixed various compiles errors/warnings.
2026-09-09 21:26:05 +02:00
ocornut
675348f183
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-09-09 21:26:04 +02:00
ocornut
46efe961e8
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-09-09 21:26:04 +02:00
Rokas Kupstys
758c14efd5
ImStrv: Step 1 - change string type to ImStrv in API. (REBASED)
...
(last rebase amend 2024/12/11)
2026-09-09 21:26:03 +02:00
ocornut
367b2c24f3
Merge branch 'master' into docking
2026-09-09 21:25:09 +02:00
ocornut
e8602501bb
Mixed Value: various fixes. ( #5518 , #5677 , #6865 )
...
- With MixedValue+LiveEdit: a single edit that ends up with same output reports as edited.
- Standardize path sin TempInputscalar(), InputScalar(), InputTextEx().
- Refer to changes in imgui_test_suite, in particular "widgets_datatype_1", "widgets_status_liveedit_off",
2026-09-09 20:44:34 +02:00
ocornut
a2b7d6e792
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_dx10.cpp
# backends/imgui_impl_dx12.cpp
# backends/imgui_impl_metal.mm
# backends/imgui_impl_metal4.mm
# backends/imgui_impl_opengl2.cpp
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_sdlgpu3.cpp
# backends/imgui_impl_vulkan.cpp
# imgui.cpp
2026-09-07 19:52:24 +02:00
ocornut
04b37d6d23
Added ImGuiItemFlags_MixedValue support for Drags, Sliders, InputScalar, InputText, RadioButton, Combo. ( #5518 , #5677 , #6865 )
2026-09-07 18:56:32 +02:00
ocornut
9090ba71e5
Fixed Tesselation -> Tessellation in comments.
2026-09-07 16:38:38 +02:00
ocornut
7e1b65d26d
Merge branch 'master' into docking
...
# Conflicts:
# imgui_internal.h
2026-09-02 17:27:51 +02:00
ocornut
e2e9533991
Added IM_NODEBUGSTEP helper. Tagged ImVec2, ImVec4, ImRect and various operators.
...
cc #3038 . Amend 1bc6f82091 , 301c956039
2026-09-02 17:13:47 +02:00
ocornut
fd13a1e892
Merge branch 'master' into docking
...
# Conflicts:
# examples/example_apple_opengl2/main.mm
2026-08-19 13:39:46 +02:00
ocornut
551a0a6bc0
TextAligned, TextAlignedV: rework to always use provided width. ( #7024 , #9455 , #1980 )
2026-08-07 17:48:50 +02:00
ocornut
5de45fb1d9
Trim trailing white spaces. Changes some NULL to nullptr.
2026-08-07 16:00:53 +02:00
ocornut
e236e74206
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_dx12.cpp
# backends/imgui_impl_sdl2.cpp
# examples/example_sdl2_metal/main.mm
# imgui_internal.h
2026-08-06 21:32:43 +02:00
ocornut
6a6d7bc3ca
Internals: added SetNextWindowFlags(), SetNextWindowChildFlags() helpers + made BeginChildEx() itself read from them. ( #9503 , #8280 , #9412 , #9499 , #9393 , #8488 )
...
As a result BeginTable() doesn't need to read itself and pass that to BeginChildEx().
2026-08-05 21:16:35 +02:00
ocornut
11bd4e7731
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2026-08-04 14:34:04 +02:00
ocornut
5108603789
DrawList: apply current pixel density to DrawList's fringe scale. Added ImDrawList::_SetPixelDensity(). Reword FontRasterizerDensity as CurrentPixelDensity.
...
Amend 94a4322 .
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_draw.cpp
# imgui_internal.h
2026-08-04 13:15:05 +02:00
ocornut
fdc1152281
(Breaking) Style: obsoleted style.CurveTessellationTol in favor of style.CurveTesselationMaxError.
...
cc #3127 , #3664 , #3665
2026-08-03 17:05:44 +02:00
ocornut
ebd752a0ec
Version 1.93.0 WIP
2026-08-03 14:42:56 +02:00
ocornut
b48d1afbe8
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2026-07-31 16:25:00 +02:00
ocornut
f1cc2ae15e
Version 1.92.9b
2026-07-31 16:14:42 +02:00
ocornut
950d27137e
Tweaks.
2026-07-29 15:51:15 +02:00
ocornut
9b4eb24cee
Merge branch 'master' into docking
2026-07-25 13:45:27 +02:00
ocornut
01380c5797
Version 1.92.9
2026-07-25 13:28:06 +02:00
ocornut
f31f98f4cd
ImDrawData: fixed late initialized field. (Amend 6f41d13)
...
Would effectively be initialized on use but best to clear on constructor.
2026-07-23 17:56:02 +02:00
ocornut
f594633b54
Popups: added bool return value to OpenPopup(), OpenPopupOnItemClick() functions. ( #9429 )
...
Following on 795cf6fcb5 .
2026-07-23 17:49:39 +02:00
ocornut
ca49eff398
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2026-07-22 15:46:24 +02:00
ocornut
b335bf4328
Added ImTextureData::QueueUserData for staged-rendering texture queues e.g. imgui_threaded_rendering.h. ( #8597 , #9136 )
2026-07-22 15:14:45 +02:00
ocornut
6f41d13c7a
DrawData: added FrameCount field to facilitate debugging multi-threading issues. ( #8597 , #9136 )
2026-07-20 17:00:32 +02:00
ocornut
548389359c
(Breaking) ImDrawData: marked draw_data->CmdListsCount as obsolete. Use draw_data->CmdLists.Size.
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
2026-07-20 16:58:45 +02:00
ocornut
e4f7c5c722
Disabling ImGuiItemFlags_LiveEditOnInputScalar by default! ( #9476 , #701 )
2026-07-20 14:26:57 +02:00
ocornut
93bd4f0adb
Merge branch 'master' into docking
...
# Conflicts:
# .github/workflows/build.yml
# backends/imgui_impl_opengl2.cpp
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_sdl2.cpp
# examples/example_apple_metal4/main.mm
# imgui.cpp
2026-07-16 15:56:36 +02:00
ocornut
26b8292635
Split ImGuiItemFlags_LiveEdit into ImGuiItemFlags_LiveEditText, ImGuiItemFlags_LiveEditScalar. Added Demo contents. ( #9476 , #701 )
...
cc #3936 , #3946 , #5904 , #6284 , #8149 , #8065 , #8665 , #9117 , #9299 , #700 , #1351 , #1875 , #2060 , #2215 , #2380 , #2550 , #3083 , #3338 , #3556 , #4373 , #4714 , #4885 , #5184,#5777, #6707 , #6766 , #8004 , #8303 , #8915 , #9308
2026-07-16 15:46:47 +02:00
ocornut
18d63b12be
Added ImGuiItemFlags_LiveEdit flag, and much-awaited support for disabling it. ( #9476 , #701 )
...
cc #3936 , #3946 , #5904 , #6284 , #8149 , #8065 , #8665 , #9117 , #9299 , #700 , #1351 , #1875 , #2060 , #2215 , #2380 , #2550 , #3083 , #3338 , #3556 , #4373 , #4714 , #4885 , #5184,#5777, #6707 , #6766 , #8004 , #8303 , #8915 , #9308
2026-07-16 15:39:53 +02:00
ocornut
b62bfd6b06
InputText: reworked io.ConfigInputTextEnterKeepActive mode so that pressing Ctrl+Enter or Shift+Enter still allows to deactivate.
...
cc #9239
2026-07-10 21:36:43 +02:00
ocornut
da137cbbb0
(Breaking) Drag and Drop: commented out legacy name ImGuiDragDropFlags_SourceAutoExpirePayload. Use ImGuiDragDropFlags_PayloadAutoExpire.
2026-07-08 18:40:29 +02:00
ocornut
a23e9fb1b5
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
2026-07-08 15:10:22 +02:00
ocornut
f626c1c793
ColorPicker: added option to fix Saturation/Value triangle in wheel picker. Amends. ( #9337 )
...
ConfigColorPickerRotateTriangle -> !ImGuiColorEditFlags_PickerNoRotate
2026-07-07 16:18:34 +02:00
ocornut
5d56c09432
ColorPicker: added option to fix Saturation/Value triangle in wheel picker. Amends. ( #9337 )
2026-07-07 16:14:13 +02:00
SeanTheBuilder1
0785cdb2bb
ColorPicker: added option to fix Saturation/Value triangle in wheel picker. ( #9337 )
2026-07-07 16:14:11 +02:00
ocornut
aca69173df
(Breaking) ColorEdit: obsoleted SetColorEditOptions() function in favor of poking to io.ConfigColorEditFlags. (Amend 0e479b9, 9f7d808)
...
Apologies, 9f7d808 was extremely flaky.
2026-07-07 16:10:35 +02:00