ImGuiTableFlags_NoSavedSettings=1<<5,// Disable persisting columns order, width and sort settings in the .ini file.
ImGuiTableFlags_ContextMenuInBody=1<<6,// Right-click on columns body/contents will display table context menu. By default it is available in TableHeadersRow().
// Decorations
ImGuiTableFlags_RowBg=1<<7,// Set each RowBg color with ImGuiCol_TableRowBg or ImGuiCol_TableRowBgAlt (equivalent to calling TableSetBgColor with ImGuiTableBgFlags_RowBg0 on each row manually)
ImGuiTableFlags_RowBg=1<<7,// Set each RowBg color with ImGuiCol_TableRowBg or ImGuiCol_TableRowBgAlt (equivalent of calling TableSetBgColor with ImGuiTableBgFlags_RowBg0 on each row manually)
ImGuiTableFlags_BordersInnerH=1<<8,// Draw horizontal borders between rows.
ImGuiTableFlags_BordersOuterH=1<<9,// Draw horizontal borders at the top and bottom.
ImGuiTableFlags_BordersInnerV=1<<10,// Draw vertical borders between columns.
@ -1074,23 +1074,21 @@ enum ImGuiTableFlags_
ImGuiTableFlags_NoBordersInBody=1<<12,// Disable vertical borders in columns Body (borders will always appears in Headers).
ImGuiTableFlags_NoBordersInBodyUntilResize=1<<13,// Disable vertical borders in columns Body until hovered for resize (borders will always appears in Headers).
// Sizing
ImGuiTableFlags_SizingPolicyFixedX=1<<14,// Default if ScrollX is on. Columns will default to use _WidthFixed or _WidthAutoResize policy. Read description above for more details.
ImGuiTableFlags_SizingPolicyStretchX=1<<15,// Default if ScrollX is off. Columns will default to use _WidthStretch policy. Read description above for more details.
ImGuiTableFlags_NoHeadersWidth=1<<16,// Disable header width contribution to automatic width calculation.
ImGuiTableFlags_NoHostExtendY=1<<17,// (FIXME-TABLE: Reword as SizingPolicy?) Disable extending past the limit set by outer_size.y, only meaningful when neither of ScrollX|ScrollY are set (data below the limit will be clipped and not visible)
ImGuiTableFlags_NoKeepColumnsVisible=1<<18,// Disable keeping column always minimally visible when table width gets too small and ScrollX is off.
ImGuiTableFlags_PreciseStretchWidths=1<<19,// Disable distributing remainder width to stretched columns (width allocation on a 100-wide table with 3 columns: Without this flag: 33,33,34. With this flag: 33,33,33). With larger number of columns, resizing will appear to be less smooth.
ImGuiTableFlags_NoClip=1<<20,// Disable clipping rectangle for every individual columns (reduce draw command count, items will be able to overflow into other columns). Generally incompatible with TableSetupScrollFreeze().
ImGuiTableFlags_SizingPolicyStretchX=1<<14,// Default if ScrollX is off. Columns will default to use _WidthStretch policy. Read description above for more details.
ImGuiTableFlags_SizingPolicyFixedX=1<<15,// Default if ScrollX is on. Columns will default to use _WidthFixed or _WidthAutoResize policy (if Resizable is off). Read description above for more details.
ImGuiTableFlags_SameWidths=1<<16,// Make all columns the same widths which is useful with Fixed columns policy (but granted by default with Stretch policy + no resize). Implicitly enable ImGuiTableFlags_NoKeepColumnsVisible and disable ImGuiTableFlags_Resizable.
ImGuiTableFlags_NoHeadersWidth=1<<17,// Disable headers' contribution to automatic width calculation.
ImGuiTableFlags_NoHostExtendY=1<<18,// Disable extending past the limit set by outer_size.y, only meaningful when neither of ScrollX|ScrollY are set (data below the limit will be clipped and not visible)
ImGuiTableFlags_NoKeepColumnsVisible=1<<19,// Disable keeping column always minimally visible when ScrollX is off and table gets too small.
ImGuiTableFlags_PreciseWidths=1<<20,// Disable distributing remainder width to stretched columns (width allocation on a 100-wide table with 3 columns: Without this flag: 33,33,34. With this flag: 33,33,33). With larger number of columns, resizing will appear to be less smooth.
ImGuiTableFlags_NoClip=1<<21,// Disable clipping rectangle for every individual columns (reduce draw command count, items will be able to overflow into other columns). Generally incompatible with TableSetupScrollFreeze().
// Padding
ImGuiTableFlags_PadOuterX=1<<21,// Default if BordersOuterV is on. Enable outer-most padding.
ImGuiTableFlags_NoPadOuterX=1<<22,// Default if BordersOuterV is off. Disable outer-most padding.
ImGuiTableFlags_NoPadInnerX=1<<23,// Disable inner padding between columns (double inner padding if BordersOuterV is on, single inner padding if BordersOuterV is off).
ImGuiTableFlags_PadOuterX=1<<22,// Default if BordersOuterV is on. Enable outer-most padding.
ImGuiTableFlags_NoPadOuterX=1<<23,// Default if BordersOuterV is off. Disable outer-most padding.
ImGuiTableFlags_NoPadInnerX=1<<24,// Disable inner padding between columns (double inner padding if BordersOuterV is on, single inner padding if BordersOuterV is off).
// Scrolling
ImGuiTableFlags_ScrollX=1<<24,// Enable horizontal scrolling. Require 'outer_size' parameter of BeginTable() to specify the container size. Changes default sizing policy. Because this create a child window, ScrollY is currently generally recommended when using ScrollX.
ImGuiTableFlags_ScrollY=1<<25,// Enable vertical scrolling. Require 'outer_size' parameter of BeginTable() to specify the container size.
ImGuiTableFlags_ScrollX=1<<25,// Enable horizontal scrolling. Require 'outer_size' parameter of BeginTable() to specify the container size. Changes default sizing policy. Because this create a child window, ScrollY is currently generally recommended when using ScrollX.
ImGuiTableFlags_ScrollY=1<<26// Enable vertical scrolling. Require 'outer_size' parameter of BeginTable() to specify the container size.
ImGuiTableColumnFlags_DefaultHide=1<<0,// Default as a hidden column.
ImGuiTableColumnFlags_DefaultSort=1<<1,// Default as a sorting column.
ImGuiTableColumnFlags_WidthStretch=1<<2,// Column will stretch, preferable with horizontal scrolling disabled (default if table sizing policy is SizingPolicyStretchX).
ImGuiTableColumnFlags_WidthFixed=1<<3,// Column will not stretch, preferable with horizontal scrolling enabled (default if table sizing policy is SizingPolicyFixedX and table is resizable).
ImGuiTableColumnFlags_WidthStretch=1<<2,// Column will stretch. Preferable with horizontal scrolling disabled (default if table sizing policy is SizingPolicyStretchX).
ImGuiTableColumnFlags_WidthFixed=1<<3,// Column will not stretch. Preferable with horizontal scrolling enabled (default if table sizing policy is SizingPolicyFixedX and table is resizable).
ImGuiTableColumnFlags_WidthAutoResize=1<<4,// Column will not stretch and keep resizing based on submitted contents (default if table sizing policy is SizingPolicyFixedX and table is not resizable).
ImGuiTableColumnFlags_NoClipX =1<<6,// Disable clipping for this column (all NoClipX columns will render in a same draw command).
ImGuiTableColumnFlags_NoSort=1<<7,// Disable ability to sort on this field (even if ImGuiTableFlags_Sortable is set on the table).
ImGuiTableColumnFlags_NoSortAscending =1<<8,// Disable ability to sort in the ascending direction.
ImGuiTableColumnFlags_NoSortDescending=1<<9,// Disable ability to sort in the descending direction.
ImGuiTableColumnFlags_NoHide =1<<10,// Disable hiding this column.
ImGuiTableColumnFlags_NoHeaderWidth =1<<11,// Header width don't contribute to automatic column width.
ImGuiTableColumnFlags_PreferSortAscending =1<<12,// Make the initial sort direction Ascending when first sorting on this column (default).
ImGuiTableColumnFlags_PreferSortDescending=1<<13,// Make the initial sort direction Descending when first sorting on this column.
ImGuiTableColumnFlags_IndentEnable =1<<14,// Use current Indent value when entering cell (default for 1st column).
ImGuiTableColumnFlags_IndentDisable =1<<15,// Ignore current Indent value when entering cell (default for columns after the 1st one). Indentation changes _within_ the cell will still be honored.
ImGuiTableColumnFlags_NoReorder =1<<16,// Disable reordering this column, this will also prevent other columns from crossing over this column.
ImGuiTableColumnFlags_NoReorder =1<<6,// Disable manual reordering this column, this will also prevent other columns from crossing over this column.
ImGuiTableColumnFlags_NoHide=1<<7,// Disable ability to hide this column.
ImGuiTableColumnFlags_NoClip =1<<8,// Disable clipping for this column (all NoClip columns will render in a same draw command).
ImGuiTableColumnFlags_NoSort=1<<9,// Disable ability to sort on this field (even if ImGuiTableFlags_Sortable is set on the table).
ImGuiTableColumnFlags_NoSortAscending =1<<10,// Disable ability to sort in the ascending direction.
ImGuiTableColumnFlags_NoSortDescending =1<<11,// Disable ability to sort in the descending direction.
ImGuiTableColumnFlags_NoHeaderWidth =1<<12,// Header width don't contribute to automatic column width.
ImGuiTableColumnFlags_PreferSortAscending =1<<13,// Make the initial sort direction Ascending when first sorting on this column (default).
ImGuiTableColumnFlags_PreferSortDescending =1<<14,// Make the initial sort direction Descending when first sorting on this column.
ImGuiTableColumnFlags_IndentEnable =1<<15,// Use current Indent value when entering cell (default for 1st column).
ImGuiTableColumnFlags_IndentDisable =1<<16,// Ignore current Indent value when entering cell (default for columns after the 1st one). Indentation changes _within_ the cell will still be honored.
ImGui::CheckboxFlags("_IndentEnable",&column_flags[column],ImGuiTableColumnFlags_IndentEnable);ImGui::SameLine();HelpMarker("Default for column 0");
ImGui::CheckboxFlags("_IndentDisable",&column_flags[column],ImGuiTableColumnFlags_IndentDisable);ImGui::SameLine();HelpMarker("Default for column >0");
flags&=~(ImGuiTableFlags_SizingPolicyMaskX_^ImGuiTableFlags_SizingPolicyFixedX);// Can't specify both sizing polices so we clear the other
flags&=~ImGuiTableFlags_SizingPolicyStretchX;// Can't specify both sizing polices so we clear the other
ImGui::SameLine();HelpMarker("Default if _ScrollX if enabled. Makes columns use _WidthFixed by default, or _WidthFixedResize if _Resizable is not set.");
ImGui::SameLine();HelpMarker("Disable distributing remainder width to stretched columns (width allocation on a 100-wide table with 3 columns: Without this flag: 33,33,34. With this flag: 33,33,33). With larger number of columns, resizing will appear to be less smooth.");
flags&=~(ImGuiTableFlags_SizingPolicyMaskX_^ImGuiTableFlags_SizingPolicyStretchX);// Can't specify both sizing polices so we clear the other
flags&=~ImGuiTableFlags_SizingPolicyFixedX;// Can't specify both sizing polices so we clear the other
ImGui::SameLine();HelpMarker("[Default if ScrollX is off]\nFit all columns within available width (or specified inner_width). Fixed and Stretch columns allowed.");
flags&=~(ImGuiTableFlags_SizingPolicyMaskX_^ImGuiTableFlags_SizingPolicyFixedX);// Can't specify both sizing polices so we clear the other
flags&=~ImGuiTableFlags_SizingPolicyStretchX;// Can't specify both sizing polices so we clear the other
ImGui::SameLine();HelpMarker("[Default if ScrollX is on]\nEnlarge as needed: enable scrollbar if ScrollX is enabled, otherwise extend parent window's contents rectangle. Only Fixed columns allowed. Stretched columns will calculate their width assuming no scrolling.");
ImGui::SameLine();HelpMarker("Disable distributing remainder width to stretched columns (width allocation on a 100-wide table with 3 columns: Without this flag: 33,33,34. With this flag: 33,33,33). With larger number of columns, resizing will appear to be less smooth.");
ImGui::SameLine();HelpMarker("Disable clipping rectangle for every individual columns (reduce draw command count, items will be able to overflow into other columns). Generally incompatible with ScrollFreeze options.");