summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-06-21 17:15:56 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-06-21 17:15:56 -0400
commit11becd4a6b3ac337221fa35ed922d50a4ff00dd5 (patch)
tree81687db42f2e2d51221db4b9b662d94d6a8f29aa /gtk2_ardour
parent1b73ab206580048eff74e4f3a2f0527142b54d7d (diff)
properly restore newer (cairo-canvas related) UI config parameters
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/ardour_ui.cc3
-rw-r--r--gtk2_ardour/ardour_ui_options.cc6
-rw-r--r--gtk2_ardour/theme_manager.cc1
-rw-r--r--gtk2_ardour/ui_config.cc9
-rw-r--r--gtk2_ardour/ui_config.h3
5 files changed, 18 insertions, 4 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index ad727d00d6..d97dc880c4 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -210,6 +210,9 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], const char* localedir)
}
ui_config = new UIConfiguration();
+ ui_config->ParameterChanged.connect (sigc::mem_fun (*this, &ARDOUR_UI::parameter_changed));
+ boost::function<void (string)> pc (boost::bind (&ARDOUR_UI::parameter_changed, this, _1));
+ ui_config->map_parameters (pc);
editor = 0;
mixer = 0;
diff --git a/gtk2_ardour/ardour_ui_options.cc b/gtk2_ardour/ardour_ui_options.cc
index 8cb1376522..15c58a8b8d 100644
--- a/gtk2_ardour/ardour_ui_options.cc
+++ b/gtk2_ardour/ardour_ui_options.cc
@@ -33,6 +33,8 @@
#include "ardour/osc.h"
#endif
+#include "canvas/wave_view.h"
+
#include "audio_clock.h"
#include "ardour_ui.h"
#include "actions.h"
@@ -311,8 +313,6 @@ ARDOUR_UI::setup_session_options ()
void
ARDOUR_UI::parameter_changed (std::string p)
{
- ENSURE_GUI_THREAD (*this, &ARDOUR_UI::parameter_changed, p)
-
if (p == "external-sync") {
ActionManager::map_some_state ("Transport", "ToggleExternalSync", sigc::mem_fun (_session->config, &SessionConfiguration::get_external_sync));
@@ -413,6 +413,8 @@ ARDOUR_UI::parameter_changed (std::string p)
} else if (p == "super-rapid-clock-update") {
stop_clocking ();
start_clocking ();
+ } else if (p == "waveform-gradient-depth") {
+ ArdourCanvas::WaveView::set_global_gradient_depth (config()->get_waveform_gradient_depth());
}
}
diff --git a/gtk2_ardour/theme_manager.cc b/gtk2_ardour/theme_manager.cc
index cd2645ddf6..1fabfacb7e 100644
--- a/gtk2_ardour/theme_manager.cc
+++ b/gtk2_ardour/theme_manager.cc
@@ -296,7 +296,6 @@ ThemeManager::on_waveform_gradient_depth_change ()
ArdourCanvas::WaveView::set_global_gradient_depth (v);
}
-
void
ThemeManager::on_timeline_item_gradient_depth_change ()
{
diff --git a/gtk2_ardour/ui_config.cc b/gtk2_ardour/ui_config.cc
index 86f03bbd95..7cb1953390 100644
--- a/gtk2_ardour/ui_config.cc
+++ b/gtk2_ardour/ui_config.cc
@@ -59,6 +59,15 @@ UIConfiguration::~UIConfiguration ()
{
}
+void
+UIConfiguration::map_parameters (boost::function<void (std::string)>& functor)
+{
+#undef UI_CONFIG_VARIABLE
+#define UI_CONFIG_VARIABLE(Type,var,Name,value) functor (Name);
+#include "ui_config_vars.h"
+#undef UI_CONFIG_VARIABLE
+}
+
int
UIConfiguration::load_defaults ()
{
diff --git a/gtk2_ardour/ui_config.h b/gtk2_ardour/ui_config.h
index ed8a88c1da..bfa8859afd 100644
--- a/gtk2_ardour/ui_config.h
+++ b/gtk2_ardour/ui_config.h
@@ -91,7 +91,8 @@ class UIConfiguration : public PBD::Stateful
uint32_t color_by_name (const std::string&);
- sigc::signal<void,const char*> ParameterChanged;
+ sigc::signal<void,std::string> ParameterChanged;
+ void map_parameters (boost::function<void (std::string)>&);
#undef UI_CONFIG_VARIABLE
#define UI_CONFIG_VARIABLE(Type,var,name,value) \