diff options
| -rw-r--r-- | FL/Fl_Sys_Menu_Bar.H | 11 | ||||
| -rw-r--r-- | src/Fl_Sys_Menu_Bar.mm | 7 |
2 files changed, 12 insertions, 6 deletions
diff --git a/FL/Fl_Sys_Menu_Bar.H b/FL/Fl_Sys_Menu_Bar.H index e1dd7bb52..cf01c55b7 100644 --- a/FL/Fl_Sys_Menu_Bar.H +++ b/FL/Fl_Sys_Menu_Bar.H @@ -48,14 +48,13 @@ public: int insert(int index, const char* label, int shortcut, Fl_Callback *cb, void *user_data=0, int flags=0); void remove(int n); void replace(int rank, const char *name); +#ifdef __APPLE__ + void update(); +#else + void update() {} +#endif void clear(); int clear_submenu(int index); -#if ! defined(FL_DOXYGEN) - enum menuOrItemOperation { itemAtIndex, setKeyEquivalent, setKeyEquivalentModifierMask, setState, initWithTitle, - numberOfItems, setSubmenu, setEnabled, addSeparatorItem, setTitle, removeItem, addNewItem }; - // function doMenuOrItemOperation is in file Fl_cocoa.mm because it contains objective-c code - static void *doMenuOrItemOperation( menuOrItemOperation operation, ...); -#endif }; #else diff --git a/src/Fl_Sys_Menu_Bar.mm b/src/Fl_Sys_Menu_Bar.mm index 30dfe5feb..695562911 100644 --- a/src/Fl_Sys_Menu_Bar.mm +++ b/src/Fl_Sys_Menu_Bar.mm @@ -415,6 +415,13 @@ void Fl_Sys_Menu_Bar::replace(int rank, const char *name) convertToMenuBar(Fl_Menu_::menu()); } +/** Updates the system menu. + Useful after changes in the menu items, e.g., item activation/deactivation. + */ +void Fl_Sys_Menu_Bar::update() +{ + convertToMenuBar(Fl_Menu_::menu()); +} /* * Draw the menu bar. |
