2009-11-25 09:22:48 +00:00
|
|
|
#ifndef GUI_H
|
|
|
|
#define GUI_H
|
|
|
|
|
|
|
|
#include <gtkmm.h>
|
2009-11-26 07:47:47 +00:00
|
|
|
#include "matrix.h"
|
2009-11-25 09:22:48 +00:00
|
|
|
|
2009-11-26 08:34:17 +00:00
|
|
|
extern Glib::RefPtr<Gtk::Builder> g_builder;
|
|
|
|
|
2009-11-25 09:22:48 +00:00
|
|
|
class Gui : public Gtk::Window
|
|
|
|
{
|
|
|
|
private:
|
2009-11-26 17:19:03 +00:00
|
|
|
Gtk::Notebook m_notebook;
|
|
|
|
Gtk::ScrolledWindow m_scrolledwindow_audio;
|
|
|
|
Gtk::ScrolledWindow m_scrolledwindow_midi;
|
|
|
|
|
|
|
|
Gtk::VBox *m_vbox;
|
|
|
|
Matrix *m_matrix_audio;
|
|
|
|
Matrix *m_matrix_midi;
|
|
|
|
|
|
|
|
bool m_closing;
|
2009-11-25 09:22:48 +00:00
|
|
|
|
|
|
|
public:
|
2009-11-26 08:34:17 +00:00
|
|
|
Gui(BaseObjectType *cobject, const Glib::RefPtr<Gtk::Builder> &builder);
|
|
|
|
|
|
|
|
static Gui *Open();
|
2009-11-25 09:22:48 +00:00
|
|
|
virtual ~Gui();
|
|
|
|
|
2009-11-26 17:19:03 +00:00
|
|
|
void SetPortTypeSeparation();
|
2009-11-25 09:22:48 +00:00
|
|
|
void Refresh();
|
|
|
|
|
|
|
|
protected:
|
2009-12-20 23:33:26 +00:00
|
|
|
bool on_timeout();
|
2010-03-26 14:21:42 +00:00
|
|
|
bool on_timeout_2();
|
2009-11-26 17:19:03 +00:00
|
|
|
void on_notebook_switch_page(GtkNotebookPage * /* page */, guint /* page_num */);
|
2009-11-26 23:38:32 +00:00
|
|
|
|
|
|
|
void on_quit();
|
|
|
|
void on_session_open();
|
|
|
|
void on_session_save();
|
|
|
|
void on_session_save_as();
|
|
|
|
void on_session_close();
|
|
|
|
void on_preferences();
|
|
|
|
void on_connect();
|
|
|
|
void on_disconnect();
|
|
|
|
void on_about();
|
2009-11-25 09:22:48 +00:00
|
|
|
};
|
|
|
|
|
2009-11-26 17:19:03 +00:00
|
|
|
extern Gui *g;
|
|
|
|
|
2009-11-25 09:22:48 +00:00
|
|
|
#endif // GUI_H
|