22ace4438c 
								
							
								 
							
						 
						
							
							
								
								Tables: clarify assumption that rendering of bg/borders in bg0/bg1 are cpu-clipped allowing frozen/unfrozen to share drawcmd + remove offset on outer borders of scrolling tables.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								30468829c2 
								
							
								 
							
						 
						
							
							
								
								Tables: Internal: Maintain InnerRect to further clarify some code. Renamed Bg1 fields to Bg2 (used by Selectable) as the other handles Bg0+Bg1.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								ad83976b35 
								
							
								 
							
						 
						
							
							
								
								Tables: Added ImGuiTableFlags_NoHostExtendX ( #3605 ) marked as WIP, will probably rename.  
							
							... 
							
							
 
							
							Moved some code from BeginTable() to TableUpdateLayout() to late latch some of the required data. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								c4dbab8f5e 
								
							
								 
							
						 
						
							
							
								
								Tables: reset all width apply to hidden stretch columns. Comments.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								1fb26d18c4 
								
							
								 
							
						 
						
							
							
								
								Tables: fixed seemingly unnecessarily copy of ImGuiTableColumnFlags_NoDirectResize_ which broken resizing from W3| in a F1 W3 F2 setup. Header only allow overlap on hover, not when active (amend  f2df804f)  
							
							... 
							
							
 
							
							Otherwise TableUpdateBorders() tends to override mouse cursor. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								892b48e2d6 
								
							
								 
							
						 
						
							
							
								
								Tables: Lock contents width while resizing down an horizontal scrolling table. Headers declare ideal width regardless of clipping. Misc comments.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								bd899efbd0 
								
							
								 
							
						 
						
							
							
								
								Tables: fixed "resize to default" of multiple stretch column (added  3b3503e, broken  7a61f340).  
							
							... 
							
							
 
							
							Fixed a warning.
Storing RightMostStretchedColumn column for resizing code.
Avoid clearing RightMostEnabledColumn in BeginTable() so resizing code can potentially use it.
(Added regression tests for resize all to default imgui_dev) 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								f2df804fcc 
								
							
								 
							
						 
						
							
							
								
								Tables: four small fixes.  
							
							... 
							
							
 
							
							Fixed last item flags leaking to disabled column, affecting IsItemHovered(). (#3651 ).
Validate and fix invalid DisplayOrder data from ini file.
Allow TableHeaderRows() to function will missing TableSetupColumn() calls.
Made TableHeader() use AllowItemOverlap mode to allow submit subsequent item in same cell, since it covers the whole cell area. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								738606a294 
								
							
								 
							
						 
						
							
							
								
								Tables: added ImGuiTableFlags_SortTristate. Renamed ImGuiTableFlags_MultiSortable to ImGuiTableFlags_SortMulti. Removed now unused FlagsIn storage.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								cad8935bfd 
								
							
								 
							
						 
						
							
							
								
								Tables: revert setting colum cliprect.max.x to WorkMax.x instead of Max.x at it complicates header code. Fix clipped sort arrow. (amend  17536f9a)  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								bff1836922 
								
							
								 
							
						 
						
							
							
								
								Internals: added facility to hide windows from render without interfering with the HiddenFramesCanSkipItems/HiddenFramesCannotSkipItems fields which have effects on layout. Compact some fields.  
							
							... 
							
							
 
							
							Ideally we'd have a simpler system but it's not easy to make the capture system change to hook at the right spot. Will rework. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								1ad5502f18 
								
							
								 
							
						 
						
							
							
								
								Tables: Closer to zero-clear constructor. Lazily clearing name offsets to avoid an iteration in BeginTable(). Removed unused TableSetColumnIsEnabled(), signature went faulty anyway.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								76964a27ce 
								
							
								 
							
						 
						
							
							
								
								Tables: moved TableNextRow(), TableBeginRow(), TableEndRow(), TableNextColumn(), TableBeginCell(), TableEndCell() to their own section.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								e6b875c09b 
								
							
								 
							
						 
						
							
							
								
								Tables: Ditch old columns flags/setting if not called again. Displaying right-most border when using _SameWidths. Moving Width-related functions to their own section.  
							
							... 
							
							
 
							
							Effectively removed the TableFixColumnFlags() in first loop of TableUpdateLayout() to replace it with similar one but only when column not declared. I think this should be the right thing. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								3346544cf5 
								
							
								 
							
						 
						
							
							
								
								Examples: Fix batch files (amend  b1a18d82,  #3513 ), standardize them + DirectX12: Move ImGui::Render() call above the first barrier to clarify its lack of effect on the graphics pipe.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								17536f9add 
								
							
								 
							
						 
						
							
							
								
								Tables: more consistent use of CellPadding.x*2 and clip-rect on right-most side of non-bordered column + fix cellbg for standalone TableHeader call.  
							
							... 
							
							
 
							
							Using CellPadding.x on both sides when BorderV is off, generally most consistent and with default value (4,2) promotes at-glance visible spacing between non-bordered columns. Effectively double horizontal padding on non-bordered columns.
Made ClipRect.Max.x matches WorkMaxX which is where we'd like to go for windows themselves.
TableHeader() submit single cell bg color if not already submitted as a full header row.
Misc comments/docs updates. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								9874077fc0 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'tables'  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								0b14dd9e55 
								
							
								 
							
						 
						
							
							
								
								Tables: fixed propagation of line height from outside the table. Added outer-width demo.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								6e38026627 
								
							
								 
							
						 
						
							
							
								
								Tables: changelog. removed TableGetHoveredColumn() from public API in favor of using TableGetColumnFlags(). renamed ImGuiTableSortSpecsColumn to ImGuiTableColumnSortSpecs.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								7a61f3407b 
								
							
								 
							
						 
						
							
							
								
								Tables: support internal TableResetSettings(), clarify lifetime, fixed missing auto-fit on column unhidden after first run, fixed resize assert when changing column sizing policy to stretch mid-frame (before of -1.0f weight)  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								b194df413c 
								
							
								 
							
						 
						
							
							
								
								Tables: exposed status flags via TableGetColumnFlags(), removed TableGetColumnIsSorted()  
							
							... 
							
							
 
							
							Scoped width auto calc. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								984c4cb5f8 
								
							
								 
							
						 
						
							
							
								
								Tables: distinguishing per-column IsVisible from IsRequestOutput which is returned to user. Clarified clipping rules/requirements. Comments.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								f70bf69e3b 
								
							
								 
							
						 
						
							
							
								
								Tables: comments and tweaks on TableUpdateLayout(). changed "apply final width" loop to use natural column order.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								155b8bb816 
								
							
								 
							
						 
						
							
							
								
								Tables: Shared menu item id for "Size all" variations. Avoid allocation on single sort specs. Fix TableGetColumnIsEnabled(). Massage TableHeaderRows().  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								e126a64782 
								
							
								 
							
						 
						
							
							
								
								Tables: using a typedef in internal code to specify column/draw channel index storage.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								6aa8388e9f 
								
							
								 
							
						 
						
							
							
								
								Tables: index tweaks, fixed some inconsistent spacings.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								5877b9d722 
								
							
								 
							
						 
						
							
							
								
								Tables: moved TablePushBackgroundChannel(), TablePopBackgroundChannel(), TableDrawBorders() to their own section.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								5180025de5 
								
							
								 
							
						 
						
							
							
								
								Tables: moved + renamed TableSetupDrawChannels(), TableMergeDrawChannels() to their own section.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								b7c83e4bac 
								
							
								 
							
						 
						
							
							
								
								Tables: moved TableGetSortSpecs(), TableGetColumnIsSorted(), TableFixColumnSortDirection(), TableSetColumnSortDirection() to their own section.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								d6b1f0d13d 
								
							
								 
							
						 
						
							
							
								
								Tables: moved TableHeadersRow(), TableHeader() to their own section.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								592fc69054 
								
							
								 
							
						 
						
							
							
								
								Tables: moved TableDrawContextMenu(), TableOpenContextMenu() to their own section.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								7aed4b152b 
								
							
								 
							
						 
						
							
							
								
								Tables: improve index, file structure tweaks.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								082f1d10d0 
								
							
								 
							
						 
						
							
							
								
								Tables: renamed TableBeginUpdateColumns to TableBeginApplyRequests, moved code to TableUpdateLayout, in order to ensure that enable state is not inconsistent due to TableSetupColumn column hiding requests.  
							
							... 
							
							
 
							
							All the fields moved from TableBeginUpdateColumns to TableUpdateLayout are not used before. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								79c9eaa78e 
								
							
								 
							
						 
						
							
							
								
								Tables: Internals: renamed Visible to Enabled to avoid confusion with visibility checks.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								5ef7b831c2 
								
							
								 
							
						 
						
							
							
								
								Tables: removed ImGuiTableSortSpecs::ColumnsMask because it needlessly exposes our 64-columns limitation which we'd eventually would like to lift  
							
							... 
							
							
 
							
							+ shuffle declarations in internals 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								e09454aec4 
								
							
								 
							
						 
						
							
							
								
								Tables: removed TableGetColumnIsVisible from public api, re-specced as TableGetColumnIsHidden() returning same flag as setter, clipper increase CurrentRow.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								a70c6aae9f 
								
							
								 
							
						 
						
							
							
								
								Tables: demo synced tables + fix resizing indented synced tables.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								0c9ab0acdd 
								
							
								 
							
						 
						
							
							
								
								Tables: setup and maintain ItemWidth per column.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								8f126d5d95 
								
							
								 
							
						 
						
							
							
								
								Tables: rename ImGuiTableFlags_SizingPolicyStretchX to ImGuiTableFlags_ColumnsWidthStretch, ImGuiTableFlags_SizingPolicyFixedX to ImGuiTableFlags_ColumnsWidthFixed.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								41f89e0f59 
								
							
								 
							
						 
						
							
							
								
								Tables: added ImGuiTableFlags_SameWidths, used in demo. Reordered columns flags and exposed them all in Columns Flags section.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								3a2f0bfc04 
								
							
								 
							
						 
						
							
							
								
								Tables: demo inner_size + scrollx + stretch, added TableGetRowIndex(), renamed _WidthAlwaysAutoResize to _WidthAutoResize.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								3b3503e60f 
								
							
								 
							
						 
						
							
							
								
								Tables: decent support for auto-resize of stretch columns (trickier than it sounds)  
							
							... 
							
							
 
							
							Four cases:
1. visible columns are all stretch, resize all : "size all to default" reset to default weight
2. visible columns are all stretch, resize one: "size one to fit" set weight, reapply weight (todo: improve weight redistribution in case of >1 siblings)
3. visible columns are mixed, resize all: "size all to fit/default" reset stretchs to default weight, set fixed to auto width
4. visible columns are mixed, resize one: "size one to fit", redistribute weight the same way as a manual resize
+ TableSetupColumn() more consistently clear AutoFitQueue.
+ zero-clear RowCellData buffer. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								c5dcf2fde1 
								
							
								 
							
						 
						
							
							
								
								Tables: rework keep-visible/max-width code to be less incorrect, but right-most column may effectively has few pixels less of visible cliprect width.  
							
							... 
							
							
 
							
							See table_width_distrib and table_width_keep_visible tests.
+ fix minor left-side clipping on post-frozen column
+ made TableHeader() use reliable column->MaxX 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								197e9c085b 
								
							
								 
							
						 
						
							
							
								
								Tables: separate bg0 and bg1 draw channels, selectable above bg color + will facilitate drawing of borders in EndTable().  
							
							... 
							
							
 
							
							+ unused code to strip out dummy draw channel calls. 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								52f24df668 
								
							
								 
							
						 
						
							
							
								
								Tables: comments, tweaks, added internal TableSetColumnVisible(), merged the two TableSetColumnWidth().  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								bf197c74f6 
								
							
								 
							
						 
						
							
							
								
								Tables: storing WorkMaxX, made offset_x == MinX to be clearer, clip rect merge uses ClipRect.max.x directly, removed unused ShrinkWidth code, metrics.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								5465d30d67 
								
							
								 
							
						 
						
							
							
								
								Tables: added ImGuiTableFlags_PreciseStretchWidths.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								10db896813 
								
							
								 
							
						 
						
							
							
								
								Tables: store RawData in a simple void* pointer, rename ContentMinX > WorkMinX, misc tidying up.  
							
							... 
							
							
 
							
							Removed unnecessary casts when using CheckboxFlags(). 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								82cf41d804 
								
							
								 
							
						 
						
							
							
								
								Tables: tooltip on clipped TableHeader() (amended)  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)  
				
					
						
							
							
								 
						
							
							
								507db499e4 
								
							
								 
							
						 
						
							
							
								
								Tables: work on background draw channel handling (amend "create a separate background draw channel") + Selectable disable spacing when spanning.  
							
							
 
							
						 
						
							ago%!(EXTRA string=5 years)