From ecfdea2940a9726987c7992873d78d8ec465ee88 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Mon, 16 Oct 2006 01:58:06 +0000 Subject: Minor flowcanvas visual touchups. Work at completing Ingen serialization (connections still aren't right). Patchage Jack command line configuration (via ~/.jackdrc) git-svn-id: http://svn.drobilla.net/lad/patchage@177 a436a847-0d15-0410-975c-d299462d15a1 --- src/Patchage.cpp | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'src/Patchage.cpp') diff --git a/src/Patchage.cpp b/src/Patchage.cpp index cff1f07..09c115b 100644 --- a/src/Patchage.cpp +++ b/src/Patchage.cpp @@ -24,6 +24,7 @@ #include "PatchageFlowCanvas.h" #include "AlsaDriver.h" #include "JackDriver.h" +#include "JackSettingsDialog.h" #ifdef HAVE_LASH #include "LashDriver.h" #endif @@ -87,7 +88,9 @@ Patchage::Patchage(int argc, char** argv) } xml->get_widget("patchage_win", m_main_window); + xml->get_widget_derived("jack_settings_win", m_jack_settings_dialog); xml->get_widget("about_win", m_about_window); + xml->get_widget("jack_settings_menuitem", m_menu_jack_settings); xml->get_widget("launch_jack_menuitem", m_menu_jack_launch); xml->get_widget("connect_to_jack_menuitem", m_menu_jack_connect); xml->get_widget("disconnect_from_jack_menuitem", m_menu_jack_disconnect); @@ -118,8 +121,14 @@ Patchage::Patchage(int argc, char** argv) static_cast(m_canvas->height()/2 - 240)); // FIXME: hardcoded m_zoom_slider->signal_value_changed().connect(sigc::mem_fun(this, &Patchage::zoom_changed)); + m_zoom_normal_button->signal_clicked().connect(sigc::bind( sigc::mem_fun(this, &Patchage::zoom), 1.0)); + + m_zoom_full_button->signal_clicked().connect(sigc::mem_fun(m_canvas.get(), &PatchageFlowCanvas::zoom_full)); + + m_menu_jack_settings->signal_activate().connect( + sigc::hide_return(sigc::mem_fun(m_jack_settings_dialog, &JackSettingsDialog::run))); m_menu_jack_launch->signal_activate().connect(sigc::bind( sigc::mem_fun(m_jack_driver, &JackDriver::attach), true)); @@ -220,15 +229,20 @@ Patchage::idle_callback() void Patchage::zoom(double z) { - m_canvas->set_zoom(z); m_state_manager->set_zoom(z); + m_canvas->set_zoom(z); } void Patchage::zoom_changed() { - zoom(m_zoom_slider->get_value()); + static bool enable_signal = true; + if (enable_signal) { + enable_signal = false; + zoom(m_zoom_slider->get_value()); + enable_signal = true; + } } -- cgit v1.2.1