ocornut
e2889925ef
ImStrv: allow constructing from two null pointers.
2026-05-11 14:45:28 +02:00
ocornut
a6ec1a8480
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-05-11 14:45:28 +02:00
ocornut
b237dfd2b1
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-05-11 14:45:28 +02:00
ocornut
99654fdfd9
ImStrv: add needed disambiguishing functions for const char* now being ambiguous. (5079)
...
amended for gcc/clang warnings
amended to facilitate merge with docking
2026-05-11 14:45:28 +02:00
ocornut
7578f41518
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-05-11 14:45:27 +02:00
璀境石
3b4a8f5235
ImStrv: enhanced VS debugger .natvis support. build fixes. (5333, 5906)
2026-05-11 14:45:27 +02:00
ocornut
b7d525d67c
ImStrv: standardized code doing format copy, optimized ImStrStr
2026-05-11 14:45:27 +02:00
ocornut
f24be8ea2b
ImStrv: moved double char* function signatures under #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS blocks + fixed various compiles errors/warnings.
2026-05-11 14:45:27 +02:00
ocornut
0d18d92a4f
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-05-11 14:45:27 +02:00
ocornut
4aab9e320a
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-05-11 14:45:27 +02:00
Rokas Kupstys
ed2b2702d7
ImStrv: Step 1 - change string type to ImStrv in API. (REBASED)
...
(last rebase amend 2024/12/11)
2026-05-11 14:45:27 +02:00
ocornut
eb453f2be6
Checkbox, Style: added ImGuiCol_CheckboxSelectedBg. ( #9392 )
2026-05-11 14:30:34 +02:00
ocornut
56b37bf93c
Inputs: SetItemKeyOwner(): does not set ownership is key is already taken.
...
(#456 , #2637 , #2620 , #2891 , #3370 , #3724 , #4828 , #5108 , #5242 , #5641 )
2026-05-07 21:22:33 +02:00
ocornut
0eae77f783
Inputs: SetItemKeyOwner(): return true if ownership has been requested, which can to be checked to accurately gate further input test.
...
(#456 , #2637 , #2620 , #2891 , #3370 , #3724 , #4828 , #5108 , #5242 , #5641 )
2026-05-07 21:15:27 +02:00
ocornut
02ccd9f348
Scrolling, Inputs: using mouse wheel to scroll takes and keeps ownership of the corresponding keys while a wheeling window is locked.
...
Ref 4448d975d . (#2604 , #3795 )
2026-05-07 20:51:57 +02:00
ocornut
163b8670c8
Demo: added image viewer with magnifier and grid.
2026-05-07 20:20:05 +02:00
ocornut
a70b97ee48
Warning fixes.
2026-05-07 16:51:34 +02:00
ocornut
6df50a0667
(Breaking) DrawList: swapped the last two arguments of AddRect(), AddPolyline(), PathStroke(). thickness<>flags.
...
Added inline redirection functions when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is off.
Marked the old functions are =delete when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is on, to allow for better type-checking.
The aim is to be able to use/add flags to more ImDrawList functions, and making existing functions consistents was deemed very desirable.
2026-05-07 16:37:57 +02:00
ocornut
976c5c0f3a
Textures: extract ImTextureDataQueueUpload() out of ImFontAtlasTextureBlockQueueUpload() ( #8465 )
...
Not atlas specific, in support of texture system.
2026-05-06 16:19:39 +02:00
Mikko Mononen
691b89baae
ImDrawList: added AddLineH(), AddLineV() helpers. ( #9360 )
...
This commit is aimed to be a lossless transform. Further layout fixes in subsequent commits.
2026-04-28 17:04:54 +02:00
ocornut
c0b693b1d4
MultiSelect: Box-Select + Tables: fixed when using SpanAllColumns paths. ( #9383 , #7994 )
...
Amend d1a8995 which didn't fix the thing it claimed to fix, as my naive last minute refactor broke it.
2026-04-28 15:58:21 +02:00
Alexander "FireFox" Ong
865a6dfa59
InputScalar: fixed not parsing user input when the display format is configured not to show the scalar value. ( #9385 )
...
Useful e.g. for displaying "mixed" inputs, where a single field might represent multiple different values.
2026-04-28 15:25:12 +02:00
Vlad
dee9b15bbe
Backends: Metal: add sampler states and DrawCallback_SetSamplerLinear / DrawCallback_SetSamplerNearest callbacks. ( #9381 , #9371 , #9378 )
2026-04-28 15:09:23 +02:00
ocornut
d1a8995634
MultiSelect: Box-Select + Tables: fixed when using SpanAllColumns paths. ( #9383 , #7994 )
...
Amend ac88294 + d7b40ab
2026-04-28 14:58:47 +02:00
ocornut
ab36fbaf48
Drag and Drop, Style: added ImGuiStyleVar_DragDropTargetRounding. ( #9056 )
...
+ readded rounding arg to RenderDragDropTargetRectEx().
2026-04-27 18:23:56 +02:00
ocornut
e3033c3975
Examples: moving example_win32_directx11 on top of the .sln makes it the default selected project.
2026-04-24 17:38:51 +02:00
ocornut
10c378cdfc
InputInt, InputFloat, InputScalar: reinstated and fixed ImGuiInputTextFlags_EnterReturnsTrue. ( #8665 , #9299 , #8065 , #3946 , #6284 , #9117 )
2026-04-24 15:15:19 +02:00
ocornut
db23a78c60
Internals: store ImGuiItemStatusFlags_EditedInternal bypassing ImGuiItemFlags_NoMarkEdited.
...
Convenient if the same signal is not passed via e.g. return value. (#8665 , #9299 , #8065 , #3946 , #6284 , #9117 )
2026-04-24 15:15:16 +02:00
ocornut
bda49826cf
Backends: OpenGL3: build fix for WebGL/ES2/Emscripten. ( #9378 )
...
Amend 6b05f71 which was incorrectly labelled.
2026-04-24 12:26:21 +02:00
ocornut
6b05f711fd
Backends: WebGPU: build fix for WebGL/ES2.
2026-04-23 22:06:42 +02:00
ocornut
86ebb3bc11
Backends: removed samplers from ImGui_ImplDX10_RenderState, ImGui_ImplDX11_RenderState + fixed all Changelogs. ( #9378 )
2026-04-23 22:03:11 +02:00
ocornut
7e7f3adb80
Removed DrawCallback_SetSamplerCustom feature for now. Too unreliable to get working everywhere. ( #9378 )
2026-04-23 21:50:52 +02:00
ocornut
dfe6f9ebca
Backends: WebGPU: added SetSamplerLinear/Nearest draw callbacks. ( #9378 )
2026-04-23 21:50:50 +02:00
ocornut
37952fb3b8
Backends: Vulkan, SDLGPU3: remove samplers from RenderState. ( #9378 )
...
Revert part of ac261203a5 , 9ee3d731b5 (#8866 , #8163 , #7998 , #7988 ) since we have a better solution.
2026-04-23 21:50:47 +02:00
omar
0a811e8ea1
Backends: DX9, DX10, DX11, DX12, Allegro5, OpenGL2, OpenGL3, SDLRenderer2, SDLRenderer3, SDLGPU3, Vulkan: added standard draw callbacks when possible. ( #9378 )
2026-04-23 21:50:45 +02:00
ocornut
82f46a73f8
(Breaking) Moved ImDrawCallback_ResetRenderState -> ImGui::GetPlatformIO().DrawCallback_ResetRenderState + added room in ImGuiPlatformIO for more standard backend-agnostic draw callbacks. ( #9378 )
2026-04-23 21:50:41 +02:00
ocornut
a6a16cf8a2
Backends: WebGPU: protect better against zero tex id.
2026-04-23 20:50:34 +02:00
ocornut
e887098740
Backends: WebGPU: always use SPIR-V shader on WGVK, as it cannot be detected at runtime. ( #9316 , #9246 , #9257 )
2026-04-23 19:42:29 +02:00
ocornut
f934719fbf
TabBar: comments about ImGuiTabBarFlags_FittingPolicyMixed and TabMinWidthShrink. ( #9376 , #3421 , #8800 )
2026-04-23 18:31:53 +02:00
ocornut
ce3fe4078a
Backends: WGPU: fixed build.
...
Incorrect line from a WIP branch slipped in ac06ad7
2026-04-23 17:31:14 +02:00
ocornut
f2f843c113
Fixed some extremely zealous warnings (GCC -Wconversion, -Wdouble-promotion)
...
(amend a1e0552 )
2026-04-23 17:23:43 +02:00
ocornut
adc0027912
Backends: Vulkan: remove unused artefacts (mistakenly commited in 0453ae9).
2026-04-23 16:08:11 +02:00
ocornut
ac06ad7b48
ImDrawList: made AddCallback() user data default to NULL + minor amends/comments.
2026-04-23 15:58:44 +02:00
ocornut
4739af2d51
Update VS toolset in all .vcxproj from VS2015 (v140) to VS2017 (v141).
...
It supports vcpkg.
2026-04-23 15:58:04 +02:00
ocornut
b065713cec
Backends: OpenGL2/3, SDLRenderer2/3, DirectX9, Metal: moved Init/Shutdown code lower in the file.
...
Allows to point to local functions without forward declaring them.
2026-04-23 15:53:28 +02:00
ocornut
fb308c14ce
Remove noise from 0453ae9 + amend comments. ( #914 )
2026-04-22 14:50:15 +02:00
ocornut
ac261203a5
(Breaking) Backends: Vulkan: redesigned to use separate ImageView + Sampler instead of Combined Image Sampler. (fixes, amends) ( #914 )
2026-04-22 14:43:44 +02:00
yaz0r
0453ae96e8
(Breaking) Backends: Vulkan: redesigned to use separate ImageView + Sampler instead of Combined Image Sampler. (WIP) ( #914 )
2026-04-22 14:43:44 +02:00
ocornut
a5fd597be3
Backends: Vulkan: minor changes.
2026-04-22 14:23:42 +02:00
ocornut
382b99c334
PlotHistogram: add comments. ( #9372 )
2026-04-21 22:32:01 +02:00