Skip to main content

List

Struct List 

Source
pub struct List {
    pub states: ListStates,
    /* private fields */
}
Expand description

List represents a read-only textual list component which can be scrollable through arrows or inactive.

Fields§

§states: ListStates

Implementations§

Source§

impl List

Source

pub fn foreground(self, fg: Color) -> Self

Set the main foreground color. This may get overwritten by individual text styles.

Source

pub fn background(self, bg: Color) -> Self

Set the main background color. This may get overwritten by individual text styles.

Source

pub fn modifiers(self, m: TextModifiers) -> Self

Set the main text modifiers. This may get overwritten by individual text styles.

Source

pub fn style(self, style: Style) -> Self

Set the main style. This may get overwritten by individual text styles.

This option will overwrite any previous foreground, background and modifiers!

Source

pub fn inactive(self, s: Style) -> Self

Set a custom style for the border when the component is unfocused.

Source

pub fn borders(self, b: Borders) -> Self

Add a border to the component.

Source

pub fn title<T: Into<Title>>(self, title: T) -> Self

Add a title to the component.

Source

pub fn rewind(self, r: bool) -> Self

Set whether wraparound should be possible (down on the last choice wraps around to 0, and the other way around).

Source

pub fn step(self, step: usize) -> Self

Set the scroll stepping to use on Cmd::Scroll(Direction::Up) or Cmd::Scroll(Direction::Down).

Source

pub fn scroll(self, scrollable: bool) -> Self

Should the list be scrollable or always show only the top (0th) element?

Source

pub fn highlight_str<S: Into<LineStatic>>(self, s: S) -> Self

Set the Symbol and Style for the indicator of the current line.

Source

pub fn highlight_style(self, s: Style) -> Self

Set a custom highlight style that is patched on-top of the normal style.

By default the highlight style is just Style::new().add_modifier(Modifier::REVERSED).

Source

pub fn highlight_style_inactive(self, s: Style) -> Self

Set a custom highlight style that is patched on-top of the highlight style when unfocused.

Source

pub fn rows<T>(self, rows: impl IntoIterator<Item = T>) -> Self
where T: Into<LineStatic>,

Set the rows of items the list should contain

Source

pub fn selected_line(self, line: usize) -> Self

Set the initially selected line.

Source

pub fn always_active(self) -> Self

Set the current component to be always active (show highligh even if unfocused)

Trait Implementations§

Source§

impl Component for List

Source§

fn view(&mut self, render: &mut Frame<'_>, area: Rect)

Based on the current properties and states, renders the component in the provided area frame. Render can also mutate the component state if this is required
Source§

fn query<'a>(&'a self, attr: Attribute) -> Option<QueryResult<'a>>

Query attribute of component properties. Read more
Source§

fn attr(&mut self, attr: Attribute, value: AttrValue)

Set attribute to properties. query describes the name, while attr the value it’ll take
Source§

fn state(&self) -> State

Get current state from component
Source§

fn perform(&mut self, cmd: Cmd) -> CmdResult

Perform a command on the component. The command will may change the component state. The method returns the result of the command applied (what changed if any)
Source§

impl Default for List

Source§

fn default() -> List

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

Auto Trait Implementations§

§

impl Freeze for List

§

impl !RefUnwindSafe for List

§

impl Send for List

§

impl Sync for List

§

impl Unpin for List

§

impl UnsafeUnpin for List

§

impl !UnwindSafe for List

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> 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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.