pub struct MenuBar {
pub items: Vec<MenuItem>,
}Expand description
A top-level menu bar containing MenuItems.
The menu bar is a data model only; rendering it into an OS-native menu is
handled by the platform renderer (cvkg-render-native).
Fields§
§items: Vec<MenuItem>Ordered list of top-level menu items.
Implementations§
Source§impl MenuBar
impl MenuBar
Sourcepub fn standard(
new_fn: Arc<dyn Fn() + Send + Sync>,
open_fn: Arc<dyn Fn() + Send + Sync>,
save_fn: Arc<dyn Fn() + Send + Sync>,
close_fn: Arc<dyn Fn() + Send + Sync>,
quit_fn: Arc<dyn Fn() + Send + Sync>,
undo_fn: Arc<dyn Fn() + Send + Sync>,
redo_fn: Arc<dyn Fn() + Send + Sync>,
cut_fn: Arc<dyn Fn() + Send + Sync>,
copy_fn: Arc<dyn Fn() + Send + Sync>,
paste_fn: Arc<dyn Fn() + Send + Sync>,
select_all_fn: Arc<dyn Fn() + Send + Sync>,
find_fn: Arc<dyn Fn() + Send + Sync>,
) -> Self
pub fn standard( new_fn: Arc<dyn Fn() + Send + Sync>, open_fn: Arc<dyn Fn() + Send + Sync>, save_fn: Arc<dyn Fn() + Send + Sync>, close_fn: Arc<dyn Fn() + Send + Sync>, quit_fn: Arc<dyn Fn() + Send + Sync>, undo_fn: Arc<dyn Fn() + Send + Sync>, redo_fn: Arc<dyn Fn() + Send + Sync>, cut_fn: Arc<dyn Fn() + Send + Sync>, copy_fn: Arc<dyn Fn() + Send + Sync>, paste_fn: Arc<dyn Fn() + Send + Sync>, select_all_fn: Arc<dyn Fn() + Send + Sync>, find_fn: Arc<dyn Fn() + Send + Sync>, ) -> Self
Build the standard CVKG menu structure with all conventional shortcuts.
The cmd modifier maps to ⌘ on macOS and Ctrl on Windows/Linux — this
translation is enforced by the renderer, not here.
Menus included:
- File: New, Open, Save, Close
- Edit: Undo, Redo, Cut, Copy, Paste, Select All, Find
- View: Zoom In, Zoom Out, Fullscreen
- Window: Minimize, Zoom, Bring All to Front
- Help: Search Help
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for MenuBar
impl !UnwindSafe for MenuBar
impl Freeze for MenuBar
impl Send for MenuBar
impl Sync for MenuBar
impl Unpin for MenuBar
impl UnsafeUnpin 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
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.