pub struct SortModal {
pub filter_input: TextInput,
pub columns: Vec<SortColumn>,
pub table_state: TableState,
pub has_unapplied_changes: bool,
pub history_limit: usize,
pub status: Option<String>,
pub applied_order: Vec<String>,
pub applied_locked: usize,
pub page_rows: usize,
/* private fields */
}Fields§
§filter_input: TextInput§columns: Vec<SortColumn>§table_state: TableState§has_unapplied_changes: bool§history_limit: usize§status: Option<String>Why the last key did nothing, for the sidebar’s status line; the next key clears it.
applied_order: Vec<String>The column order last applied, hidden columns included. The table keeps only the visible order, so this is where a hidden column is listed, and returns to, when the sidebar reopens.
applied_locked: usizeHow many leading columns of applied_order were frozen, hidden ones included:
the table’s count leaves out a hidden column that ended the span.
page_rows: usizeRows the Columns list showed when last drawn: what PgUp and PgDn move.
Implementations§
Source§impl SortModal
impl SortModal
Sourcepub fn filtered_columns(&self) -> Vec<(usize, &SortColumn)>
pub fn filtered_columns(&self) -> Vec<(usize, &SortColumn)>
The columns the find text matches, in display order. Asked several times a key, so recomputed only when a fingerprint of the find text, names and order changes.
pub fn get_column_order(&self) -> Vec<String>
Sourcepub fn get_locked_columns_count(&self) -> usize
pub fn get_locked_columns_count(&self) -> usize
How many visible columns the table freezes: those at or before the last locked column in the order. A hidden column inside that span keeps its place but is not counted, since the table never draws it.
Sourcepub fn get_locked_span(&self) -> usize
pub fn get_locked_span(&self) -> usize
How many leading columns of the full order are frozen, hidden ones included.
Sourcepub fn get_full_column_order(&self) -> Vec<String>
pub fn get_full_column_order(&self) -> Vec<String>
Every column of the order: all columns, hidden included, sorted by place.
pub fn get_sorted_columns(&self) -> Vec<String>
Sourcepub fn sorted_columns_and_directions(&self) -> (Vec<String>, Vec<bool>)
pub fn sorted_columns_and_directions(&self) -> (Vec<String>, Vec<bool>)
The staged sort: column names in sort order, and per column whether it runs descending.
Sourcepub fn cycle_sort(&mut self)
pub fn cycle_sort(&mut self)
Space on a column: none → ascending → descending → none. Joining the sort appends the column at the end; leaving it renumbers the rest.
Sourcepub fn cycle_sort_back(&mut self)
pub fn cycle_sort_back(&mut self)
← on a column: the cycle of Space backwards, none → descending → ascending → none.
Sourcepub fn sort_entries(&self) -> Vec<usize>
pub fn sort_entries(&self) -> Vec<usize>
The sort, as indices into columns, first key first.
Sourcepub fn remove_sort_entry(&mut self, entry: usize)
pub fn remove_sort_entry(&mut self, entry: usize)
Drop the sort’s entryth key; the keys after it move up.
Sourcepub fn move_sort_entry(&mut self, entry: usize, earlier: bool) -> usize
pub fn move_sort_entry(&mut self, entry: usize, earlier: bool) -> usize
Move the sort’s entryth key one place earlier or later. Returns where it is
now.
Sourcepub fn add_sort(&mut self, name: &str) -> Option<usize>
pub fn add_sort(&mut self, name: &str) -> Option<usize>
Add the column named name as the sort’s last key, ascending. Returns its
place in the sort; None when no column has that name. A column already
sorted keeps its place.
Sourcepub fn remove_sort(&mut self)
pub fn remove_sort(&mut self)
Del on a column: drop it from the sort outright, wherever in the cycle it stands, and renumber the columns after it.
pub fn move_column_display_up(&mut self)
pub fn move_column_display_down(&mut self)
pub fn toggle_lock_at_column(&mut self)
pub fn move_selection_up(&mut self)
pub fn move_selection_down(&mut self)
pub fn clear_selection(&mut self)
Sourcepub fn change_width(
&mut self,
change: impl FnOnce(WidthChoice, Option<u16>) -> WidthChoice,
)
pub fn change_width( &mut self, change: impl FnOnce(WidthChoice, Option<u16>) -> WidthChoice, )
Change how the width of the column under the cursor is chosen, from what is
staged: < and > step it, f fits it to the rows on screen, w returns
it to automatic.
Sourcepub fn width_choices(&self) -> Vec<(String, WidthChoice)>
pub fn width_choices(&self) -> Vec<(String, WidthChoice)>
Every column’s width choice, as staged, for the table to apply.
Sourcepub fn toggle_visibility(&mut self)
pub fn toggle_visibility(&mut self)
Hide or show the column under the cursor. Visibility only: the column keeps its place in the order and its lock, so showing it puts it back where it was.
pub fn jump_selection_to_order(&mut self, new_order: usize)
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for SortModal
impl !RefUnwindSafe for SortModal
impl !Sync for SortModal
impl Send for SortModal
impl Unpin for SortModal
impl UnsafeUnpin for SortModal
impl UnwindSafe for SortModal
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read more