pub enum Item {
Action {
label: SharedString,
keystroke: Option<SharedString>,
enabled: bool,
},
Separator,
}Expand description
A row in a menu.
Deliberately not a struct with an is_separator flag: a separator has no
label, no accelerator and nothing to enable, and every one of those fields
would have to be answered anyway.
Variants§
Action
Fields
§
label: SharedString§
keystroke: Option<SharedString>The accelerator to print — the binding itself is the app’s, and bezel never dispatches it. A menu that showed a keystroke it did not own would be documenting a lie.
Separator
Implementations§
Source§impl Item
impl Item
pub fn action(label: impl Into<SharedString>) -> Self
Sourcepub fn with_keystroke(self, keystroke: impl Into<SharedString>) -> Self
pub fn with_keystroke(self, keystroke: impl Into<SharedString>) -> Self
No-ops on a separator, which has nothing to hang a keystroke on.
pub fn disabled(self) -> Self
Sourcepub fn selectable(&self) -> bool
pub fn selectable(&self) -> bool
Whether the keyboard and the pointer can land here at all.
Trait Implementations§
impl Eq for Item
impl StructuralPartialEq for Item
Auto Trait Implementations§
impl Freeze for Item
impl RefUnwindSafe for Item
impl Send for Item
impl Sync for Item
impl Unpin for Item
impl UnsafeUnpin for Item
impl UnwindSafe for Item
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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