pub struct TableFlags(/* private fields */);Expand description
Flags for table widgets
Implementations§
Source§impl TableFlags
impl TableFlags
Sourcepub const REORDERABLE: Self
pub const REORDERABLE: Self
Enable reordering columns in header row (need calling TableSetupColumn() + TableHeadersRow() to display headers)
Sourcepub const SORTABLE: Self
pub const SORTABLE: Self
Enable sorting. Call TableGetSortSpecs() to obtain sort specs. Also see ImGuiTableFlags_SortMulti and ImGuiTableFlags_SortTristate.
Sourcepub const NO_SAVED_SETTINGS: Self
pub const NO_SAVED_SETTINGS: Self
Disable persisting columns order, width and sort settings in the .ini file
Sourcepub const CONTEXT_MENU_IN_BODY: Self
pub const CONTEXT_MENU_IN_BODY: Self
Right-click on columns body/contents will display table context menu. By default it is available in TableHeadersRow().
Sourcepub const ROW_BG: Self
pub const ROW_BG: Self
Set each RowBg color with ImGuiCol_TableRowBg or ImGuiCol_TableRowBgAlt (equivalent of calling TableSetBgColor with ImGuiTableBgFlags_RowBg0 on each row manually)
Sourcepub const BORDERS_INNER_H: Self
pub const BORDERS_INNER_H: Self
Draw horizontal borders between rows
Sourcepub const BORDERS_OUTER_H: Self
pub const BORDERS_OUTER_H: Self
Draw horizontal borders at the top and bottom
Sourcepub const BORDERS_INNER_V: Self
pub const BORDERS_INNER_V: Self
Draw vertical borders between columns
Sourcepub const BORDERS_OUTER_V: Self
pub const BORDERS_OUTER_V: Self
Draw vertical borders on the left and right sides
Sourcepub const BORDERS_INNER: Self
pub const BORDERS_INNER: Self
Draw inner borders
Sourcepub const BORDERS_OUTER: Self
pub const BORDERS_OUTER: Self
Draw outer borders
Sourcepub const NO_BORDERS_IN_BODY: Self
pub const NO_BORDERS_IN_BODY: Self
[ALPHA] Disable vertical borders in columns Body (borders will always appears in Headers). -> May move to style
Sourcepub const NO_BORDERS_IN_BODY_UNTIL_RESIZE: Self
pub const NO_BORDERS_IN_BODY_UNTIL_RESIZE: Self
[ALPHA] Disable vertical borders in columns Body until hovered for resize (borders will always appears in Headers). -> May move to style
Sourcepub const SIZING_FIXED_FIT: Self
pub const SIZING_FIXED_FIT: Self
Columns default to _WidthFixed or _WidthAuto (if resizable or not resizable), matching contents width
Sourcepub const SIZING_FIXED_SAME: Self
pub const SIZING_FIXED_SAME: Self
Columns default to _WidthFixed or _WidthAuto (if resizable or not resizable), matching the maximum contents width of all columns. Implicitly enable ImGuiTableFlags_NoKeepColumnsVisible.
Sourcepub const SIZING_STRETCH_PROP: Self
pub const SIZING_STRETCH_PROP: Self
Columns default to _WidthStretch with default weights proportional to each columns contents widths.
Sourcepub const SIZING_STRETCH_SAME: Self
pub const SIZING_STRETCH_SAME: Self
Columns default to _WidthStretch with default weights all equal, unless overridden by TableSetupColumn().
Sourcepub const NO_HOST_EXTEND_X: Self
pub const NO_HOST_EXTEND_X: Self
Make outer width auto-fit to columns, overriding outer_size.x value. Only available when ScrollX/ScrollY are disabled and Stretch columns are not used.
Sourcepub const NO_HOST_EXTEND_Y: Self
pub const NO_HOST_EXTEND_Y: Self
Make outer height stop exactly at outer_size.y (prevent auto-extending table past the limit). Only available when ScrollX/ScrollY are disabled. Data below the limit will be clipped and not visible.
Sourcepub const NO_KEEP_COLUMNS_VISIBLE: Self
pub const NO_KEEP_COLUMNS_VISIBLE: Self
Disable keeping column always minimally visible when ScrollX is on and table gets too small. Not recommended if columns are resizable.
Sourcepub const PRECISE_WIDTHS: Self
pub const PRECISE_WIDTHS: Self
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.
Sourcepub const NO_CLIP: Self
pub const NO_CLIP: Self
Disable clipping rectangle for every individual columns (reduce draw command count, items will be able to overflow into other columns). Generally incompatible with TableSetupScrollFreeze().
Sourcepub const PAD_OUTER_X: Self
pub const PAD_OUTER_X: Self
Default if BordersOuterV is on. Enable outer-most padding. Generally desirable if you have headers.
Sourcepub const NO_PAD_OUTER_X: Self
pub const NO_PAD_OUTER_X: Self
Default if BordersOuterV is off. Disable outer-most padding.
Sourcepub const NO_PAD_INNER_X: Self
pub const NO_PAD_INNER_X: Self
Disable inner padding between columns (double inner padding if BordersOuterV is on, single inner padding if BordersOuterV is off).
Sourcepub const SCROLL_X: Self
pub const SCROLL_X: Self
Enable horizontal scrolling. Require ‘outer_size’ parameter of BeginTable() to specify the container size. Changes default sizing policy. Because this creates a child window, ScrollY is currently generally recommended when using ScrollX.
Sourcepub const SCROLL_Y: Self
pub const SCROLL_Y: Self
Enable vertical scrolling. Require ‘outer_size’ parameter of BeginTable() to specify the container size.
Sourcepub const SORT_MULTI: Self
pub const SORT_MULTI: Self
Hold shift when clicking headers to sort on multiple column. TableGetSortSpecs() may return specs where (SpecsCount > 1).
Sourcepub const SORT_TRISTATE: Self
pub const SORT_TRISTATE: Self
Allow no sorting, disable default sorting. TableGetSortSpecs() may return specs where (SpecsCount == 0).
Sourcepub const HIGHLIGHT_HOVERED_COLUMN: Self
pub const HIGHLIGHT_HOVERED_COLUMN: Self
Highlight column headers when hovered (may not be visible if table header is declaring a background color)
Source§impl TableFlags
impl TableFlags
Sourcepub const fn bits(&self) -> i32
pub const fn bits(&self) -> i32
Get the underlying bits value.
The returned value is exactly the bits set in this flags value.
Sourcepub const fn from_bits(bits: i32) -> Option<Self>
pub const fn from_bits(bits: i32) -> Option<Self>
Convert from a bits value.
This method will return None if any unknown bits are set.
Sourcepub const fn from_bits_truncate(bits: i32) -> Self
pub const fn from_bits_truncate(bits: i32) -> Self
Convert from a bits value, unsetting any unknown bits.
Sourcepub const fn from_bits_retain(bits: i32) -> Self
pub const fn from_bits_retain(bits: i32) -> Self
Convert from a bits value exactly.
Sourcepub fn from_name(name: &str) -> Option<Self>
pub fn from_name(name: &str) -> Option<Self>
Get a flags value with the bits of a flag with the given name set.
This method will return None if name is empty or doesn’t
correspond to any named flag.
Sourcepub const fn intersects(&self, other: Self) -> bool
pub const fn intersects(&self, other: Self) -> bool
Whether any set bits in a source flags value are also set in a target flags value.
Sourcepub const fn contains(&self, other: Self) -> bool
pub const fn contains(&self, other: Self) -> bool
Whether all set bits in a source flags value are also set in a target flags value.
Sourcepub fn remove(&mut self, other: Self)
pub fn remove(&mut self, other: Self)
The intersection of a source flags value with the complement of a target flags
value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
remove won’t truncate other, but the ! operator will.
Sourcepub fn toggle(&mut self, other: Self)
pub fn toggle(&mut self, other: Self)
The bitwise exclusive-or (^) of the bits in two flags values.
Sourcepub fn set(&mut self, other: Self, value: bool)
pub fn set(&mut self, other: Self, value: bool)
Call insert when value is true or remove when value is false.
Sourcepub const fn intersection(self, other: Self) -> Self
pub const fn intersection(self, other: Self) -> Self
The bitwise and (&) of the bits in two flags values.
Sourcepub const fn union(self, other: Self) -> Self
pub const fn union(self, other: Self) -> Self
The bitwise or (|) of the bits in two flags values.
Sourcepub const fn difference(self, other: Self) -> Self
pub const fn difference(self, other: Self) -> Self
The intersection of a source flags value with the complement of a target flags
value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
Sourcepub const fn symmetric_difference(self, other: Self) -> Self
pub const fn symmetric_difference(self, other: Self) -> Self
The bitwise exclusive-or (^) of the bits in two flags values.
Sourcepub const fn complement(self) -> Self
pub const fn complement(self) -> Self
The bitwise negation (!) of the bits in a flags value, truncating the result.
Source§impl TableFlags
impl TableFlags
Sourcepub const fn iter(&self) -> Iter<TableFlags>
pub const fn iter(&self) -> Iter<TableFlags>
Yield a set of contained flags values.
Each yielded flags value will correspond to a defined named flag. Any unknown bits will be yielded together as a final flags value.
Sourcepub const fn iter_names(&self) -> IterNames<TableFlags>
pub const fn iter_names(&self) -> IterNames<TableFlags>
Yield a set of contained named flags values.
This method is like iter, except only yields bits in contained named flags.
Any unknown bits, or bits not corresponding to a contained flag will not be yielded.
Trait Implementations§
Source§impl Binary for TableFlags
impl Binary for TableFlags
Source§impl BitAnd for TableFlags
impl BitAnd for TableFlags
Source§impl BitAndAssign for TableFlags
impl BitAndAssign for TableFlags
Source§fn bitand_assign(&mut self, other: Self)
fn bitand_assign(&mut self, other: Self)
The bitwise and (&) of the bits in two flags values.
Source§impl BitOr for TableFlags
impl BitOr for TableFlags
Source§fn bitor(self, other: TableFlags) -> Self
fn bitor(self, other: TableFlags) -> Self
The bitwise or (|) of the bits in two flags values.
Source§type Output = TableFlags
type Output = TableFlags
| operator.Source§impl BitOrAssign for TableFlags
impl BitOrAssign for TableFlags
Source§fn bitor_assign(&mut self, other: Self)
fn bitor_assign(&mut self, other: Self)
The bitwise or (|) of the bits in two flags values.
Source§impl BitXor for TableFlags
impl BitXor for TableFlags
Source§impl BitXorAssign for TableFlags
impl BitXorAssign for TableFlags
Source§fn bitxor_assign(&mut self, other: Self)
fn bitxor_assign(&mut self, other: Self)
The bitwise exclusive-or (^) of the bits in two flags values.
Source§impl Clone for TableFlags
impl Clone for TableFlags
Source§fn clone(&self) -> TableFlags
fn clone(&self) -> TableFlags
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TableFlags
impl Debug for TableFlags
Source§impl Extend<TableFlags> for TableFlags
impl Extend<TableFlags> for TableFlags
Source§fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
The bitwise or (|) of the bits in each flags value.
Source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one)Source§impl Flags for TableFlags
impl Flags for TableFlags
Source§const FLAGS: &'static [Flag<TableFlags>]
const FLAGS: &'static [Flag<TableFlags>]
Source§fn from_bits_retain(bits: i32) -> TableFlags
fn from_bits_retain(bits: i32) -> TableFlags
Source§fn contains_unknown_bits(&self) -> bool
fn contains_unknown_bits(&self) -> bool
true if any unknown bits are set.Source§fn from_bits_truncate(bits: Self::Bits) -> Self
fn from_bits_truncate(bits: Self::Bits) -> Self
Source§fn from_name(name: &str) -> Option<Self>
fn from_name(name: &str) -> Option<Self>
Source§fn iter_names(&self) -> IterNames<Self>
fn iter_names(&self) -> IterNames<Self>
Source§fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
Source§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere
Self: Sized,
Source§fn insert(&mut self, other: Self)where
Self: Sized,
fn insert(&mut self, other: Self)where
Self: Sized,
|) of the bits in two flags values.Source§fn remove(&mut self, other: Self)where
Self: Sized,
fn remove(&mut self, other: Self)where
Self: Sized,
&!). Read moreSource§fn toggle(&mut self, other: Self)where
Self: Sized,
fn toggle(&mut self, other: Self)where
Self: Sized,
^) of the bits in two flags values.Source§fn intersection(self, other: Self) -> Self
fn intersection(self, other: Self) -> Self
&) of the bits in two flags values.Source§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
&!). Read moreSource§fn symmetric_difference(self, other: Self) -> Self
fn symmetric_difference(self, other: Self) -> Self
^) of the bits in two flags values.Source§fn complement(self) -> Self
fn complement(self) -> Self
!) of the bits in a flags value, truncating the result.Source§impl FromIterator<TableFlags> for TableFlags
impl FromIterator<TableFlags> for TableFlags
Source§fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
The bitwise or (|) of the bits in each flags value.
Source§impl Hash for TableFlags
impl Hash for TableFlags
Source§impl IntoIterator for TableFlags
impl IntoIterator for TableFlags
Source§impl LowerHex for TableFlags
impl LowerHex for TableFlags
Source§impl Not for TableFlags
impl Not for TableFlags
Source§impl Octal for TableFlags
impl Octal for TableFlags
Source§impl PartialEq for TableFlags
impl PartialEq for TableFlags
Source§impl PublicFlags for TableFlags
impl PublicFlags for TableFlags
Source§impl Sub for TableFlags
impl Sub for TableFlags
Source§fn sub(self, other: Self) -> Self
fn sub(self, other: Self) -> Self
The intersection of a source flags value with the complement of a target flags value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
Source§type Output = TableFlags
type Output = TableFlags
- operator.Source§impl SubAssign for TableFlags
impl SubAssign for TableFlags
Source§fn sub_assign(&mut self, other: Self)
fn sub_assign(&mut self, other: Self)
The intersection of a source flags value with the complement of a target flags value (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.