diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2013-06-21 17:15:56 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-06-21 17:15:56 -0400 |
commit | 11becd4a6b3ac337221fa35ed922d50a4ff00dd5 (patch) | |
tree | 81687db42f2e2d51221db4b9b662d94d6a8f29aa | |
parent | 1b73ab206580048eff74e4f3a2f0527142b54d7d (diff) |
properly restore newer (cairo-canvas related) UI config parameters
-rw-r--r-- | gtk2_ardour/ardour_ui.cc | 3 | ||||
-rw-r--r-- | gtk2_ardour/ardour_ui_options.cc | 6 | ||||
-rw-r--r-- | gtk2_ardour/theme_manager.cc | 1 | ||||
-rw-r--r-- | gtk2_ardour/ui_config.cc | 9 | ||||
-rw-r--r-- | gtk2_ardour/ui_config.h | 3 | ||||
-rw-r--r-- | libs/canvas/wave_view.cc | 1 |
6 files changed, 19 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) \ diff --git a/libs/canvas/wave_view.cc b/libs/canvas/wave_view.cc index ead80f7cbf..8a8b528b6f 100644 --- a/libs/canvas/wave_view.cc +++ b/libs/canvas/wave_view.cc @@ -603,6 +603,7 @@ WaveView::CacheEntry::image () #else cerr << "draw, logscaled = " << _wave_view->_logscaled << " global " << WaveView::_global_logscaled << endl; + cerr << "gradient depth: " << _wave_view->gradient_depth() << endl; boost::scoped_array<LineTips> tips (new LineTips[_n_peaks]); |