File tree Expand file tree Collapse file tree 1 file changed +46
-0
lines changed
Expand file tree Collapse file tree 1 file changed +46
-0
lines changed Original file line number Diff line number Diff line change @@ -42,6 +42,52 @@ impl dyn IsMenuItem + '_ {
4242 }
4343}
4444
45+ /// Internal utilities
46+ impl MenuChild {
47+ #[ cfg( not( target_os = "linux" ) ) ]
48+ fn kind ( & self , c : Rc < RefCell < MenuChild > > ) -> MenuItemKind {
49+ use crate :: { items:: * , MenuItemType } ;
50+
51+ match self . item_type ( ) {
52+ MenuItemType :: Submenu => {
53+ let id = c. borrow ( ) . id ( ) . clone ( ) ;
54+ MenuItemKind :: Submenu ( Submenu {
55+ id : Rc :: new ( id) ,
56+ inner : c,
57+ } )
58+ }
59+ MenuItemType :: MenuItem => {
60+ let id = c. borrow ( ) . id ( ) . clone ( ) ;
61+ MenuItemKind :: MenuItem ( MenuItem {
62+ id : Rc :: new ( id) ,
63+ inner : c,
64+ } )
65+ }
66+ MenuItemType :: Predefined => {
67+ let id = c. borrow ( ) . id ( ) . clone ( ) ;
68+ MenuItemKind :: Predefined ( PredefinedMenuItem {
69+ id : Rc :: new ( id) ,
70+ inner : c,
71+ } )
72+ }
73+ MenuItemType :: Check => {
74+ let id = c. borrow ( ) . id ( ) . clone ( ) ;
75+ MenuItemKind :: Check ( CheckMenuItem {
76+ id : Rc :: new ( id) ,
77+ inner : c,
78+ } )
79+ }
80+ MenuItemType :: Icon => {
81+ let id = c. borrow ( ) . id ( ) . clone ( ) ;
82+ MenuItemKind :: Icon ( IconMenuItem {
83+ id : Rc :: new ( id) ,
84+ inner : c,
85+ } )
86+ }
87+ }
88+ }
89+ }
90+
4591#[ allow( unused) ]
4692impl MenuItemKind {
4793 pub ( crate ) fn as_ref ( & self ) -> & dyn IsMenuItem {
You can’t perform that action at this time.
0 commit comments