ocornut
dbe36e34a5
ImStrv: made length() returns an int as it simplify the most common case (of passing %.*s to printf)
2025-09-22 12:29:38 +02:00
ocornut
8e81880e44
ImStrv: allow constructing from two null pointers.
2025-09-22 12:29:38 +02:00
ocornut
d3e76a341c
ImStrv: Combo(), ListBox(): maybe seems better to not introducte 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.
2025-09-22 12:29:38 +02:00
ocornut
86af6db63b
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.
2025-09-22 12:29:38 +02:00
ocornut
852c4577c7
ImStrv: add needed disambiguishing functions for const char* now being ambiguous. (5079)
...
amended for gcc/clang warnings
amended to facilitate merge with docking
2025-09-22 12:29:38 +02:00
ocornut
82f08ec727
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.
2025-09-22 12:29:38 +02:00
ocornut
963d39eea7
ImStrv: moved double char* function signatures under #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS blocks.
2025-09-22 12:29:37 +02:00
ocornut
64b15e33d2
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.
2025-09-22 12:29:37 +02:00
ocornut
9a1c0ce98c
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-09-22 12:29:37 +02:00
Rokas Kupstys
327ae2b2e2
ImStrv: Step 1 - change string type to ImStrv in API. (REBASED)
...
(last rebase amend 2024/12/11)
2025-09-22 12:29:37 +02:00
ocornut
d4f722d5b2
IO: added ImGuiPlatformIO::ClearPlatformHandlers(), ClearRendererHandlers(). Backends: call those on Shutdown(). ( #8945 , #2769 )
2025-09-18 16:58:50 +02:00
ocornut
0e7cd694eb
Version 1.92.4 WIP
2025-09-18 15:38:46 +02:00
ocornut
1c544ee941
Version 1.92.3
2025-09-17 18:37:56 +02:00
ocornut
70a43f3088
Fixed build with IMGUI_ENABLE_TEST_ENGINE.
2025-09-17 18:12:32 +02:00
ocornut
36133d8ac4
InputText: Word-Wrap: hide vertical scrollbar but takes its width into account. ( #3237 , #952 , #1062 , #7363 )
...
Also increase IMGUI_VERSION_NUM for good measure, forgot to increase it when moving to public api.
2025-09-12 16:03:18 +02:00
ocornut
78c1d4a92c
InputText: Word-Wrap: moving ImGuiInputTextFlags_WordWrap to public API. Added in demo. ( #3237 , #952 , #1062 , #7363 )
2025-09-12 15:03:33 +02:00
ocornut
55f590c1d1
Selectable: ImGuiSelectableFlags_SelectOnNav doesn't select when holding Ctrl, to be consistent with multi-select.
...
Amend e66afbb
+ remove needless line in CloseCurrentPopup() block
2025-09-10 22:29:42 +02:00
ocornut
1cd08b883c
TabBar: fixed calling TabBarQueueFocus() before submitting tabs. ( #8929 , #6681 )
2025-09-10 18:03:34 +02:00
ocornut
8e4955bb23
Selectable: moved ImGuiSelectableFlags_SelectOnNav to public API.
2025-09-09 17:42:14 +02:00
ocornut
11fff1ccf5
ImFont::RenderText() takes ImDrawTextFlags_CpuFineClip instead of bool cpu_fine_clip + forward ImDrawTextFlags to word-wrap code.
...
(for #3237 , #952 , #1062 , #7363 )
2025-09-08 11:54:33 +02:00
ocornut
8a35ce0e98
CalcWordWrapPosition() breaks on \n instead of relying on caller to do it + expose ImTextCalcWordWrapNextLineStart(). ( #3237 , #952 , #1062 , #7363 )
...
Should be functional no-op, fingers crossed. Breaking on \n allows caller to count lines reliably.
2025-09-08 11:54:32 +02:00
fdsa
09ebcf1779
Docs: fixed mismatched parentheses & other small changes. ( #8922 )
2025-09-08 11:30:14 +02:00
ocornut
605a751571
InputText, InputInt, InputFloat: fixed an issue where using Escape to revert would not write back the reverted value. ( #8915 , #8273 )
...
Revealed by 00f12b9a0
Regression test: "widgets_inputtext_temp_buffer_2"
2025-09-04 13:16:04 +02:00
ocornut
b7cb3d93a4
Comments about using MSVC SAL for printf annotation. ( #8871 )
2025-09-03 19:39:55 +02:00
ocornut
8dc457fda2
Internals: added indent, shallow tweaks + unused context pointer to InputTextCalcTextLenAndLineCount() to reduce noise in wip patch.
...
Visualize this commit with white-space changes disabled.
2025-09-02 15:39:22 +02:00
ocornut
aa2f40c3bb
Clipper, Tables: added ImGuiListClipperFlags, ImGuiListClipperFlags_NoSetTableRowCounters. ( #8886 )
...
a0cdac48e0
revealed the issue but technically the core issue is that clipper assume 1 item = 1 table row.
2025-08-27 18:54:57 +02:00
ocornut
42656b3aa1
Scrollbar, Style: added style.ScrollbarPadding, ImGuiStyleVar_ScrollbarPadding. ( #8895 )
2025-08-20 18:27:35 +02:00
ocornut
0c4f50090a
DrawList: fixed CloneOutput() taking a copy of the ImDrawListSharedData pointer. ( #8894 , #1860 )
...
Amend b82e99c032
2025-08-20 17:49:18 +02:00
ocornut
86ec5c8342
Version 1.92.3 WIP
2025-08-19 15:15:49 +02:00
ocornut
45acd5e0e8
Version 1.92.2b
2025-08-13 17:31:01 +02:00
ocornut
774ddb58bd
Fixed IsItemHovered() failing on disabled items and items that have no identifier. Made holding on disabled items not leak IsItemDisabled() between disabled items when window has _NoMove. ( #8877 , #8883 )
...
See amends to "widgets_status_common", "widgets_disabled_2" tests.
2025-08-13 17:08:04 +02:00
ocornut
af920e1e6f
Version 1.92.3 WIP
2025-08-12 11:30:41 +02:00
ocornut
2b24f5fa71
Version 1.92.2
2025-08-11 16:47:06 +02:00
ocornut
5a6fa33b88
Fixed an inconsistency between IsItemHovered() and internal hovering check, where IsItemHovered() would return true if mouse was first clicked on the background of a non-moveable window. ( #8877 )
2025-08-11 15:41:38 +02:00
Ian
ea075ed973
ImVector: skip memcpy in operator= if Data isn't initialized to play nice with -fsanitize=undefined. ( #8874 )
2025-08-11 09:53:01 +02:00
ocornut
9ee3d731b5
Backends: SDL_GPU3: changed ImTextureID type from SDL_GPUTextureSamplerBinding* to SDL_GPUTexture*. Added ImGui_ImplSDLGPU3_RenderState. ( #8866 , #8163 , #7998 , #7988 )
2025-08-08 15:51:16 +02:00
LEE KYOUNGHEON
e7d0ad092c
Removed static inline usages from free functions. ( #8867 , #8813 )
...
For C++20 module compatibility. See https://github.com/stripe2933/imgui-module/
2025-08-07 17:01:23 +02:00
ocornut
3ef6c8410a
Tabs: added new fitting policy ImGuiTabBarFlags_FittingPolicyMixed, new default. ( #3421 , #8800 )
2025-07-31 23:42:25 +09:00
ocornut
78d11cd781
Tabs: (Breaking) renamed ImGuiTabBarFlags_FittingPolicyResizeDown to ImGuiTabBarFlags_FittingPolicyShrink. ( #261 , #351 )
...
Amend 54a60aaa40
2025-07-31 22:58:01 +09:00
ocornut
7278cda039
Tabs: added TabMinWidthBase, ImGuiStyleVar_TabMinWidthBase.
2025-07-31 22:57:11 +09:00
ocornut
a0cdac48e0
Tables: fixed TableGetHoveredRow() ( #7350 , #6588 , #6250 ) + TableGetRowIndex() which never correctly worked when using a clipper.
...
Amend e09454aec
. Can't understand the comment nor why code was commented. Code looks alright. Compared TableEndRow() between 1.80 and current as well.
2025-07-31 13:21:26 +09:00
ocornut
87d7f7744e
Fonts: (Internal) Added undocumented ImFontBaked::LoadNoRenderOnLayout. ( #8758 , #8465 )
...
Amend fd75bdccb0
.
2025-07-27 20:33:57 +09:00
ocornut
10dc1882c8
Fonts: (Internal) rename ImFontBaked::LockLoadingFallback to ImFontBaked::LoadNoFallback.
2025-07-27 20:31:37 +09:00
ocornut
da6c97203e
Fixed comments for io.KeyCtrl / io.KeySuper to match the one for ImGuiMod_Ctrl, ImGuiMod_Super. ( #8839 )
2025-07-27 19:37:30 +09:00
ocornut
ed5bd1f9ef
Changed ImTextCharToUtf8() to return bytes count rather than original pointer. ( #8820 )
...
Amend c2bf4abfa1
2025-07-22 14:17:11 +09:00
ocornut
336d9212fc
Backends: using range-for to iterate draw_data->CmdLists[].
2025-07-11 17:41:52 +02:00
ocornut
a0d3e405a3
Textures: ImTextureData::Create() sets status. RegisterUserTexture() increases RefCount. Added comments about ImTextureData::GetTexRef(). ( #8789 )
2025-07-11 16:49:28 +02:00
ocornut
0e6e876f23
Docs: update docs/comments about ImTextureRef, ImTextureID. ( #8783 )
2025-07-10 19:07:28 +02:00
ocornut
4d745bc602
Version 1.92.2 WIP
2025-07-10 18:41:05 +02:00
ocornut
5d4126876b
Version 1.92.1
2025-07-09 18:53:58 +02:00