pub enum MenuItem {
Command(SharedString),
Run {
title: SharedString,
icon: Option<IconName>,
command: SharedString,
args: Value,
checked: bool,
},
Provided(SharedString),
Separator,
Label(SharedString),
Submenu {
title: SharedString,
icon: Option<IconName>,
items: Vec<MenuItem>,
},
}Expand description
An entry of a menu.
Variants§
Command(SharedString)
A registered command, by id.
Run
A registered command run with arguments, under its own title: one entry per image, per recent file, per model. Greyed with the command’s reason when it cannot run.
Provided(SharedString)
The entries the provider id makes when the menu opens (Registry::provide).
Separator
A line between groups.
Label(SharedString)
A heading (not clickable).
A menu inside the menu.
Implementations§
Source§impl MenuItem
impl MenuItem
Sourcepub fn command(id: impl Into<SharedString>) -> Self
pub fn command(id: impl Into<SharedString>) -> Self
The command id.
A submenu title holding items.
A submenu title with icon, holding items.
Sourcepub fn run(
title: impl Into<SharedString>,
command: impl Into<SharedString>,
args: Value,
) -> Self
pub fn run( title: impl Into<SharedString>, command: impl Into<SharedString>, args: Value, ) -> Self
The command command run with args, titled title.
Sourcepub fn provided(id: impl Into<SharedString>) -> Self
pub fn provided(id: impl Into<SharedString>) -> Self
The entries of the provider id.
Sourcepub fn label(text: impl Into<SharedString>) -> Self
pub fn label(text: impl Into<SharedString>) -> Self
A heading.
Sourcepub fn icon(self, with: IconName) -> Self
pub fn icon(self, with: IconName) -> Self
Sets the icon of a MenuItem::Run or a submenu (other entries are unchanged).
Sourcepub fn checked(self, on: bool) -> Self
pub fn checked(self, on: bool) -> Self
Sets the check mark of a MenuItem::Run (other entries are unchanged).
Trait Implementations§
impl StructuralPartialEq for MenuItem
Auto Trait Implementations§
impl Forget for MenuItem
impl Freeze for MenuItem
impl Move for MenuItem
impl RefUnwindSafe for MenuItem
impl Send for MenuItem
impl Sync for MenuItem
impl Unpin for MenuItem
impl UnsafeUnpin for MenuItem
impl UnwindSafe for MenuItem
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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
impl<T> ErasedDestructor for Twhere
T: 'static,
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