pub struct MenuBar {
pub menus: Vec<BarMenu>,
}Expand description
The application menu: what a frame declares, in order
(Core::declare_menu_bar).
Declared and not commanded, like the window title: a frame that declares
none leaves the last one in force, and a frame that declares an empty
bar takes it away. Where the platform owns a menu bar the driver hands
this over (macOS: NSApp.mainMenu); everywhere else
crate::widgets::menu_bar draws it, and each of its titles opens the
ordinary Menu machinery — so the dropdown, its keyboard, its
dismissal and its access tree are the ones already built for the context
menu.
Fields§
Implementations§
Source§impl MenuBar
impl MenuBar
pub fn new(menus: Vec<BarMenu>) -> MenuBar
Sourcepub fn from_value(v: &Value) -> Result<MenuBar, String>
pub fn from_value(v: &Value) -> Result<MenuBar, String>
A bar from plain data: a list of { label, items, enabled? },
whose items are the rows openMenu takes. A menu with no items
is a shape error and not an empty menu: the two read the same on
screen and only one of them was meant.
Sourcepub fn stray_keys(v: &Value) -> Vec<String>
pub fn stray_keys(v: &Value) -> Vec<String>
MenuItem::stray_keys over every menu’s rows.
Trait Implementations§
impl StructuralPartialEq for MenuBar
Auto Trait Implementations§
impl Freeze for MenuBar
impl RefUnwindSafe for MenuBar
impl Send for MenuBar
impl Sync for MenuBar
impl Unpin for MenuBar
impl UnsafeUnpin for MenuBar
impl UnwindSafe for MenuBar
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
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>
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>
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)
&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)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.