#include "menu.h" #include Menu::Menu() { action_group = Gtk::ActionGroup::create(); ui_manager = Gtk::UIManager::create(); ui_manager->insert_action_group(action_group); action_group->add(Gtk::Action::create("FileMenu", "File")); action_group->add(Gtk::Action::create("EditMenu", "Edit")); action_group->add(Gtk::Action::create("WindowMenu", "_Window")); action_group->add(Gtk::Action::create("ProjectMenu", "P_roject")); action_group->add(Gtk::Action::create("SourceMenu", "_Source")); action_group->add(Gtk::Action::create("PluginMenu", "_Plugins")); action_group->add(Gtk::Action::create("HelpMenu", "Help")); ui_xml = "\n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" "\n"; } Gtk::Widget& Menu::get_widget() { return *ui_manager->get_widget("/MenuBar"); } void Menu::build() { try { ui_manager->add_ui_from_string(ui_xml); } catch (const Glib::Error &ex) { std::cerr << "building menu failed" << ex.what(); } }