Skip to main content

SettingsModal

Struct SettingsModal 

Source
pub struct SettingsModal {
    pub selected: usize,
    pub detail_selected: usize,
    pub prompt: Option<SettingsPrompt>,
    pub section: ConfigSection,
    pub level: ConfigLevel,
}
Expand description

The Config mode’s cursor state: the active section, the drill-down level, the index cursor (one row per record in the section), the dashboard detail cursor, and an optional inline prompt.

Fields§

§selected: usize

Row cursor within the active section’s index (one row per board, cycle, milestone, type, or attribute).

§detail_selected: usize

Row cursor within a dashboard’s detail (a board’s columns, then the display toggles, then the general rows).

§prompt: Option<SettingsPrompt>

Active inline prompt (None = browsing).

§section: ConfigSection

The active section.

§level: ConfigLevel

Which level of the drill-down holds the focus.

Implementations§

Source§

impl SettingsModal

Source

pub fn new() -> Self

Source

pub fn focus(&mut self, level: ConfigLevel)

Focus level (an h/l step, or a click on that level).

Source

pub fn move_level(&mut self, delta: isize)

Move the level focus delta levels along the vertical axis, clamped at the ends (Sections at the top, Detail at the bottom) rather than wrapping.

Source

pub fn set_section(&mut self, section: ConfigSection)

Switch to section, putting the index and detail cursors back at the top when the section changes (the cursors are per-section state).

Source

pub fn move_selected(&mut self, delta: isize, total_rows: usize)

Move the index cursor (clamped to total_rows).

Source

pub fn move_detail(&mut self, delta: isize, total_rows: usize)

Move the detail cursor (clamped to total_rows).

Source

pub fn move_selected_to(&mut self, row: usize, total_rows: usize)

Jump the index cursor straight to row (a row click, D6), clamped to the same range the arrow keys navigate.

Source

pub fn move_detail_to(&mut self, row: usize, total_rows: usize)

Jump the detail cursor straight to row (a row click, D6), clamped to the same range the arrow keys navigate.

Source

pub fn render_body( &self, f: &mut Frame<'_>, rect: Rect, view: DashboardView<'_>, bindings: &EffectiveBindings, focused: bool, )

Render the board rows of the dashboards detail: the column checkboxes, the display toggles, the general rows, and the active prompt. Shared by the Config mode’s dashboards detail and the widget’s own tests.

focused is whether the detail owns the Config mode’s focus; the focused detail’s border is accented and an unfocused one dimmed.

Trait Implementations§

Source§

impl Clone for SettingsModal

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for SettingsModal

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for SettingsModal

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts 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 more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.