improv(menu): simplify menu construction.
- Added `MenuAction` trait to call the `message` method on button press. - Added two new methods to construct a MenuTree. - Added MenuItem enum to represent an action or a separator in a MenuTree. - Added menu example. - Moved Modifier enum and KeyBind struct to libcosmic. - Moved menu_button macro to libcosmic.
This commit is contained in:
parent
9e6d94c7eb
commit
0b47efe1de
6 changed files with 346 additions and 0 deletions
7
src/widget/menu/action.rs
Normal file
7
src/widget/menu/action.rs
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
use crate::widget::segmented_button::Entity;
|
||||
|
||||
pub trait MenuAction: Clone + Copy + Eq + PartialEq {
|
||||
type Message;
|
||||
|
||||
fn message(&self, entity: Option<Entity>) -> Self::Message;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue