Fl_Menu_Bar: document how to programmatically open menu from menubar

This commit is contained in:
ManoloFLTK 2024-05-13 12:46:47 +02:00
parent 6c06e953e1
commit 4eb98c0af4

View File

@ -61,6 +61,17 @@
Typing the shortcut() of any of the menu items will cause Typing the shortcut() of any of the menu items will cause
callbacks exactly the same as when you pick the item with the mouse. callbacks exactly the same as when you pick the item with the mouse.
This code can be used to programmatically open a menu ("Edit" in the example) of a menubar :
\code
Fl_Menu_Bar *bar = ;
const Fl_Menu_Item *v = bar->find_item("Edit");
if (v) {
v = bar->menu()->pulldown(bar->x(), bar->y(), bar->w(), bar->h(), v, bar, 0, 1);
bar->picked(v);
}
\endcode
This code currently should be avoided with an Fl_Sys_Menu_Bar object on the macOS platform.
*/ */
class FL_EXPORT Fl_Menu_Bar : public Fl_Menu_ { class FL_EXPORT Fl_Menu_Bar : public Fl_Menu_ {
friend class Fl_Sys_Menu_Bar_Driver; friend class Fl_Sys_Menu_Bar_Driver;
@ -91,6 +102,7 @@ public:
This is useful when the menu bar can be an Fl_Sys_Menu_Bar object. This is useful when the menu bar can be an Fl_Sys_Menu_Bar object.
*/ */
virtual void update() {} virtual void update() {}
virtual void play_menu(const char *menu_name);
}; };
#endif #endif