36f940f652 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: ImGuiSelectionBasicStorage: added GetNextSelectedItem() to abstract selection storage from user. Amend Assets Browser demo to handle drag and drop correctly.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								cd85a75b36 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: comments, header tweaks., simplication (some of it on wiki).  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								8346e7f4af 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: added ImGuiSelectionExternalStorage helper. Simplify bool demo.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								ce5d1b2fcb 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: fixed ImGuiSelectionBasicStorage::Swap() helper.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								628902d97e 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: added ImGuiSelectionBasicStorage::GetStorageIdFromIndex() indirection to be easier on the reader.  
							
							... 
							
							
 
							
							Tempting to make it a virtual. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								deedb600f2 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: (breaking) Added 'items_count' parameter to BeginMultiSelect(). Will enable extra features, and remove equivalent param from ImGuiSelectionBasicStorage::ApplyRequests(.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								431caec3da 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: mark parent child window as navigable into, with highlight. Assume user will always submit interactive items.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								bd5620b11f 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: (breaking) renamed ImGuiMultiSelectFlags_BoxSelect -> ImGuiMultiSelectFlags_BoxSelect1d, ImGuiMultiSelectFlags_BoxSelect2d -> ImGuiMultiSelectFlags_BoxSelect.  
							
							... 
							
							
 
							
							ImGuiMultiSelectFlags_BoxSelect1d being an optimization it is the optional flag. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								35b4a502aa 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-select: fixes for checkboxes support. Comments.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								5c7e4350bc 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: (breaking) renamed ImGuiSelectionBasicStorage::AdapterData to UserData.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								d2fd78ea7c 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-select: fixed "when dragging from void" implementation messing with calling BeginMultiSelect() without a selection size.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								57ff7c4ef4 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: add GetMultiSelectState() + store LastSelectionSize as provided by user, convenient for quick debugging and testing.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								b507b33509 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: when dragging from void, first hit item sets NavId by simulating a press, so navigation can resume from that spot.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								0f35ebac60 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: minor refactor, tidying up.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								78494c92a2 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: (Breaking) Added current_selection_size to BeginMultiSelect().  
							
							... 
							
							
 
							
							Required for shortcut routing so we can e.g. have Escape be used to clear selection THEN to exit child window. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								83de5e25ad 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: use Shortcut().  
							
							... 
							
							
 
							
							Got rid of suggestion to move Delete signal processing to BeginMultiSelect(), seems unnecessary. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								e05496092e 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: fix preventing focus. amend determination of scope_hovered for decorated/non-child windows + avoid stealing NavId. (7424)  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								e3df9e8a7a 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: added ImGuiMultiSelectFlags_NoAutoSelect, ImGuiMultiSelectFlags_NoAutoClear features + added Checkbox Demo  
							
							... 
							
							
 
							
							Refer to "widgets_multiselect_checkboxes" in imgui_test_suite. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								24926aa717 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: make various child windows resizable, with synched heights for the dual list box demo.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								348561f99f 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Comments + tweaked location for widgets to test ImGuiItemFlags_IsMultiSelect to avoid misleading into thinking doing it before ItemAdd() is necessary.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								408e62dbfe 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Simplified ImGuiSelectionBasicStorage by using a single SetItemSelected() entry point.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								80c6bc8738 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: (Breaking) merge ImGuiSelectionRequestType_Clear and ImGuiSelectionRequestType_SelectAll into ImGuiSelectionRequestType_SetAll., rename ImGuiSelectionRequest::RangeSelected to Selected.  
							
							... 
							
							
 
							
							The reasoning is that it makes it easier/faster to write an adhoc ImGuiMultiSelectIO handler (e.g. trying to apply multi-select to checkboxes) 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								60305e39c2 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Fixed ImGuiMultiSelectFlags_SelectOnClickRelease over tree node arrow.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								1f6239de4e 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: Fixed initial drag from not claiming hovered id, preventing window behind to move for a frame.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								7d1246e248 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: Fixed CTRL+drag from void clearing items.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								130714fba3 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Added ImGuiMultiSelectFlags_NoRangeSelect. Fixed ImGuiMultiSelectFlags_ScopeRect not querying proper window hover.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								4cdc7bf150 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Comments + Assets Browser : Tweak colors.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								c0c5f3dbc7 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Fixed ImGuiSelectionBasicStorage::ApplyRequests() incorrectly maintaining selection size on SelectAll.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								4fb97db4af 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: Further refactor to extra mode code away from multi-select function into box-select funcitons.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								3c20d552da 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: Fixed scrolling on high framerates.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								a2c287ce58 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: Refactor: Renames.  
							
							... 
							
							
 
							
							Split into two commits to facilite looking into previous one if needed. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								a5d6cf872e 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: Refactor into its own structure, designed for single-instance but closer to being reusable outside Multi-Select.  
							
							... 
							
							
 
							
							Kept same member names. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								44bab4ab28 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: Added ImGuiMultiSelectFlags_BoxSelect2d support. Enabled in Asset Browser. Selectable() supports it.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								08d540fc5c 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: Fixed holes when using with clipper (in 1D list.)  
							
							... 
							
							
 
							
							Clipper accounts for Selectable() layout oddity as BoxSelect is sensitive to it.
Also tweaked scroll triggering region inward.
Rename ImGuiMultiSelectFlags_NoBoxSelectScroll to ImGuiMultiSelectFlags_BoxSelectNoScroll.
Fixed use with ImGuiMultiSelectFlags_SinglaSelect. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								7d9c448cfb 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: Assets Browser: track scrolling target so we can roughly land on hovered item.  
							
							... 
							
							
 
							
							It's impossible to do this perfectly without some form of locking on item because as the hovered item X position changes it's easy to drift. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								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)  
				
					
						
							
							
								 
						
							
							
								0ce1418295 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: reworked comments in imgui.h now that we have our own section.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								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)  
				
					
						
							
							
								 
						
							
							
								b066d839e8 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: remove ImGuiSelectionRequest/ImGuiMultiSelectIO details from public api to reduce confusion + comments.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								4a11a9b0b9 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: support for nested/stacked BeginMultiSelect().  
							
							... 
							
							
 
							
							Mimicking table logic, reusing buffers. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								40c274ee35 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Demo: rework and move selection adapter inside ExampleSelection.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								de8a6d0722 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: added scroll support.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								b642c88a30 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: Box-Select: added support for ImGuiMultiSelectFlags_BoxSelect.  
							
							... 
							
							
 
							
							(v11)
FIXME: broken on clipping demo. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								fd6d5d6703 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: (breaking) renamed ImGuiMultiSelectFlags_ClearOnClickWindowVoid -> ImGuiMultiSelectFlags_ClearOnClickVoid. Added ImGuiMultiSelectFlags_ScopeWindow, ImGuiMultiSelectFlags_ScopeRect.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								3a8a88c8f5 
								
							
								 
							
						 
						
							
							
								
								Demo: Assets Browser: add hit spacing, requierd for box-select patterns.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								f5fac870e1 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: simplify clearing ImGuiMultiSelectTempData.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								84600712d5 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: use a single ImGuiMultiSelectIO buffer.  
							
							... 
							
							
 
							
							+ using local storage var in EndMultiSelect(), should be no-op. 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								075e223a1d 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: added support for recovery in ErrorCheckEndWindowRecover().  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)  
				
					
						
							
							
								 
						
							
							
								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)  
				
					
						
							
							
								 
						
							
							
								a882002c0b 
								
							
								 
							
						 
						
							
							
								
								RangeSelect/MultiSelect: (Breaking) io contains a ImVector<ImGuiSelectionRequest> list.  
							
							
 
							
						 
						
							ago%!(EXTRA string=1 year)