#include #include #include #include "jack.h" #include "portmanager.h" #include "gui.h" #include "config.h" Glib::RefPtr g_builder; Gui::Gui(BaseObjectType *cobject, const Glib::RefPtr &builder) : Gtk::Window(cobject), m_scrolledwindow(NULL) { builder->get_widget("scrolledwindow1", m_scrolledwindow); if (m_scrolledwindow != NULL) { m_scrolledwindow->add(m_matrix); } m_matrix.parent = this; Refresh(); Glib::signal_idle().connect(sigc::mem_fun(*this, &Gui::on_idle)); } Gui::~Gui() { } Gui *Gui::Open() { if (g_builder == NULL) { g_builder = Gtk::Builder::create_from_file("jsweeper.ui"); } Gui *window = NULL; g_builder->get_widget_derived("window1", window); return window; } void Gui::Refresh() { m_matrix.Refresh(); } bool Gui::on_idle() { if (jack.ProcessEvents()) { Refresh(); queue_draw(); } usleep(1000); return true; }