aboutsummaryrefslogtreecommitdiffstats
path: root/src/gui/MachinaGUI.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-02-11 01:26:07 +0000
committerDavid Robillard <d@drobilla.net>2007-02-11 01:26:07 +0000
commitda3ac16cbfbf66edebe929f8d9bf7d76ab24dd74 (patch)
tree8371f2d2e46925df9337be9b578cfb74d671d285 /src/gui/MachinaGUI.cpp
parentcee33ba4c0859b117be94df6ccbf3eb756a850af (diff)
downloadmachina-da3ac16cbfbf66edebe929f8d9bf7d76ab24dd74.tar.gz
machina-da3ac16cbfbf66edebe929f8d9bf7d76ab24dd74.tar.bz2
machina-da3ac16cbfbf66edebe929f8d9bf7d76ab24dd74.zip
Moved Maid from Ingen to Raul.
Working machina MIDI learn, fixes, etc, etc. git-svn-id: http://svn.drobilla.net/lad/machina@302 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/gui/MachinaGUI.cpp')
-rw-r--r--src/gui/MachinaGUI.cpp38
1 files changed, 6 insertions, 32 deletions
diff --git a/src/gui/MachinaGUI.cpp b/src/gui/MachinaGUI.cpp
index 09a3649..f091e60 100644
--- a/src/gui/MachinaGUI.cpp
+++ b/src/gui/MachinaGUI.cpp
@@ -65,12 +65,13 @@ gtkmm_set_width_for_given_text (Gtk::Widget &w, const gchar *text,
-MachinaGUI::MachinaGUI(SharedPtr<Machina::Machine> m/*int argc, char** argv*/)
+MachinaGUI::MachinaGUI(SharedPtr<Machina::Machine> machine)
: _pane_closed(false),
_update_pane_position(true),
_user_pane_position(0),
_refresh(false),
- _machine(m)
+ _machine(machine),
+ _maid(new Raul::Maid(32))
{
/*_settings_filename = getenv("HOME");
_settings_filename += "/.machinarc";*/
@@ -154,8 +155,8 @@ MachinaGUI::MachinaGUI(SharedPtr<Machina::Machine> m/*int argc, char** argv*/)
_update_pane_position = true;
_pane_closed = true;
- // Idle callback, check if we need to refresh
- Glib::signal_timeout().connect(sigc::mem_fun(this, &MachinaGUI::idle_callback), 100);
+ // Idle callback to drive the maid (collect garbage)
+ Glib::signal_timeout().connect(sigc::mem_fun(this, &MachinaGUI::idle_callback), 1000);
// Faster idle callback to update DSP load progress bar
//Glib::signal_timeout().connect(sigc::mem_fun(this, &MachinaGUI::update_load), 50);
@@ -185,34 +186,7 @@ MachinaGUI::attach()
bool
MachinaGUI::idle_callback()
{
-#if 0
- if (_jack_driver) {
- while (!_jack_driver->events().empty()) {
- MachinaEvent& ev = _jack_driver->events().front();
- _jack_driver->events().pop();
- ev.execute();
- }
- }
-
-
- bool refresh = _refresh;
-
- refresh = refresh || (_jack_driver && _jack_driver->is_dirty());
-
- if (refresh) {
-
- _canvas->flag_all_connections();
-
- _jack_driver->refresh();
- }
-
- if (refresh) {
- _canvas->destroy_all_flagged_connections();
- _refresh = false;
- }
-
- update_load();
-#endif
+ _maid->cleanup();
return true;
}