pub struct StatusSelectState { /* private fields */ }Expand description
The options of a status item and the chosen one.
Owned by the view that shows the item, which observes it so a change renders. The choice is kept by option id.
Implementations§
Source§impl StatusSelectState
impl StatusSelectState
Sourcepub fn new(
options: impl IntoIterator<Item = StatusOption>,
_: &mut Context<'_, Self>,
) -> Self
pub fn new( options: impl IntoIterator<Item = StatusOption>, _: &mut Context<'_, Self>, ) -> Self
A state over options with the first chosen.
Sourcepub fn with_selected(self, id: impl Into<SharedString>) -> Self
pub fn with_selected(self, id: impl Into<SharedString>) -> Self
Chooses the option with id, if there is one.
Sourcepub fn options(&self) -> &[StatusOption]
pub fn options(&self) -> &[StatusOption]
The options, in order.
Sourcepub fn selected(&self) -> &SharedString
pub fn selected(&self) -> &SharedString
The id of the chosen option.
Sourcepub fn selected_label(&self) -> Option<&SharedString>
pub fn selected_label(&self) -> Option<&SharedString>
The label of the chosen option.
Sourcepub fn set_options(
&mut self,
options: impl IntoIterator<Item = StatusOption>,
cx: &mut Context<'_, Self>,
)
pub fn set_options( &mut self, options: impl IntoIterator<Item = StatusOption>, cx: &mut Context<'_, Self>, )
Replaces the options. The choice stays when its id is still there,
and reports nothing. When it is gone the first option is chosen and
Changed is emitted. The menu follows the new options. Whether the
list has a search field is decided when the item is first shown.
Sourcepub fn select(
&mut self,
id: impl Into<SharedString>,
cx: &mut Context<'_, Self>,
)
pub fn select( &mut self, id: impl Into<SharedString>, cx: &mut Context<'_, Self>, )
Chooses the option with id and emits Changed. An unknown id, or
the one already chosen, changes nothing.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for StatusSelectState
impl RefUnwindSafe for StatusSelectState
impl Send for StatusSelectState
impl Sync for StatusSelectState
impl Unpin for StatusSelectState
impl UnsafeUnpin for StatusSelectState
impl UnwindSafe for StatusSelectState
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
Mutably borrows from an owned value. Read more
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>
Convert
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>
Convert
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)
Convert
&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)
Convert
&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> DowncastSync for T
impl<T> DowncastSync for T
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> ⓘ
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 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> ⓘ
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