ocornut
6feff6ff05
MultiSelect: (Breaking) io contains a ImVector<ImGuiSelectionRequest> list.
2024-07-18 18:19:16 +02:00
ocornut
a6adfb2b49
MultiSelect: added missing call on Shutdown(). Better reuse selection buffer.
2024-07-18 18:19:16 +02:00
ocornut
88df590145
Demo: Assets Browser: store items, sorting, type overlay.
2024-07-18 18:19:16 +02:00
ocornut
d18e57e673
Demo: Assets Browser: Added assets browser demo.
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
dce02f5c4b
Demo: Dual List Box: Added a dual list box (6648)
2024-07-18 18:19:16 +02:00
ocornut
ba698df7bb
MultiSelect: Demo: Deletion: Various renames to clarify. Use adapter and item list in both ApplyDeletion functions.
...
This also minify the patch for an alternative/wip attmept at redesgining pre/post deletion logic. But turns out current attempt may be easier to grasp.
2024-07-18 18:19:16 +02:00
ocornut
e1d2109208
MultiSelect: Demo: Deletion: Rework ApplyDeletionPreLoop to use adapter + fix PostLoop not using right value of RequestFocusItem.
...
Recovery made it transparent visually but user side selection would be empty for a frame before recovery.
2024-07-18 18:19:16 +02:00
ocornut
fa516c3d76
MultiSelect: Demo: Make ExampleSelection use ImGuiID. More self-explanatory.
2024-07-18 18:19:15 +02:00
ocornut
530155d85a
MultiSelect: Demo: Remove UserDataToIndex from ExampleSelectionAdapter.
...
Seems to make a better demo this way.
2024-07-18 18:19:15 +02:00
ocornut
8c1f659b3d
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.
2024-07-18 18:19:15 +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
6ddc5f38af
MultiSelect: Demo: added simpler demo using Clipper. Clarify RangeSrcPassedBy doc.
2024-07-18 18:19:15 +02:00
ocornut
c3753809b1
MultiSelect: Demo: rework ExampleSelection names to map better to typical user code + variety of Comments tweaks.
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
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
e3616e151f
MultiSelect: Demo: Delete items from menu.
2024-07-18 18:19:14 +02:00
ocornut
c0035705ca
MultiSelect: Further simplication of user code to support Deletion.
...
Provide standard RequestFocusItem storage.
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
564dde0ee3
MultiSelect: Demo: first-draft of user-side deletion idioms.
...
(will need support from lib)
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
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
c61ada200f
MultiSelect: Demo tweak. Removed multi-scope from Advanced (too messy), made it a seperate mini-demo.
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
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
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
35bbadcf0c
MultiSelect: Added ImGuiMultiSelectFlags_ClearOnClickWindowVoid. + Demo: showcase multiple selection scopes in same window.
2024-07-18 18:19:13 +02:00
ocornut
b91ae122e1
MultiSelect: Demo: Added pointer indirection and indent level.
...
This is to reduce noise for upcoming commits, ahead of adding a loop here.
2024-07-18 18:19:12 +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
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
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
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
74a1854db9
Nav, Demo: comments.
2024-07-17 17:03:22 +02:00
ocornut
67e9aa4d3d
Demo: Property Editor: add basic filter.
2024-07-17 14:01:02 +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
0e4dcfa552
Obsoleted PushTabStop()/PopTabStop() in favor of using new PushItemFlag()/PopItemFlag() with ImGuiItemFlags_NoTabStop.
2024-07-15 18:57:46 +02:00
ocornut
b4ca869c40
(Breaking) Obsoleted PushButtonRepeat()/PopButtonRepeat() in favor of using new PushItemFlag()/PopItemFlag() with ImGuiItemFlags_ButtonRepeat.
2024-07-15 18:38:18 +02:00
ocornut
7e0800e718
Added PushItemFlag(), PopItemFlag(), ImGuiItemFlags.
2024-07-15 18:38:18 +02:00
ocornut
46691d172e
Demo: Reworked "Property Editor" demo in a manner that more ressemble the tree data and struct description data that a real application would want to use.
2024-07-15 17:14:01 +02:00
Hugues Evrard
6b6026b133
DemosFix typo in help text in demo Tables/Borders ( #7780 )
...
The help text for flags had a "V" flag duplicated, this change corrects it to the missing "H" flag.
2024-07-08 11:43:09 +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
0a73c6ec3f
Misc tweaks, comments.
2024-07-03 18:02:59 +02:00
ocornut
5496050f5f
Added TextLink(), TextLinkOpenURL() hyperlink widgets. ( #7660 )
2024-07-02 17:21:44 +02:00
ocornut
0250dc903e
Demo: changed style editor inline block to its own window.
2024-07-02 14:38:44 +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
dd5c30d2d7
Disabled: Reworked 1.90.8 behavior of Begin() not inheriting current BeginDisabled() state. Only tooltip are clearing that state. ( #211 , #7640 )
2024-07-01 14:32:11 +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
aab27130a6
Demo: Style Editor: clarify how _CalcCircleAutoSegmentCount() doesn't always get exact final segment count. ( #7731 )
2024-06-24 12:58:11 -07:00
cfillion
755bf2b8c2
(Breaking) Move ImGuiWindowFlags_NavFlattened to ImGuiChildFlags_NavFlattened. ( #7687 )
2024-06-21 16:00:57 -07:00
ocornut
e3971079cf
IO: added ImGuiConfigFlags_NoKeyboard for consistency and convenience. ( #4921 )
...
# Conflicts:
# imgui.h
# imgui_demo.cpp
2024-06-21 10:17:44 -07:00
ocornut
21bda2ed99
TabBar, Style: added ImGuiTabBarFlags_DrawSelectedOverline and ImGuiCol_TabSelectedOverline, ImGuiCol_TabDimmedSelectedOverline.
2024-06-18 17:41:43 -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
47db0698d2
InputScalar, InputInt, InputFloat: added ImGuiInputTextFlags_ParseEmptyRefVal, ImGuiInputTextFlags_DisplayEmptyRefVal. ( #7305 )
2024-06-06 16:51:15 +02:00
ocornut
0561d708ba
Modals, Popups: fixed an issue preventing to close a popup opened over a modal by clicking over void. ( #7654 )
2024-06-05 15:55:01 +02:00
Rodrigo Rivas Costa
e47015aef4
Demo: remove incompatible ImGuiInputFlags for Shortcut(). ( #7637 )
2024-05-31 16:30:11 +02:00
ocornut
51823d117d
Misc: made ImGuiDir, ImGuiSortDirection, ImGuiMouseCursor stronger-typed enums + cater for possible warning in backends's switch()
...
Not making ImGuiMouseCursor one because of warnings for non-explicitly handled value (case default: is not enough).
2024-05-28 18:09:41 +02:00
ocornut
479c5f62fc
Style: make DisplayWindowPadding visible in style editor.
2024-05-28 15:47:19 +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
ce4e210dcb
Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. ( #456 )
2024-05-24 16:07:58 +02:00
ocornut
5ce3d29955
Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. ( #456 )
2024-05-24 15:44:59 +02:00
ocornut
650cb51bf1
Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. ( #456 , #7618 )
...
Amend ef9d525
2024-05-24 15:27:48 +02:00
ocornut
ef9d525f02
Shortcuts: added ImGuiInputFlags_RouteActiveItem. ( #456 , #7618 ) + rearrange Changelog
2024-05-24 15:07:43 +02:00
ocornut
374b9a7fb4
Demo: Documents: refactor + add Renaming option. ( #7233 )
2024-05-23 21:35:07 +02:00
ocornut
1002cfa6d2
Demo, Shortcut(): amend Shortcuts demo. ( #456 )
2024-05-23 18:12:42 +02:00
ocornut
c06e6340cd
Shortcuts: added ImGuiInputFlags_Tooltip. ( #456 )
2024-05-23 16:58:14 +02:00
ocornut
197f8904fe
Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. ( #456 )
...
Unsure why filter in ItemHandleShortcut(), will probably find out soon enough.
2024-05-23 16:57:19 +02:00
ocornut
dc5caa483c
Demo: added "Shortcuts" section. ( #456 , #2637 )
2024-05-23 16:57:19 +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
ocornut
5e23680454
Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. ( #7568 )
2024-05-13 15:07:13 +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
d4495446d5
Windows, Internal: added experimental SkipRefresh mode. ( #3515 , #4763 , #7556 , #5116 , #4076 , #2749 , #2268 )
...
currently: ImGui::SetNextWindowRefreshPolicy(ImGuiWindowRefreshFlags_TryToAvoidRefresh);
- This is NOT meant to replace frame-wide/app-wide idle mode.
- This is another tool: the idea that a given window could avoid refresh and reuse last frame contents.
- I think it needs to be backed by a careful and smart design overall (refresh policy, load balancing, making it easy and obvious to user).
- It's not there yet, this is currently a toy for experimenting.
My other issues with this:
- It appears to be very simple, but skipping most of Begin() logic will inevitably lead to tricky/confusing bugs. Let's see how it goes.
- I don't like very much that this opens a door to varying inconsistencies
- I don't like very much that it can lead us to situation where the lazy refresh gets disabled in bulk due to some reason (e.g. resizing a dock space) and we get sucked in the temptation to update for idle rather than update for dynamism.
2024-05-07 11:44:43 +02:00
thedmd
fc4d818e17
Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. ( #6917 )
2024-05-03 12:54:59 +02:00
ocornut
913151caa8
Demo: move progress bars to their own section.
2024-04-24 19:40:26 +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
baaaaea9e9
Demo: tweak TreeNode demo.
2024-04-24 18:20:09 +02:00