summaryrefslogtreecommitdiffstats
path: root/src/Patchage.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-01-14 04:22:16 +0000
committerDavid Robillard <d@drobilla.net>2007-01-14 04:22:16 +0000
commitf9a66347152ad4459a564d5f92fdeabb6d8b4019 (patch)
tree8ab4ed5436a83bbad634773d5b3b96428f77d85e /src/Patchage.cpp
parent8e946da143030272b1bb325aba1ea52e67792254 (diff)
downloadpatchage-f9a66347152ad4459a564d5f92fdeabb6d8b4019.tar.gz
patchage-f9a66347152ad4459a564d5f92fdeabb6d8b4019.tar.bz2
patchage-f9a66347152ad4459a564d5f92fdeabb6d8b4019.zip
Follow Jack port creation/destruction.
git-svn-id: http://svn.drobilla.net/lad/patchage@257 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/Patchage.cpp')
-rw-r--r--src/Patchage.cpp30
1 files changed, 29 insertions, 1 deletions
diff --git a/src/Patchage.cpp b/src/Patchage.cpp
index 357f334..4cf16d5 100644
--- a/src/Patchage.cpp
+++ b/src/Patchage.cpp
@@ -16,6 +16,7 @@
#include <cmath>
#include "Patchage.h"
+#include "PatchageEvent.h"
#include "config.h"
#include <libgnomecanvasmm.h>
#include <libglademm/xml.h>
@@ -135,6 +136,9 @@ Patchage::Patchage(int argc, char** argv)
xml->get_widget("connect_to_jack_menuitem", m_menu_jack_connect);
xml->get_widget("disconnect_from_jack_menuitem", m_menu_jack_disconnect);
#ifdef HAVE_LASH
+ xml->get_widget("open_session_menuitem", m_menu_open_session);
+ xml->get_widget("save_session_menuitem", m_menu_save_session);
+ xml->get_widget("save_session_as_menuitem", m_menu_save_session_as);
xml->get_widget("launch_lash_menuitem", m_menu_lash_launch);
xml->get_widget("connect_to_lash_menuitem", m_menu_lash_connect);
xml->get_widget("disconnect_from_lash_menuitem", m_menu_lash_disconnect);
@@ -207,6 +211,9 @@ Patchage::Patchage(int argc, char** argv)
m_menu_jack_disconnect->signal_activate().connect(sigc::mem_fun(m_jack_driver, &JackDriver::detach));
#ifdef HAVE_LASH
+ m_menu_open_session->signal_activate().connect( sigc::mem_fun(this, &Patchage::menu_open_session));
+ m_menu_save_session->signal_activate().connect( sigc::mem_fun(this, &Patchage::menu_save_session));
+ m_menu_save_session_as->signal_activate().connect(sigc::mem_fun(this, &Patchage::menu_save_session_as));
m_menu_lash_launch->signal_activate().connect( sigc::mem_fun(this, &Patchage::menu_lash_launch));
m_menu_lash_connect->signal_activate().connect( sigc::mem_fun(this, &Patchage::menu_lash_connect));
m_menu_lash_disconnect->signal_activate().connect(sigc::mem_fun(this, &Patchage::menu_lash_disconnect));
@@ -215,7 +222,7 @@ Patchage::Patchage(int argc, char** argv)
m_menu_alsa_connect->signal_activate().connect( sigc::mem_fun(this, &Patchage::menu_alsa_connect));
m_menu_alsa_disconnect->signal_activate().connect(sigc::mem_fun(this, &Patchage::menu_alsa_disconnect));
#endif
- m_menu_store_positions->signal_activate().connect( sigc::mem_fun(this, &Patchage::menu_store_positions));
+ m_menu_store_positions->signal_activate().connect(sigc::mem_fun(this, &Patchage::menu_store_positions));
m_menu_file_quit->signal_activate().connect( sigc::mem_fun(this, &Patchage::menu_file_quit));
m_menu_view_refresh->signal_activate().connect( sigc::mem_fun(this, &Patchage::menu_view_refresh));
m_menu_view_messages->signal_toggled().connect( sigc::mem_fun(this, &Patchage::show_messages_toggled));
@@ -287,6 +294,11 @@ Patchage::attach()
bool
Patchage::idle_callback()
{
+ if (m_jack_driver)
+ while (m_jack_driver->events().fill() > 0)
+ m_jack_driver->events().pop().execute();
+
+
bool refresh = m_refresh;
refresh = refresh || (m_jack_driver && m_jack_driver->is_dirty());
@@ -295,6 +307,7 @@ Patchage::idle_callback()
#endif
if (refresh) {
+
m_canvas->flag_all_connections();
m_jack_driver->refresh();
@@ -501,6 +514,21 @@ Patchage::connect_widgets()
#ifdef HAVE_LASH
void
+Patchage::menu_open_session()
+{
+}
+
+void
+Patchage::menu_save_session()
+{
+}
+
+void
+Patchage::menu_save_session_as()
+{
+}
+
+void
Patchage::menu_lash_launch()
{
m_lash_driver->attach(true);