ocornut
c2ac70973e
RangeSelect/MultiSelect: Demo: Make ExampleSelection use ImGuiID. More self-explanatory.
ago%!(EXTRA string=11 months)
ocornut
7c44b46456
RangeSelect/MultiSelect: Demo: Remove UserDataToIndex from ExampleSelectionAdapter.
...
Seems to make a better demo this way.
ago%!(EXTRA string=11 months)
ocornut
1fdb880118
RangeSelect/MultiSelect: Demo: rework ExampleSelection with an ExampleSelectionAdapter layer, allowing to share more code accross examples using different storage systems.
...
Not ideal way to showcase this demo but this is really more flexible.
ago%!(EXTRA string=11 months)
ocornut
157efbb7ad
RangeSelect/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.
ago%!(EXTRA string=11 months)
ocornut
d55eb33491
RangeSelect/MultiSelect: Demo: added simpler demo using Clipper. Clarify RangeSrcPassedBy doc.
ago%!(EXTRA string=11 months)
ocornut
f4644bce0e
RangeSelect/MultiSelect: Demo: rework ExampleSelection names to map better to typical user code + variety of Comments tweaks.
ago%!(EXTRA string=11 months)
ocornut
e26dc83071
RangeSelect/MultiSelect: (Breaking) RequestSetRange's parameter are RangeFirstItem...RangeLastItem (which was always ordered unlike RangeSrcItem...RangeDstItme). Removed RangeDstItem. Removed RangeDirection.
ago%!(EXTRA string=11 months)
ocornut
4db4912d35
RangeSelect/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?
ago%!(EXTRA string=11 months)
ocornut
17b1bf2c5c
RangeSelect/MultiSelect: Tweak debug log to print decimal+hex values for item data.
...
Struggled to get standard PRIX64 to work on CI.
ago%!(EXTRA string=11 months)
ocornut
9b778ae71e
RangeSelect/MultiSelect: move HasSelectionData to ImGuiItemFlags to facilitate copying around in standardized fieds.
...
Required/motivated to simplify support for ImGuiTreeNodeFlags_NavLeftJumpsBackHere (bc3c0ce
) in this branch.
ago%!(EXTRA string=11 months)
ocornut
d0f6c7a9ce
RangeSelect/MultiSelect: (Breaking) Use ImGuiSelectionUserData (= ImS64) instead of void* for selection user data.
...
Less confusing for most users, less casting.
ago%!(EXTRA string=11 months)
ocornut
27300e95e5
RangeSelect/MultiSelect: Comments, tweaks.
...
+ Alignment to reduce noise on next commit.
ago%!(EXTRA string=11 months)
ocornut
ec228c2c71
RangeSelect/MultiSelect: (Breaking) Fix + Rename ImGuiMultiSelectFlags_NoMultiSelect to ImGuiMultiSelectFlags_SingleSelect as it seems easier to grasp.
...
Feature was broken by "Tidying up..." June 30 commit.
ago%!(EXTRA string=11 months)
ocornut
ecba972102
RangeSelect/MultiSelect: Cleanup unused comments/code.
ago%!(EXTRA string=11 months)
ocornut
1c7f3590a2
RangeSelect/MultiSelect: Fixed right-click handling in MultiSelectItemFooter() when not focused.
ago%!(EXTRA string=11 months)
ocornut
4141d6fba6
RangeSelect/MultiSelect: Demo: Delete items from menu.
ago%!(EXTRA string=11 months)
ocornut
3d962dd5a5
RangeSelect/MultiSelect: Further simplication of user code to support Deletion.
...
Provide standard RequestFocusItem storage.
ago%!(EXTRA string=11 months)
ocornut
a1d829eaf7
RangeSelect/MultiSelect: Maintain NavIdSelected for user. Simplify deletion demo.
ago%!(EXTRA string=11 months)
ocornut
1392cd3b9d
RangeSelect/MultiSelect: (Breaking) BeginMultiSelect() doesn't need two last params maintained by users. Moving some storage from user to core. Proper deletion demo.
ago%!(EXTRA string=11 months)
ocornut
2e38a62a63
RangeSelect/MultiSelect: Demo: first-draft of user-side deletion idioms.
...
(will need support from lib)
ago%!(EXTRA string=11 months)
ocornut
4ba6dc2a3f
RangeSelect/MultiSelect: Clarify and better enforce lifetime of BeginMultiSelect() value.
ago%!(EXTRA string=11 months)
ocornut
8a31490921
RangeSelect/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.
ago%!(EXTRA string=11 months)
ocornut
59971d5aed
RangeSelect/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.
ago%!(EXTRA string=11 months)
ocornut
107ea818de
RangeSelect/MultiSelect: Remove ImGuiMultiSelectFlags_NoUnselect because I currently can't find use for this specific design.
...
And/or it seem partly broken.
ago%!(EXTRA string=11 months)
ocornut
11a6d47b38
RangeSelect/MultiSelect: (Breaking) Renamed 'RangeValue' -> 'RangeSelected' + amend comments.
ago%!(EXTRA string=11 months)
ocornut
8790b8136d
RangeSelect/MultiSelect: (Breaking) Renamed 'RangeSrc -> 'RangeSrcItem', "RangeDst' -> 'RangeDstItem'
...
This is necessary to have consistent names in upcoming fields (NavIdItem etc.)
ago%!(EXTRA string=11 months)
ocornut
de974955e6
RangeSelect/MultiSelect: Internals rename of IO fields to avoid ambiguity with io/rw concepts + memset constructors, tweaks.
...
debug
ago%!(EXTRA string=11 months)
ocornut
20e46d4180
RangeSelect/MultiSelect: Demo tweak. Removed multi-scope from Advanced (too messy), made it a seperate mini-demo.
ago%!(EXTRA string=11 months)
ocornut
507790eeaa
RangeSelect/MultiSelect: (Breaking) Rename ImGuiMultiSelectData to ImGuiMultiSelectIO.
ago%!(EXTRA string=11 months)
ocornut
826b23fa5f
RangeSelect/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.
ago%!(EXTRA string=11 months)
ocornut
7c81fc8bab
RangeSelect/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.
ago%!(EXTRA string=11 months)
ocornut
ebbca15bde
RangeSelect/MultiSelect: Enter can alter selection if current item is not selected.
ago%!(EXTRA string=11 months)
ocornut
94adf6b2ba
RangeSelect/MultiSelect: made SetNextItemSelectionData() optional to allow disjoint selection (e.g. with a CollapsingHeader between items). Amend demo.
ago%!(EXTRA string=11 months)
ocornut
85a7202129
RangeSelect/MultiSelect: Fixed needing to set RangeSrcPassedBy when not using clipper.
ago%!(EXTRA string=11 months)
ocornut
aca7304ab5
RangeSelect/MultiSelect: Shallow tweaks/refactors.
...
Including moving IsFocused back internally for now.
ago%!(EXTRA string=11 months)
ocornut
72e5526676
RangeSelect/MultiSelect: Enter doesn't alter selection (unlike Space).
...
Fix for changes done in 5606.
ago%!(EXTRA string=11 months)
ocornut
7762093e40
RangeSelect/MultiSelect: Added ImGuiMultiSelectFlags_ClearOnClickWindowVoid. + Demo: showcase multiple selection scopes in same window.
ago%!(EXTRA string=11 months)
ocornut
e401194989
RangeSelect/MultiSelect: Demo: Added pointer indirection and indent level.
...
This is to reduce noise for upcoming commits, ahead of adding a loop here.
ago%!(EXTRA string=11 months)
ocornut
b08f438669
RangeSelect/MultiSelect: Added ImGuiMultiSelectFlags_ClearOnEscape (unsure of best design), expose IsFocused for custom shortcuts.
ago%!(EXTRA string=11 months)
ocornut
3e91dc82a0
RangeSelect/MultiSelect: Demo: Add a simpler version.
ago%!(EXTRA string=11 months)
ocornut
3953aae1ec
RangeSelect/MultiSelect: Fixed issue with Ctrl+click on TreeNode + amend demo to test drag and drop.
ago%!(EXTRA string=11 months)
ocornut
21b2691e55
RangeSelect/MultiSelect: Temporary fix/work-around for child/popup to not inherit MultiSelectEnabled flag, until we make mulit-select data stackable.
ago%!(EXTRA string=11 months)
omar
25f49eaf42
RangeSelect/MultiSelect: Fix testing key mods from after the nav request (remove need to hold the mod longer)
ago%!(EXTRA string=11 months)
omar
b295efc68f
RangeSelect/MultiSelect: Fix Selectable() ambiguous return value, clarify need to use IsItemToggledSelection().
ago%!(EXTRA string=11 months)
omar
4b78376f45
RangeSelect/MultiSelect: Comments. Tweak demo.
ago%!(EXTRA string=11 months)
omar
09e193bc13
RangeSelect/MultiSelect: Fixed CTRL+A not testing focus scope id. Fixed CTRL+A not testing active id. Added demo code.
...
Comments.
ago%!(EXTRA string=11 months)
ocornut
99b033666e
RangeSelect/MultiSelect: Fix for TreeNode following merge of 011d4755
. Demo: basic test for tree nodes.
ago%!(EXTRA string=11 months)
omar
5528bc2369
RangeSelect/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.
ago%!(EXTRA string=11 months)
omar
ef3c860ae3
RangeSelect/MultiSelect: Renamed SetNextItemMultiSelectData() to SetNextItemSelectionData()
ago%!(EXTRA string=11 months)
omar
ad31d369c3
RangeSelect/MultiSelect: Demo sharing selection helper code. Fixed static analyzer warnings.
ago%!(EXTRA string=11 months)