mirror of
https://github.com/italicsjenga/muda.git
synced 2024-12-24 04:11:30 +11:00
35 lines
854 B
Markdown
35 lines
854 B
Markdown
# muda
|
|
|
|
Menu utilities for Desktop Applications.
|
|
|
|
## Example
|
|
|
|
Create the root menu and add submenus and men items.
|
|
```rs
|
|
let mut menu = Menu::new();
|
|
|
|
let file_menu = menu.add_submenu("File", true);
|
|
let open_item = file_menu.add_text_item("Open", true);
|
|
let save_item = file_menu.add_text_item("Save", true);
|
|
|
|
let edit_menu = menu.add_submenu("Edit", true);
|
|
let copy_item = file_menu.add_text_item("Copy", true);
|
|
let cut_item = file_menu.add_text_item("Cut", true);
|
|
|
|
#[cfg(target_os = "windows")]
|
|
menu.init_for_hwnd(window.hwnd() as isize);
|
|
#[cfg(target_os = "linux")]
|
|
menu.init_for_gtk_window(>k_window);
|
|
```
|
|
Then listen for the events
|
|
```rs
|
|
if let Ok(event) = menu_event_receiver().try_recv() {
|
|
match event.id {
|
|
_ if event.id == save_item.id() => {
|
|
println!("Save menu item activated");
|
|
},
|
|
_ => {}
|
|
}
|
|
}
|
|
```
|