ocornut
							
						 
						
							 
							
							
							
								
							
								c2a09cb30a 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: Assets Browser: added deletion support. Store ID in selection. Moved QueueDeletion to local var to emphasis that this is a user extension.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								0ce1418295 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: reworked comments in imgui.h now that we have our own section.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								4d4d30510b 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: move demo's ExampleSelection to main api as a convenient ImGuiSelectionBasicStorage for basic users.  
							
							 
							
							... 
							
							
 
							
							FIXME-WIP: Less comments in imgui. 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								b066d839e8 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: remove ImGuiSelectionRequest/ImGuiMultiSelectIO details from public api to reduce confusion + comments.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								4a11a9b0b9 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: support for nested/stacked BeginMultiSelect().  
							
							 
							
							... 
							
							
 
							
							Mimicking table logic, reusing buffers. 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								40c274ee35 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: rework and move selection adapter inside ExampleSelection.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								de8a6d0722 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: added scroll support.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								b642c88a30 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: added support for ImGuiMultiSelectFlags_BoxSelect.  
							
							 
							
							... 
							
							
 
							
							(v11)
FIXME: broken on clipping demo. 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								fd6d5d6703 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: (breaking) renamed ImGuiMultiSelectFlags_ClearOnClickWindowVoid -> ImGuiMultiSelectFlags_ClearOnClickVoid. Added ImGuiMultiSelectFlags_ScopeWindow, ImGuiMultiSelectFlags_ScopeRect.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								3a8a88c8f5 
								
							
								 
							
						 
						
							
							
								
								Demo: Assets Browser: add hit spacing, requierd for box-select patterns.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								f5fac870e1 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: simplify clearing ImGuiMultiSelectTempData.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								84600712d5 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: use a single ImGuiMultiSelectIO buffer.  
							
							 
							
							... 
							
							
 
							
							+ using local storage var in EndMultiSelect(), should be no-op. 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								075e223a1d 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: added support for recovery in ErrorCheckEndWindowRecover().  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								2755c0f819 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: we don't need to ever write to EndIO.RangeSrcItem as this is not meant to be used.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								a882002c0b 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: (Breaking) io contains a ImVector<ImGuiSelectionRequest> list.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								5e2b4f3f43 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: added missing call on Shutdown(). Better reuse selection buffer.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								0416519d80 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: clarified purpose and use of IsItemToggledSelection(). Added assert. Moved to multi-selection section of imgui.h.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								084fdc054f 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/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). 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								7c6b4f5892 
								
							
								 
							
						 
						
							
							
								
								Demo: Assets Browser: store items, sorting, type overlay.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								738af3ea80 
								
							
								 
							
						 
						
							
							
								
								Demo: Assets Browser: Added assets browser demo.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								c9d8068bbe 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Added ImGuiMultiSelectFlags_SelectOnClickRelease to allow dragging an unselected item without altering selection + update drag and drop demo.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								6f9d36c6f2 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: move shared logic to MultiSelectItemHeader().  
							
							 
							
							... 
							
							
 
							
							No logic change AFAIK but added an indent level in MultiSelectItemHeader(). Logic changes will come in next commit. 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								4b15ee88a0 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: moved RequestClear output so it'll match request list version better. Use Storage->RangeSrcItem in EndMultiSelect().  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								79b3439fda 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: ImGuiMultiSelectIO's field are not used during loop anymore, stripping them out of comments.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								ea8d15cfa1 
								
							
								 
							
						 
						
							
							
								
								Demo: Dual List Box: Added a dual list box (6648)  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								7355e7c895 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/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. 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								723973a8b3 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/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. 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								c2ac70973e 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: Make ExampleSelection use ImGuiID. More self-explanatory.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								7c44b46456 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: Remove UserDataToIndex from ExampleSelectionAdapter.  
							
							 
							
							... 
							
							
 
							
							Seems to make a better demo this way. 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								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=1 year)  
						
					 
				
					
						
							
							
								 
								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=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								d55eb33491 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: added simpler demo using Clipper. Clarify RangeSrcPassedBy doc.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								f4644bce0e 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: rework ExampleSelection names to map better to typical user code + variety of Comments tweaks.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								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=1 year)  
						
					 
				
					
						
							
							
								 
								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=1 year)  
						
					 
				
					
						
							
							
								 
								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=1 year)  
						
					 
				
					
						
							
							
								 
								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=1 year)  
						
					 
				
					
						
							
							
								 
								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=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								27300e95e5 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Comments, tweaks.  
							
							 
							
							... 
							
							
 
							
							+ Alignment to reduce noise on next commit. 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								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=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								ecba972102 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Cleanup unused comments/code.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								1c7f3590a2 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Fixed right-click handling in MultiSelectItemFooter() when not focused.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								4141d6fba6 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: Delete items from menu.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								3d962dd5a5 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Further simplication of user code to support Deletion.  
							
							 
							
							... 
							
							
 
							
							Provide standard RequestFocusItem storage. 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								a1d829eaf7 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Maintain NavIdSelected for user. Simplify deletion demo.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								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=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								2e38a62a63 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: first-draft of user-side deletion idioms.  
							
							 
							
							... 
							
							
 
							
							(will need support from lib) 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								ocornut
							
						 
						
							 
							
							
							
								
							
								4ba6dc2a3f 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Clarify and better enforce lifetime of BeginMultiSelect() value.  
							
							 
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
						
					 
				
					
						
							
							
								 
								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=1 year)  
						
					 
				
					
						
							
							
								 
								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=1 year)