ocornut
0af6fbb51d
MultiSelect: added support for nested/stacked BeginMultiSelect().
...
Mimicking table logic, reusing amortized buffers.
2024-07-18 18:19:17 +02:00
ocornut
aa4d64be92
MultiSelect: Box-Select: added scroll support.
2024-07-18 18:19:17 +02:00
ocornut
f904a6646c
MultiSelect: Box-Select: added support for ImGuiMultiSelectFlags_BoxSelect.
...
(v11)
FIXME: broken on clipping demo.
2024-07-18 18:19:17 +02:00
ocornut
90305c57e4
MultiSelect: (breaking) renamed ImGuiMultiSelectFlags_ClearOnClickWindowVoid -> ImGuiMultiSelectFlags_ClearOnClickVoid. Added ImGuiMultiSelectFlags_ScopeWindow, ImGuiMultiSelectFlags_ScopeRect.
2024-07-18 18:19:17 +02:00
ocornut
3d41994a63
MultiSelect: simplify clearing ImGuiMultiSelectTempData.
2024-07-18 18:19:17 +02:00
ocornut
33fc61a091
MultiSelect: use a single ImGuiMultiSelectIO buffer.
...
+ using local storage var in EndMultiSelect(), should be no-op.
2024-07-18 18:19:17 +02:00
ocornut
c527cba470
MultiSelect: we don't need to ever write to EndIO.RangeSrcItem as this is not meant to be used.
2024-07-18 18:19:16 +02:00
ocornut
6feff6ff05
MultiSelect: (Breaking) io contains a ImVector<ImGuiSelectionRequest> list.
2024-07-18 18:19:16 +02:00
ocornut
c3998b70cc
MultiSelect: clarified purpose and use of IsItemToggledSelection(). Added assert. Moved to multi-selection section of imgui.h.
2024-07-18 18:19:16 +02:00
ocornut
2765fdb43e
MultiSelect: removed seemingly unnecessary block in BeginMultiSelect().
...
- EndIO.RangeSelected always set along with EndIO.RequestSetRange
- Trying to assert for the assignment making a difference when EndIO.RequestSetRange is already set couldn't find a case (tests passing).
2024-07-18 18:19:16 +02:00
ocornut
82de6c470b
MultiSelect: Added ImGuiMultiSelectFlags_SelectOnClickRelease to allow dragging an unselected item without altering selection + update drag and drop demo.
2024-07-18 18:19:16 +02:00
ocornut
5628dda5a5
MultiSelect: move shared logic to MultiSelectItemHeader().
...
No logic change AFAIK but added an indent level in MultiSelectItemHeader(). Logic changes will come in next commit.
2024-07-18 18:19:16 +02:00
ocornut
9da4efed2a
MultiSelect: moved RequestClear output so it'll match request list version better. Use Storage->RangeSrcItem in EndMultiSelect().
2024-07-18 18:19:16 +02:00
ocornut
8fe6b31952
MultiSelect: (Breaking) Removed RangeSrcPassedBy in favor of favoring user to call IncludeByIndex(RangeSrcItem) which is easier/simpler to honor.
...
Especially as recent changes made it required to also update RangeSrcPassedBy after last clipper Step.
Should now be simpler.
2024-07-18 18:19:15 +02:00
ocornut
ff95fdb668
MultiSelect: (Breaking) RequestSetRange's parameter are RangeFirstItem...RangeLastItem (which was always ordered unlike RangeSrcItem...RangeDstItme). Removed RangeDstItem. Removed RangeDirection.
2024-07-18 18:19:15 +02:00
ocornut
af83a3eea4
MultiSelect: clear selection when leaving a scope with a nav directional request.
...
May need to clarify how to depends on actions being performed (e.g. click doesn't).
May become optional?
2024-07-18 18:19:15 +02:00
ocornut
6821401a3f
MultiSelect: Tweak debug log to print decimal+hex values for item data.
...
Struggled to get standard PRIX64 to work on CI.
2024-07-18 18:19:15 +02:00
ocornut
c9eb3714e8
MultiSelect: move HasSelectionData to ImGuiItemFlags to facilitate copying around in standardized fieds.
...
Required/motivated to simplify support for ImGuiTreeNodeFlags_NavLeftJumpsBackHere (bc3c0ce
) in this branch.
2024-07-18 18:19:15 +02:00
ocornut
e82b49d2d4
MultiSelect: (Breaking) Use ImGuiSelectionUserData (= ImS64) instead of void* for selection user data.
...
Less confusing for most users, less casting.
2024-07-18 18:19:15 +02:00
ocornut
140a2f0565
MultiSelect: Comments, tweaks.
...
+ Alignment to reduce noise on next commit.
2024-07-18 18:19:15 +02:00
ocornut
847b1dde8c
MultiSelect: (Breaking) Fix + Rename ImGuiMultiSelectFlags_NoMultiSelect to ImGuiMultiSelectFlags_SingleSelect as it seems easier to grasp.
...
Feature was broken by "Tidying up..." June 30 commit.
2024-07-18 18:19:15 +02:00
ocornut
0cf376348b
MultiSelect: Cleanup unused comments/code.
2024-07-18 18:19:14 +02:00
ocornut
ab9326f4ae
MultiSelect: Fixed right-click handling in MultiSelectItemFooter() when not focused.
2024-07-18 18:19:14 +02:00
ocornut
df1eeb9a20
MultiSelect: Maintain NavIdSelected for user. Simplify deletion demo.
2024-07-18 18:19:14 +02:00
ocornut
9223ffc255
MultiSelect: (Breaking) BeginMultiSelect() doesn't need two last params maintained by users. Moving some storage from user to core. Proper deletion demo.
2024-07-18 18:19:14 +02:00
ocornut
387fc13894
MultiSelect: Clarify and better enforce lifetime of BeginMultiSelect() value.
2024-07-18 18:19:14 +02:00
ocornut
961b81c362
MultiSelect: Tidying up/simpllifying MultiSelectItemFooter().
...
Intended to be entirely a no-op, merely a transform of source code for simplification. But committing separatey from behavior change in previous change.
2024-07-18 18:19:14 +02:00
ocornut
1ea9ca748c
MultiSelect: Remove the need for using IsItemToggledSelection(). Update comments.
...
This is the simple version that past our tests. MultiSelectItemFooter() is in need of a cleanup.
2024-07-18 18:19:14 +02:00
ocornut
6ef70a97fd
MultiSelect: Remove ImGuiMultiSelectFlags_NoUnselect because I currently can't find use for this specific design.
...
And/or it seem partly broken.
2024-07-18 18:19:14 +02:00
ocornut
ccf43d6a96
MultiSelect: (Breaking) Renamed 'RangeValue' -> 'RangeSelected' + amend comments.
2024-07-18 18:19:14 +02:00
ocornut
a83326bc52
MultiSelect: (Breaking) Renamed 'RangeSrc -> 'RangeSrcItem', "RangeDst' -> 'RangeDstItem'
...
This is necessary to have consistent names in upcoming fields (NavIdItem etc.)
2024-07-18 18:19:13 +02:00
ocornut
a39f9e7661
MultiSelect: Internals rename of IO fields to avoid ambiguity with io/rw concepts + memset constructors, tweaks.
...
debug
2024-07-18 18:19:13 +02:00
ocornut
35b5ebc9b5
MultiSelect: (Breaking) Rename ImGuiMultiSelectData to ImGuiMultiSelectIO.
2024-07-18 18:19:13 +02:00
ocornut
11bcae1ebd
MultiSelect: refactor before introducing persistant state pool and to facilitate adding recursion + debug log calls.
...
This is mostly the noisy/shallow stuff committed here, to get this out of the way.
2024-07-18 18:19:13 +02:00
ocornut
5d71314f71
MultiSelect: removed DragDropActive/preserve_existing_selection logic which seems unused + comments.
...
Can't find trace of early prototype for range-select but I couldn't find way to trigger this anymore. May be wrong. Will find out.
2024-07-18 18:19:13 +02:00
ocornut
85954c845e
MultiSelect: Enter can alter selection if current item is not selected.
2024-07-18 18:19:13 +02:00
ocornut
d2f208a30c
MultiSelect: made SetNextItemSelectionData() optional to allow disjoint selection (e.g. with a CollapsingHeader between items). Amend demo.
2024-07-18 18:19:13 +02:00
ocornut
815c61b82e
MultiSelect: Fixed needing to set RangeSrcPassedBy when not using clipper.
2024-07-18 18:19:13 +02:00
ocornut
78cb1661cb
MultiSelect: Shallow tweaks/refactors.
...
Including moving IsFocused back internally for now.
2024-07-18 18:19:13 +02:00
ocornut
a05700e327
MultiSelect: Enter doesn't alter selection (unlike Space).
...
Fix for changes done in 5606.
2024-07-18 18:19:13 +02:00
ocornut
35bbadcf0c
MultiSelect: Added ImGuiMultiSelectFlags_ClearOnClickWindowVoid. + Demo: showcase multiple selection scopes in same window.
2024-07-18 18:19:13 +02:00
ocornut
19086c1c48
MultiSelect: Added ImGuiMultiSelectFlags_ClearOnEscape (unsure of best design), expose IsFocused for custom shortcuts.
2024-07-18 18:19:12 +02:00
ocornut
919cac1482
MultiSelect: Demo: Add a simpler version.
2024-07-18 18:19:12 +02:00
ocornut
ad5d3c9bff
MultiSelect: Fixed issue with Ctrl+click on TreeNode + amend demo to test drag and drop.
2024-07-18 18:19:12 +02:00
ocornut
b9721c1ed7
MultiSelect: Temporary fix/work-around for child/popup to not inherit MultiSelectEnabled flag, until we make mulit-select data stackable.
2024-07-18 18:19:12 +02:00
omar
00c4b8f2a3
MultiSelect: Fix testing key mods from after the nav request (remove need to hold the mod longer)
2024-07-18 18:19:12 +02:00
omar
3ba3f0d905
MultiSelect: Fix Selectable() ambiguous return value, clarify need to use IsItemToggledSelection().
2024-07-18 18:19:12 +02:00
omar
0479b188d0
MultiSelect: Comments. Tweak demo.
2024-07-18 18:19:12 +02:00
omar
9aeebd24f7
MultiSelect: Fixed CTRL+A not testing focus scope id. Fixed CTRL+A not testing active id. Added demo code.
...
Comments.
2024-07-18 18:19:12 +02:00
ocornut
7abda179af
MultiSelect: Fix for TreeNode following merge of 011d4755
. Demo: basic test for tree nodes.
2024-07-18 18:19:12 +02:00
omar
9c7183dd04
MultiSelect: Transition to use FocusScope bits merged in master.
...
Preserve ability to shift+arrow into an item that is part of FocusScope but doesn't carry a selection without breaking selection.
2024-07-18 18:19:12 +02:00
omar
4afbfd5e71
MultiSelect: Renamed SetNextItemMultiSelectData() to SetNextItemSelectionUserData()
2024-07-18 18:19:12 +02:00
omar
17c4c2154a
MultiSelect: Demo sharing selection helper code. Fixed static analyzer warnings.
2024-07-18 18:19:12 +02:00
omar
57da88093f
MultiSelect: Added IMGUI_HAS_MULTI_SELECT define. Fixed right-click toggling selection without clearing active id, could lead to MarkItemEdited() asserting. Fixed demo.
2024-07-18 18:19:11 +02:00
ocornut
8947c35fa1
MultiSelect: Removed SelectableSpacing as I'm not sure it is of use for now (history insert)
2024-07-18 18:19:11 +02:00
omar
554db6bc0f
MultiSelect: WIP range-select ( #1861 ) (rebased six millions times)
2024-07-18 18:19:11 +02:00
ocornut
070c046cd1
Internals: rename recently added TreeNodeIsOpen() -> TreeNodeGetOpen(). ( #7553 , #1131 , #2958 , #2079 , #722 )
...
Amend ac7d6fb
2024-07-17 20:01:55 +02:00
ocornut
7c6d4ff28d
TreeNode: Internals: facilitate dissociating item ID from storage ID (useful for 1861)
2024-07-17 19:20:39 +02:00
ocornut
669021be4c
Style: close button and collapse/window-menu button hover highlight made rectangular instead of round.
...
The reason they were round in the first place was to work better with rounded windows/frames.
However since the 4a8142449
rework #6749 we can naturally use a tigher bounding box and it seems to work ok either way.
2024-07-17 15:56:34 +02:00
ocornut
4247f190c2
Demo: Property Editor: rearrange code + replace use of bool to proper ImGuiChildFlags.
...
Amend 46691d1
2024-07-17 13:52:30 +02:00
ocornut
9c1f922b02
Fixed pvs-studio warning.
2024-07-16 17:19:12 +02:00
ocornut
3de75138d1
(Breaking) Renamed ImGuiSelectableFlags_DontClosePopups to ImGuiSelectableFlags_NoAutoClosePopups. ( #1379 , #1468 , #2200 , #4936 , #5216 , #7302 , #7573 )
2024-07-15 18:46:34 +02:00
ocornut
0de88a928d
Added ImGuiItemFlags_AutoClosePopups as a replacement for internal's ImGuiItemFlags_SelectableDontClosePopup. ( #1379 , #1468 , #2200 , #4936 , #5216 , #7302 , #7573 )
2024-07-15 18:46:34 +02:00
ocornut
7e0800e718
Added PushItemFlag(), PopItemFlag(), ImGuiItemFlags.
2024-07-15 18:38:18 +02:00
ocornut
bc9e5b62b6
Added ImGuiDataType_Bool for convenience.
2024-07-15 16:49:35 +02:00
ocornut
ac7d6fb5ca
Internals: Added TreeNodeIsOpen() to facilitate discoverability. ( #7553 , #1131 , #2958 , #2079 , #722 )
2024-07-15 11:31:00 +02:00
ocornut
2d0baaabe6
TreeNode: rename/rework ImGuiNavTreeNodeData system to be usable by more features. ( #2920 , #1131 , #7553 )
...
Reworked to it is easier during TreeNode code to request extra data to be stored.
2024-07-03 18:59:26 +02:00
ocornut
5496050f5f
Added TextLink(), TextLinkOpenURL() hyperlink widgets. ( #7660 )
2024-07-02 17:21:44 +02:00
ocornut
0f63d3e916
Internals: added FontScale storage.
2024-07-02 17:21:10 +02:00
ocornut
84cc72f372
Version 1.91.0 WIP
2024-07-01 19:02:42 +02:00
ocornut
cb16be3a3f
Version 1.90.9
2024-07-01 17:03:21 +02:00
ocornut
c47928ffc0
Checkbox: minor tidying up to simplify work on multi-select branch.
2024-06-28 18:33:57 +02:00
Kevin Coghlan
372eebbeb2
Fix typo, rename ImGuisliderFlags_WrapAround flag to ImGuiSliderFlags_WrapAround. ( #7752 , #7749 )
2024-06-28 18:06:16 +02:00
ocornut
0403096a9d
Drags: added ImGuisliderFlags_WrapAround flag for DragInt(), DragFloat() etc. ( #7749 )
2024-06-28 15:59:36 +02:00
ocornut
21bda2ed99
TabBar, Style: added ImGuiTabBarFlags_DrawSelectedOverline and ImGuiCol_TabSelectedOverline, ImGuiCol_TabDimmedSelectedOverline.
2024-06-18 17:41:43 -07:00
ocornut
1b9593e889
Style: (Breaking) renamed ImGuiCol_TabActive -> ImGuiCol_TabSelected, ImGuiCol_TabUnfocused -> ImGuiCol_TabDimmed, ImGuiCol_TabUnfocusedActive -> ImGuiCol_TabDimmedSelected.
...
Amend #261 , #351
2024-06-18 17:37:29 -07:00
ocornut
7260bb51cf
Version 1.90.9 WIP
2024-06-07 16:57:01 +02:00
ocornut
6f7b5d0ee2
Version 1.90.8
2024-06-06 17:45:40 +02:00
ocornut
67d886fd63
Removed ImGuiButtonFlags_MouseButtonDefault_.
2024-06-06 17:25:16 +02:00
ocornut
f1eaf8d7c0
Internals: added SetNextItemRefVal(). ( #7305 )
2024-06-06 17:01:02 +02:00
ocornut
47db0698d2
InputScalar, InputInt, InputFloat: added ImGuiInputTextFlags_ParseEmptyRefVal, ImGuiInputTextFlags_DisplayEmptyRefVal. ( #7305 )
2024-06-06 16:51:15 +02:00
ocornut
3460014e05
Internals: avoid using bitfields in ImGuiNextItemData as it leads to extraneous packing. rename ImGuiDataTypeTempStorage to ImGuiDataTypeStorage. moved DataType section above Widgets.
2024-06-06 16:50:32 +02:00
ocornut
109a8632d7
Combo: simplified Combo() API uses a list clipper.
...
Wasn't as trivial before supporting IncludeItemByIndex().
2024-05-28 18:24:01 +02:00
ocornut
5cbc34a10c
Scrollbar: clicking above or below the grab scrolls by one page, holding mouse button repeats scrolling. ( #7328 , #150 )
...
Remove absolute seeking entirely. Amend f02108085
.
2024-05-28 16:28:20 +02:00
ocornut
ed9eb880b5
Windows: Fixed altering FramePadding mid-frame not correctly affecting logic responsible for honoring io.ConfigWindowsMoveFromTitleBarOnly. ( #7576 , #899 )
...
Latching TitleBarHeight, MenuBarHeight in window.
2024-05-28 15:35:36 +02:00
ocornut
7f5d5c80b2
Internals, Tabbar: fixed TabBarGetCurrentTab() with tab_idx == 0. ( #7629 )
...
Thanks @VerySmallRoach. Amend 3d8885cbb
(#5853 , #5997 )
2024-05-28 10:11:01 +02:00
ocornut
1f9fc382c3
Version 1.90.8 WIP
...
Tidying up todo.txt
2024-05-28 10:09:31 +02:00
ocornut
00ad3c65bc
Version 1.90.7
2024-05-27 15:47:04 +02:00
ocornut
85513de247
Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). ( #456 )
...
For several reasons those changes makes sense. They are being made because making some of those API public.
Only past users of imgui_internal.h with the extra parameters will be affected.
Added asserts for valid flags in various functions to detect _some_ misuses, BUT NOT ALL.
Amend 4448d975
(#456 , #2637 , #2620 , #2891 , #3370 , #4828 , #5108 , #5242 , #5641 )
2024-05-23 16:57:03 +02:00
ocornut
900b29055c
Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). ( #456 )
...
Amend 4448d975
(#456 , #2637 , #2620 , #2891 , #3370 , #4828 , #5108 , #5242 , #5641 )
2024-05-23 16:57:03 +02:00
ocornut
7747106647
Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. ( #2343 , #4084 , #5923 , #456 )
2024-05-16 19:16:55 +02:00
Hubert Maier
07dbcf1f70
Fixed typos. ( #7593 )
2024-05-16 16:13:01 +02:00
ocornut
ac90e1bd5b
Backends: Win32: replace bd != nullptr assert with early out. ( #6275 )
...
+ fixed inconsistent use of break vs return 0 in WndProcHandler (had no tangible effect).
2024-05-14 12:18:10 +02:00
ocornut
d06b8b58d8
Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed.
...
Broken by 8b8a61bd
+ Comments (#7570 )
2024-05-13 19:03:04 +02:00
ocornut
f48aae600a
Version 1.90.7 WIP
2024-05-13 14:47:37 +02:00
ocornut
6ccc561a2a
Version 1.90.6
2024-05-08 15:38:33 +02:00
ocornut
558c57a086
Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice.
2024-04-30 11:00:57 +02:00
gan74
c895e987ad
ProgressBar: added indeterminate mode by passing an animated negative value. ( #5316 , #5370 , #1901 )
2024-04-24 19:40:26 +02:00
diego.mateos
b8a44b198c
TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. ( #6937 )
2024-04-24 19:00:58 +02:00
ocornut
da18fcb7ae
Internals: ensure ButtonBehavior() is called with non 0 id.
2024-04-23 18:39:40 +02:00
ocornut
361432a0bb
TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). ( #7505 , #282 )
...
Also adjust some of the interact_bb padding, arbitrary interact padding not meaningful as empty label is likely to be followed by extra item. User likely to use ImGuiTreeNodeFlags_SpanAvailWidth.
2024-04-18 20:50:00 +02:00
ocornut
3caa79c8a5
Version 1.90.6 WIP
2024-04-15 11:27:07 +02:00
ocornut
f790d51665
Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal!
2024-04-12 16:55:32 +02:00
ocornut
231cbee0fc
Version 1.90.5
2024-04-11 15:54:39 +02:00
GamingMinds-DanielC
4f9ba19e52
Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. ( #7389 , #6719 , #2278 )
...
Amend/fix 4a242644
2024-04-03 11:39:46 +09:00
ocornut
9a2b598ec1
ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox().
...
Visible in demo->basic->listbox
2024-04-03 10:20:18 +09:00
ocornut
25a492f330
ProgressBar: Fixed passing fraction==NaN from leading to a crash. ( #7451 )
2024-03-29 19:09:55 +09:00
ocornut
286cd5bd41
Internals, InputText: removed ImGuiInputSource_Clipboard. ( #4005 )
...
Added by f08566b4d
2024-03-07 15:02:38 +01:00
ocornut
e46d1e69ac
Version 1.90.5 WIP
2024-02-26 13:31:10 +01:00
ocornut
277ae93c41
Version 1.90.4
2024-02-22 19:56:39 +01:00
ocornut
8a14b71f22
Version 1.90.4 WIP
2024-02-15 16:51:57 +01:00
ocornut
5b6f03213d
Version 1.90.3
2024-02-14 13:58:19 +01:00
ocornut
11d73f03ee
Backends: Vulkan: Fix/amend 8901931
2024-02-12 17:18:52 +01:00
ocornut
915c6393ad
Version 1.90.3 WIP
2024-02-12 14:54:48 +01:00
ocornut
536090303a
Version 1.90.2
2024-02-09 16:59:31 +01:00
ocornut
70aa717a8e
Combo: Fixed not reusing windows optimally when used inside a popup stack.
2024-02-09 15:23:43 +01:00
ocornut
7d67623d15
InputText: Internal: ReloadUserBufXXX functions don't override revert value. ( #2890 ) fix accidental comment.
2024-02-08 15:46:17 +01:00
ocornut
a5e0e90c16
Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact.
2024-02-08 15:44:46 +01:00
ocornut
1e8fc01ddd
InputText: Internal: ReloadUserBufXXX functions don't override revert value. ( #2890 ) + rename
2024-02-08 15:25:04 +01:00
ocornut
a06dd7a27b
OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. ( #1497 , #1533 )
...
reopen
2024-02-08 15:02:22 +01:00
ocornut
06ce312745
InputText: Internal: added reload from user-buf feature. ( #2890 )
...
Very highly requested feature (#6962 , #5219 , #3290 , #4627 , #5054 , #3878 , #2881 , #1506 , #1216 , #968 ).
Also useful for interactive completion/selection popups (#2057 , #718 )
Based on @kudaba PR. Design for Inputtext V2 should make this obsolete.
2024-02-07 22:04:18 +01:00
ocornut
a201af7354
Added SetNextItemShortcut() wip function. ( #456 )
...
Mark widget as hovered. Amend d10641b
.
2024-01-22 18:38:54 +01:00
ocornut
4c2c09450a
Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. ( #456 )
...
Amend d10641b
2024-01-22 18:26:45 +01:00
ocornut
7c3fa7d049
Refactor: moved section in imgui_internal.h
2024-01-22 17:42:00 +01:00
ocornut
1844f903d5
Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut
...
InputText: no need to call SetShortcutRouting() directly.
Tangential to experiments for #7237
2024-01-19 16:22:45 +01:00
ocornut
33fabdf392
Scrollbar() doesn't forcefully mark itself as hovered when held.
...
Weirdly as old as when dinosaurs roamed earth, aka first commit (per-1.0).
+ Minor alignment in both sense of the term :) Reduce padding in ImGuiNextItemData.
2024-01-17 15:47:14 +01:00
ocornut
095665977f
Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId.
...
Aimed at allowing activating another item with a shortcut without losing NavId.
Initial logic from c2cb2a69
, with minor amends db5f1b79c
, cea78cc57
.
2024-01-17 14:52:05 +01:00
ocornut
d10641b04a
Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback.
2024-01-17 14:02:07 +01:00
ocornut
29809d7220
Version 1.90.2 WIP
2024-01-11 14:37:13 +01:00
ocornut
d6cb3c923d
Version 1.90.1
2024-01-10 18:00:57 +01:00
ocornut
788bb58b6b
Metrics: Tweak, reorganize tools menu.
2024-01-10 15:12:24 +01:00
ocornut
7f9533b840
ColorPicker: Fixed saturation/value cursor radius not scaling properly.
...
+ Misc docs/comments.
2024-01-08 16:08:12 +01:00
ocornut
7938550d52
Comments and some extra line-wrapping in demo ( #3193 )
2024-01-04 11:50:38 +01:00
ocornut
4a2426449a
Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. ( #6810 , #7096 )
2023-12-22 19:51:49 +01:00
ocornut
036a6c875e
ColorEdit4: Further tweaks for very small sizes. ( #7120 , #7121 )
2023-12-20 11:06:22 +01:00
ocornut
0bd6489721
DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space ( #7120 , #7121 )
...
+ extra tweak color ColorEdit4() label. Amend 86512ea
, 3464662
2023-12-19 20:50:17 +01:00
ocornut
e265610a0c
Fixes for MSVC code analyzer.
2023-12-18 18:36:01 +01:00
ocornut
0d582dabf3
Fixed warning (amend 54c1bde
)
2023-12-14 17:24:23 +01:00
ocornut
6cfe3ddf52
InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. ( #3092 , #5759 , #787 )
2023-12-14 17:15:43 +01:00
ocornut
54c1bdeceb
Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. ( #4449 )
...
Amend 1a7526d
2023-12-14 16:45:40 +01:00
ocornut
4afffa36e9
InputTextMultiline: Fixed Tab character input not repeating
...
(1.89.4 regression)
2023-12-14 16:31:18 +01:00
Nahor
34646627aa
ColorEdit4: improve components width computation to better distribute the error ( #7120 ) ( #7123 )
2023-12-12 11:07:01 +01:00
ocornut
9d8de45313
Image(): comment and minor refactor to resurface the fact that a border size may be added. ( #2118 )
...
Make more similar to ImageButton()
2023-12-07 16:07:50 +01:00
ocornut
c58d2c89c3
Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. ( #7084 )
2023-12-07 14:20:35 +01:00
Johel Ernesto Guerrero Peña
1fd5ff7152
Avoid C++26 removed deprecated arithmetic conversion on enumerations. ( #7088 , #7089 . #2983 , #3040 )
2023-12-05 12:13:08 +01:00
ocornut
5768de79e2
InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. ( #7079 , #211 )
...
Amend fdc526e8f
2023-12-01 13:57:28 +01:00
ocornut
b112d73edb
Menus: amend to clarify/fix static analyzer warning. ( #6671 , #6926 )
2023-11-29 17:08:06 +01:00
ocornut
2ee40d3cf9
Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. ( #6671 , #6926 )
2023-11-29 16:46:21 +01:00
ocornut
bce4db00bc
Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. ( #7049 , #4281 , #3272 )
2023-11-22 19:30:16 +01:00
ocornut
61b8197942
Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds.
...
Bitting the bullet, as we rarely update this (and it is rarely updated) and it we may replace it anyhow.
2023-11-22 14:12:31 +01:00
ocornut
3d083dbe1a
Version 1.90.1 WIP
2023-11-15 23:53:58 +01:00
ocornut
b81bd7ed98
Version 1.90.0
...
w/ Changelog tweaks.
2023-11-15 15:56:05 +01:00
ocornut
5de1312e1c
SplitterBehavior: tweak to not assert due to floating point precision.
...
Not guaranting behavior: clamping makes output lossy, size_1+size_2 in theory may be instable but couldn't repro.
API probably needs rework anyhow (should redistribute from provided available space).
2023-11-14 15:34:30 +01:00
ocornut
44345c2108
Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle.
...
BeginListBox() can't yet expose child flags because coarse clipping require query of stored size (same issue as with adding resize support to Tables).
2023-11-07 20:14:54 +01:00
ocornut
cdbc21a191
BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). ( #1666 , #1496 , #1395 , #1710 , #462 , #503 , #263 )
...
Effectively allows us to avoid extending BeginChildFrame() api to mimic BeginChild() new parameters.
2023-11-07 18:50:32 +01:00
ocornut
7713c29258
BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666 , #1496 , #1395 , #1710 )
2023-11-02 17:26:05 +01:00
ocornut
88fec09715
ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. ( #6957 )
2023-10-26 15:45:45 +02:00
ocornut
feddcf3030
Combo: amends for ImGuiComboFlags_WidthFitPreview. ( #6881 )
...
Amend 112d8fc
2023-10-09 11:34:05 +02:00
mpv-enjoyer
112d8fc41d
Combo: added ImGuiComboFlags_WidthFitPreview. ( #6881 )
2023-10-09 11:26:00 +02:00
ocornut
0312a29e4c
ImageButton(): clarify purpose of size. ( #6901 , #5533 , #4471 , #2464 , #1390 ).
...
Amend 4a2ae06ca
2023-10-05 18:51:45 +02:00
ocornut
2c07d581de
TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. ( #3151 , #3565 , #2451 , #2438 )
2023-10-05 15:05:58 +02:00
ocornut
28b237f94d
Separator(): Altered end-points to use more standard boundaries. ( #205 , #4787 , #1643 , #759 )
2023-10-03 15:26:35 +02:00
ocornut
330d763477
Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. ( #759 )
...
Technically a no-op.
2023-10-03 15:24:42 +02:00
ocornut
456aa3bc0a
Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. ( #6869 )
...
Regression from 0dec430
2023-09-27 16:34:31 +02:00
ocornut
94da5842ef
Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). ( #6861 )
2023-09-26 11:18:29 +02:00
ocornut
e5ca5351d5
TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. ( #6862 )
...
Amend 4a814244
2023-09-25 20:40:01 +02:00
ocornut
ef8ff1b5d8
TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. ( #6820 , #4859 , #5022 , #5239 )
...
Cherry-picked from docking's 64b1e44
2023-09-18 15:29:42 +02:00
ocornut
b101cf46b6
ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis.
2023-09-15 18:43:04 +02:00
ocornut
8a2cd81091
TypingSelect: always enable nav highlight.
...
Otherwise in non multi-select contexts as nav dosn't automatically select result would not always be visible.
2023-09-15 16:58:06 +02:00
ocornut
223b19f116
Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS.
2023-09-14 18:37:30 +02:00
ocornut
779568bb38
TypingSelect: tidy up some more + split ino functions to make reuse simpler.
2023-09-14 18:36:21 +02:00
ocornut
661a70fc79
TypingSelect: fast switch between characters in + debug, internal renames.
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2023-09-14 17:45:54 +02:00
ocornut
c86ce70968
Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience.
2023-09-12 20:29:36 +02:00
ocornut
f336e639e9
TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult().
...
Amend 9714594
2023-09-12 16:36:54 +02:00
ocornut
0e1ce76ea8
InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. ( #6802 , #3092 , #5759 , #787 )
...
+ Added test in ImGuiTestSuite: "widgets_inputtext_multiline_enter"
2023-09-11 11:41:56 +02:00
ocornut
0962c9fb72
TypingSelect: Added first version of GetTypingSelectRequest() API.
...
# Conflicts:
# imgui_internal.h
# imgui_widgets.cpp
2023-09-08 17:20:03 +02:00
ocornut
fa2e5710ac
MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. ( #6789 )
...
In dire need of removing BeginGroup()/EndGroup() from menu-bar code, fo r sanity.
2023-09-06 15:35:03 +02:00
ocornut
d8ef864b02
InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. ( #6783 , #6000 )
...
Amend 57a5b73a4c
2023-09-06 11:28:14 +02:00
ocornut
cf1c4a0cb1
BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false.
2023-09-05 16:47:00 +02:00
ocornut
fef3389157
Version 1.89.9
2023-09-04 14:30:32 +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
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
33ea1e8b78
ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. ( #6722 )
2023-08-28 10:38:13 +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
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
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
Johannes Barthelmes
b7a7d673b9
Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX ( #6675 , #6679 )
2023-08-03 20:13:31 +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
79d6f4e211
Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. ( #6653 , #4791 )
2023-07-27 19:45:28 +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
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
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
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
cb9015e254
Version 1.89.7
2023-07-04 14:56:09 +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