2020-12-04 14:37:01 -08:00
|
|
|
#ifndef MENU_H
|
|
|
|
#define MENU_H
|
|
|
|
|
2020-11-30 15:43:52 -08:00
|
|
|
#include <signal.h>
|
|
|
|
#include <gtkmm/menubar.h>
|
|
|
|
#include <gtkmm/menu.h>
|
|
|
|
#include <gtkmm/menuitem.h>
|
|
|
|
#include <gtkmm/separatormenuitem.h>
|
|
|
|
|
|
|
|
/**
|
|
|
|
* \class Menu
|
|
|
|
* \brief The top main-menu
|
|
|
|
*/
|
2021-02-12 12:46:41 -08:00
|
|
|
class Menu : public Gtk::MenuBar
|
2020-11-30 15:43:52 -08:00
|
|
|
{
|
|
|
|
public:
|
2021-02-12 12:46:41 -08:00
|
|
|
sigc::signal<void> reload;
|
|
|
|
sigc::signal<void> source_code;
|
|
|
|
sigc::signal<void> quit;
|
|
|
|
sigc::signal<void> about;
|
2020-11-30 15:43:52 -08:00
|
|
|
|
2021-02-12 12:46:41 -08:00
|
|
|
Menu();
|
|
|
|
virtual ~Menu();
|
|
|
|
Gtk::Menu *GetMachineMenu();
|
2020-11-30 15:43:52 -08:00
|
|
|
|
|
|
|
protected:
|
2021-02-12 12:46:41 -08:00
|
|
|
// Child widgets
|
|
|
|
Gtk::MenuItem m_file;
|
|
|
|
Gtk::MenuItem m_view;
|
|
|
|
Gtk::MenuItem m_help;
|
|
|
|
Gtk::Menu m_file_submenu; /*!< File sub menu */
|
|
|
|
Gtk::Menu m_view_submenu; /*!< Help sub menu */
|
|
|
|
Gtk::Menu m_help_submenu; /*!< Help sub menu */
|
|
|
|
Gtk::SeparatorMenuItem m_separator1;
|
2020-11-30 15:43:52 -08:00
|
|
|
|
|
|
|
private:
|
2021-02-12 12:46:41 -08:00
|
|
|
Gtk::MenuItem *createMenuItem(const Glib::ustring &label_text);
|
2020-11-30 15:43:52 -08:00
|
|
|
};
|
2020-12-04 14:37:01 -08:00
|
|
|
#endif
|