ocornut
cf1c4a0cb1
BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false.
2023-09-05 16:47:00 +02:00
ocornut
fb9b006865
Version 1.90 WIP
2023-09-05 16:46:52 +02:00
ocornut
f24387fa2b
Version 1.89.9 (fixed changelog header)
2023-09-05 16:44:05 +02:00
ocornut
c6e0284ac5
Fixed minor warning.
2023-09-04 15:16:55 +02:00
ocornut
fef3389157
Version 1.89.9
2023-09-04 14:30:32 +02:00
ocornut
7b5fb33296
Tables: Internals: renamed CellPaddingY to RowCellPaddingY.
2023-09-04 12:14:41 +02:00
ocornut
bdc4dfebf5
Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73.
2023-09-04 12:10:31 +02:00
ocornut
9a93fb5716
Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73.
2023-09-04 11:55:32 +02:00
ocornut
e8a5c9e1b8
Tables: Made it possible to change style.CellPadding.y between rows. Added demo.
2023-09-04 11:23:54 +02:00
ocornut
3816d478df
ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization.
...
# Conflicts:
# imgui_widgets.cpp
2023-09-01 15:25:47 +02:00
ocornut
8c497793f9
Demo: Tweak table sorting demo code.
2023-09-01 14:54:42 +02:00
ocornut
303dc091b4
Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. ( #5923 , #456 )"
...
This reverts commit b8f93a8fe0 . Too breaking for user.
2023-09-01 12:24:15 +02:00
ocornut
b8f93a8fe0
IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. ( #5923 , #456 )
2023-09-01 12:15:08 +02:00
ocornut
a066074054
Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. ( #3841 )
2023-08-31 21:39:27 +02:00
ocornut
bdd9b96fa3
Demo: Reorganized "Examples" menu. Tweak Property Editor.
2023-08-31 20:04:43 +02:00
ocornut
08b3a1a34a
ImDrawList: Automatically calling ChannelsMerge() if not done after a split.
...
Ties fixing f422e78 in docking: iterating root windows was incorrect. Will be faster to lazily merge in RenderDimmedBackground() rather than iterate all.
2023-08-30 15:22:36 +02:00
ocornut
f93d0befaf
Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. ( #6758 )
...
Amend fdc526e8f
2023-08-29 12:19:15 +02:00
ocornut
82d177ccbd
Using range-based for where it makes sense. ( #4537 )
2023-08-28 12:21:44 +02:00
ocornut
33ea1e8b78
ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. ( #6722 )
2023-08-28 10:38:13 +02:00
ocornut
f617fe7890
Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). ( #6424 , #3841 )
...
Single item version added in prevous commit (2000537 ) renamed to IncludeItemByIndex() too.
2023-08-25 18:22:54 +02:00
ocornut
200053771a
Clipper: Added IncludeIndex() helper to include a single item. ( #6424 , #3841 )
2023-08-25 18:01:40 +02:00
ocornut
4a81424492
CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. ( #6749 )
2023-08-25 14:14:34 +02:00
ocornut
b41811a68c
CollapseButton: handle clipping better + align circle like in docking branch.
...
Amend 6c3697f6
2023-08-25 14:11:33 +02:00
ocornut
162f8e01aa
Backends: SDL3: fixed typo in 1e17d59 ( #6735 )
2023-08-21 13:12:50 +02:00
ocornut
ba1fa904a9
IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). ( #6719 , #2278 )
...
Amend 13f718337
2023-08-17 13:12:21 +02:00
ocornut
a1a7a1bc03
InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. ( #6719 , #2278 )
2023-08-17 13:02:56 +02:00
ocornut
c06c796242
TreeNode: added note about ImGuiTreeNodeFlags_Bullet.
2023-08-15 16:28:10 +02:00
ocornut
1e17d59965
Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther().
...
e.g. WebGPU users use a similarly named functions from GLFW backend.
2023-08-15 12:48:46 +02:00
ocornut
983b95bc87
Demo: tweak explanation about static keyword. ( #6718 )
2023-08-14 16:55:03 +02:00
ocornut
d2c7cbcbf9
Misc: Made multiple calls to Render() during the same frame early out faster.
2023-08-14 16:23:04 +02:00
ocornut
ac64b65634
Render: draw dimmed background earlier to match docking code. ( #6716 )
...
Amend f422e78
2023-08-14 16:21:12 +02:00
ocornut
8f5ce73140
Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell.
2023-08-14 13:09:39 +02:00
ocornut
1362fc0c56
Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers.
2023-08-09 11:14:44 +02:00
ocornut
bc3c0ce772
Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. ( #1079 , #1131 )
...
Added a stack for this purpose which other features might build on (e.g. #2920 ). However this is currently gated by many tests and not a performance concern, but making stack happen all the time may be undesirable.
2023-08-08 14:07:00 +02:00
ocornut
edebb90a9a
Demo: amend/fix for MinGW
...
Amend 4d6fbaf .
2023-08-07 18:27:28 +02:00
ocornut
4d6fbaff11
Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64.
2023-08-07 15:24:31 +02:00
ocornut
226923fa7e
Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca).
...
(#6597 , #6475 , #6167 , #5776 , #5109 , #4763 , #3515 , #1860 )
2023-08-06 20:30:07 +02:00
ocornut
2b1fc6f765
Demo: Demonstrate out-of-order rendering using ImDrawListSplitter.
2023-08-06 20:13:05 +02:00
ocornut
cf3726bcbc
Internals: rename bg/fg drawlist holders in structs to reduce confusion.
2023-08-06 19:46:27 +02:00
ocornut
d6d94d90bf
Version 1.89.9 WIP
...
+ Minor typo fixes
2023-08-03 19:19:21 +02:00
ocornut
f7eea63872
Version v1.89.8
2023-08-01 12:53:57 +02:00
ocornut
ab490dc7b8
Fonts: Amends for support for OpenType SVG fonts using lunasvg ( #6591 , #6607 )
2023-08-01 10:18:30 +02:00
ocornut
19ae142bdd
Mark alternative ImColor constructors as constexpr, second attempt ( #6656 )
...
Earlier 7c5b0e8 broke with VS2015 and some other MingGW/GCC setups.
2023-07-29 17:48:19 +02:00
ocornut
dc2b0a2823
Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird).
2023-07-29 17:37:32 +02:00
ocornut
88a330ebef
Revert "Mark alternative ImColor constructors as constexpr ( #6656 )"
...
This reverts commit 7c5b0e8292 .
2023-07-29 17:24:34 +02:00
ocornut
eefc9035f0
Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3.
2023-07-29 16:22:30 +02:00
ocornut
c87b9fdb15
Docs update. Improved Fonts troubleshooting section.
2023-07-29 16:05:16 +02:00
ocornut
79d6f4e211
Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. ( #6653 , #4791 )
2023-07-27 19:45:28 +02:00
ocornut
1109de3827
Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. ( #6622 , #1485 )
2023-07-20 22:59:15 +02:00
ocornut
db66e33e9e
Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. ( #6619 )
...
Made GetContentRegionMax() fully defer to WorkRect when inside a table container.
2023-07-20 13:26:58 +02:00
ocornut
2bc5d17ac3
Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. ( #5920 , #6619 )
...
Avoid width variation when resizing down a table hosting a child window.
+ shallow tweak to GetContentRegionMax().
2023-07-20 12:01:29 +02:00
ocornut
d342ec10cc
Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. ( #6610 )
2023-07-18 11:18:58 +02:00
ocornut
52125a54a5
Tables: added TableGetHoveredRow() in imgui_internal.h. ( #6250 , #6347 , #6588 , #3740 )
...
Works with one-frame delay inconsistent with other functions, may be too bug-prone.
2023-07-13 19:23:48 +02:00
ocornut
77eba4d0d1
CI: resume using latest Emscripten
...
Change for #6602 broke, supposedly because using old version of emsdk.
Initial reason for locking 3.1.37 was 3.1.38 had a bug, now fixed https://github.com/emscripten-core/emscripten/issues/19363
2023-07-13 12:46:40 +02:00
ocornut
0e8eb8c48e
Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier.
...
Our codebase requires VS2012+ since a while.
2023-07-13 12:38:16 +02:00
ocornut
863ac31f01
Doc: various tweaks + tweak imconfig comments.
2023-07-13 12:38:16 +02:00
ocornut
33e13c85e1
Backends: Made all backends sources files support global IMGUI_DISABLE. ( #6601 )
2023-07-13 11:27:52 +02:00
ocornut
6888e6cdff
ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). ( #6406 , #4879 , #1878 )
...
Amend/fix dbeeeae for docking.
+ Build fix when using IMGUI_DISABLE_DEBUG_TOOLS
2023-07-12 18:39:48 +02:00
ocornut
dbeeeae593
ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). ( #6406 , #4879 , #1878 )
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2023-07-12 18:11:42 +02:00
ocornut
1a9ddd2396
ImDrawData: added AddDrawList() helper function. ( #6406 , #4879 , #1878 )
2023-07-12 18:11:42 +02:00
ocornut
c649aca20a
ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array ( #6406 , #4879 , #1878 ) + deep swap. ( #6597 , #6475 , #6167 , #5776 , #5109 , #4763 , #3515 , #1860 )
...
+ Metrics: avoid misleadingly iterating all layers of DrawDataBuilder as everything is flattened into Layers[0] at this point.
# Conflicts:
# imgui.cpp
# imgui_internal.h
2023-07-12 18:11:42 +02:00
ocornut
cc4c37dbac
Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection).
...
This is mostly expected for range-select.
+ Rename ImGuiNavMoveFlags_Tabbing -> ImGuiNavMoveFlags_IsTabbing
2023-07-11 16:49:26 +02:00
ocornut
b7cdb5a31e
Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. ( #2522 )
...
Rework/revert intent of c1a61d25a .
2023-07-11 15:01:25 +02:00
ocornut
5ce636b0ba
Tweak to accomodate for build* directories anywhere.
2023-07-10 18:12:22 +02:00
ocornut
140726d23f
Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. ( #4857 , #5937 )
2023-07-10 15:10:42 +02:00
ocornut
b32ef809c3
InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false.
2023-07-06 19:32:28 +02:00
ocornut
3349296370
InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. ( #5688 , #2620 )
...
This makes is more obvious that value_change==true when apply_new_text != NULL.
2023-07-06 19:32:01 +02:00
ocornut
6aa408c6af
IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). ( #4921 )
...
cc #2425 #1153 #1600
2023-07-06 15:55:17 +02:00
ocornut
9a15730c2a
Demo: better showcase use of SetNextItemAllowOverlap(). ( #6574 , #6512 , #3909 , #517 )
...
+ Merge some shallow changes from range-select branch.
2023-07-05 14:19:04 +02:00
ocornut
3fe4319314
Version 1.89.8 WIP
2023-07-05 14:17:46 +02:00
ocornut
d4ddc46e77
InputText: Fixed a crash on deactivating a ReadOnly buffer. ( #6570 , #6292 , #4714 )
...
This will be part of 1.89.7 Tagged relase.
2023-07-04 16:20:51 +02:00
ocornut
40aac5875a
Changelog amends
2023-07-04 15:48:42 +02:00
ocornut
cb9015e254
Version 1.89.7
2023-07-04 14:56:09 +02:00
ocornut
121072cfe6
Backends: Vulkan: Amend for support for dynamic_rendering ( #5446 , #5037 )
...
Simplified for master branch.
# Conflicts:
# backends/imgui_impl_vulkan.cpp
2023-07-04 14:16:28 +02:00
ocornut
1029f57b8a
Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. ( #1485 )
2023-07-03 12:17:46 +02:00
ocornut
64172685d6
InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. ( #6565 , #6566 , #3615 )
2023-07-03 11:58:17 +02:00
ocornut
655aae5911
Comments + docs: tidying up todo list + demo tweak for tooltips.
2023-06-30 14:58:49 +02:00
ocornut
a02315e1c4
Combo: Made simple/legacy Combo() function not returns true when picking already selected item. ( #1182 )
2023-06-28 15:47:10 +02:00
ocornut
6137443d24
Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. ( #6512 , #3909 , #517 )
...
This allows DragXXX, SliderXXX, PlotXXX etc to honor SetNextItemAllowOverlap().
2023-06-28 14:42:14 +02:00
ocornut
4dee919bc0
(Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd().
...
This also allow moving AllowOverlap logic from ButtonBehavior() to ItemHoverable(), allowing other widgets to honor it. (#6512 , #3909 , #517 )
2023-06-28 14:42:14 +02:00
ocornut
10c7709f30
Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., ( #6512 , #3909 , #517 )
2023-06-28 14:40:47 +02:00
ocornut
8439a73645
Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. ( #6512 , #3909 , #517 )
...
# Conflicts:
# imgui.cpp
# imgui_widgets.cpp
2023-06-28 14:40:47 +02:00
ocornut
a9a5cbf431
Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). ( #6512 , #3909 )
2023-06-28 14:40:47 +02:00
ocornut
07e24b4058
ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic.
2023-06-28 14:40:47 +02:00
ocornut
51f564eea6
(Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). ( #6512 , #3909 , #517 )
...
+ Internals: Renamed 'ImGuiButtonFlags_AllowItemOverlap' to 'ImGuiButtonFlags_AllowOverlap' without redirection.
2023-06-28 14:37:05 +02:00
ocornut
06f5b46133
Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. ( #6512 , #3909 , #517 )
2023-06-27 15:46:35 +02:00
ocornut
b03a4993b3
Internals: reorder tests in ItemHoverable() so most likely early out are taken first.
2023-06-27 15:44:35 +02:00
ocornut
836aff3467
Drag and Drop: Amend ItemHoverable() logic for item with no identifier.
...
Amend d5d4d70
2023-06-27 15:23:19 +02:00
ocornut
d5d4d709c7
Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable().
...
Ensure DragXXX, SliderXXXX, InputText, PlotXXX follow same logic. Amend 251f178a6 , a33f0d1f7
2023-06-27 14:44:39 +02:00
ocornut
a2f6581171
Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c)
2023-06-27 10:57:08 +02:00
ocornut
3ec128c5fd
Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. ( #6512 , #3909 )
...
Essentially we are going to remove calls to SetItemAllowOverlap() and standardize the fact that only 'HoveredId == id' test from it is performed.
# Conflicts:
# imgui_widgets.cpp
2023-06-26 19:08:10 +02:00
ocornut
cada78917c
Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). ( #6512 , #3909 )
...
This was copied from SplitterBehavior(). The only hypothetical value in SplitterBehavior() would be ability to manually call SetItemAllowOverlap() after the call.
Btw generally AllowOverlap is undesirable for columns as e.g. a spanning selectable would cover entire width and prevent columns from being used.
# Conflicts:
# imgui_tables.cpp
2023-06-26 19:05:47 +02:00
ocornut
0a53b45858
CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. ( #6549 )
2023-06-26 11:15:55 +02:00
ocornut
6b2e03c5b1
GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set.
2023-06-22 22:03:02 +02:00
ocornut
94c46d7486
InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. ( #5688 , #2620 )
2023-06-21 14:20:13 +02:00
ocornut
cb5542bce5
Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. ( #6539 , #6333 )
2023-06-20 15:30:52 +02:00
ocornut
e0583975cd
Demo: Fix typo (amusingly had no side effect).
2023-06-20 15:18:37 +02:00
ocornut
9214c28aad
IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags.
2023-06-20 15:04:15 +02:00
ocornut
e7a4327eb8
IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary.
2023-06-20 15:04:14 +02:00
ocornut
b60acfa87d
Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section.
2023-06-20 15:04:14 +02:00