diff options
author | Robin Gareus <robin@gareus.org> | 2013-07-05 16:39:38 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2013-07-10 15:27:10 +0200 |
commit | 424d368614eda4b3c34d1a0962ef641d6850fb6d (patch) | |
tree | 866a7a1d7bad1ea47aed1dcc76159e1ba510fc87 | |
parent | ce016589422986aa1350f097d001a7206e8ae4f9 (diff) |
shared peak-display reset in mixer+meterbridge
-rw-r--r-- | gtk2_ardour/gain_meter.cc | 3 | ||||
-rw-r--r-- | gtk2_ardour/gain_meter.h | 3 | ||||
-rw-r--r-- | gtk2_ardour/meter_patterns.cc | 3 | ||||
-rw-r--r-- | gtk2_ardour/meter_patterns.h | 4 | ||||
-rw-r--r-- | gtk2_ardour/meter_strip.cc | 7 | ||||
-rw-r--r-- | gtk2_ardour/meter_strip.h | 2 | ||||
-rw-r--r-- | gtk2_ardour/meterbridge.cc | 18 | ||||
-rw-r--r-- | gtk2_ardour/meterbridge.h | 3 |
8 files changed, 11 insertions, 32 deletions
diff --git a/gtk2_ardour/gain_meter.cc b/gtk2_ardour/gain_meter.cc index 50d4ff80b8..124389e3ef 100644 --- a/gtk2_ardour/gain_meter.cc +++ b/gtk2_ardour/gain_meter.cc @@ -61,9 +61,6 @@ using namespace Gtk; using namespace std; using Gtkmm2ext::Keyboard; -sigc::signal<void> GainMeterBase::ResetAllPeakDisplays; -sigc::signal<void,RouteGroup*> GainMeterBase::ResetGroupPeakDisplays; - GainMeterBase::GainMeterBase (Session* s, bool horizontal, int fader_length, int fader_girth) : gain_adjustment (gain_to_slider_position_with_max (1.0, Config->get_max_gain()), 0.0, 1.0, 0.01, 0.1) , gain_automation_style_button ("") diff --git a/gtk2_ardour/gain_meter.h b/gtk2_ardour/gain_meter.h index 8a4613be5a..ba7842e085 100644 --- a/gtk2_ardour/gain_meter.h +++ b/gtk2_ardour/gain_meter.h @@ -183,9 +183,6 @@ class GainMeterBase : virtual public sigc::trackable, ARDOUR::SessionHandlePtr void reset_peak_display (); void reset_group_peak_display (ARDOUR::RouteGroup*); - static sigc::signal<void> ResetAllPeakDisplays; - static sigc::signal<void,ARDOUR::RouteGroup*> ResetGroupPeakDisplays; - void on_theme_changed (); void color_handler(bool); ARDOUR::DataType _data_type; diff --git a/gtk2_ardour/meter_patterns.cc b/gtk2_ardour/meter_patterns.cc index 6069bcb343..a5fd5ea407 100644 --- a/gtk2_ardour/meter_patterns.cc +++ b/gtk2_ardour/meter_patterns.cc @@ -38,6 +38,9 @@ using namespace std; static const int max_pattern_metric_size = 1026; +sigc::signal<void> ResetAllPeakDisplays; +sigc::signal<void,ARDOUR::RouteGroup*> ResetGroupPeakDisplays; + cairo_pattern_t* meter_render_ticks (Gtk::Widget& w, vector<ARDOUR::DataType> types) { diff --git a/gtk2_ardour/meter_patterns.h b/gtk2_ardour/meter_patterns.h index 5951ff2fd6..4a37271f40 100644 --- a/gtk2_ardour/meter_patterns.h +++ b/gtk2_ardour/meter_patterns.h @@ -26,6 +26,10 @@ #include "ardour/types.h" #include "gtkmm2ext/cairo_widget.h" +#include <sigc++/signal.h> +extern sigc::signal<void> ResetAllPeakDisplays; +extern sigc::signal<void,ARDOUR::RouteGroup*> ResetGroupPeakDisplays; + cairo_pattern_t* meter_render_ticks (Gtk::Widget& w, std::vector<ARDOUR::DataType> types); cairo_pattern_t* meter_render_metrics (Gtk::Widget& w, std::vector<ARDOUR::DataType> types); diff --git a/gtk2_ardour/meter_strip.cc b/gtk2_ardour/meter_strip.cc index d28e123d1f..cd15dd5bb0 100644 --- a/gtk2_ardour/meter_strip.cc +++ b/gtk2_ardour/meter_strip.cc @@ -54,11 +54,8 @@ using namespace Gtkmm2ext; using namespace std; PBD::Signal1<void,MeterStrip*> MeterStrip::CatchDeletion; -PBD::Signal0<void> MeterStrip::ResetAllPeakDisplays; -PBD::Signal1<void,RouteGroup*> MeterStrip::ResetGroupPeakDisplays; PBD::Signal0<void> MeterStrip::MetricChanged; - MeterStrip::MeterStrip (int metricmode) : AxisView(0) , RouteUI(0) @@ -173,6 +170,10 @@ MeterStrip::MeterStrip (Session* sess, boost::shared_ptr<ARDOUR::Route> rt) _route->shared_peak_meter()->ConfigurationChanged.connect ( route_connections, invalidator (*this), boost::bind (&MeterStrip::meter_configuration_changed, this, _1), gui_context() ); + + ResetAllPeakDisplays.connect (sigc::mem_fun(*this, &MeterStrip::reset_peak_display)); + ResetGroupPeakDisplays.connect (sigc::mem_fun(*this, &MeterStrip::reset_group_peak_display)); + meter_configuration_changed (_route->shared_peak_meter()->input_streams ()); meter_ticks1_area.set_size_request(3,-1); diff --git a/gtk2_ardour/meter_strip.h b/gtk2_ardour/meter_strip.h index dca86d6722..3836ede93f 100644 --- a/gtk2_ardour/meter_strip.h +++ b/gtk2_ardour/meter_strip.h @@ -54,8 +54,6 @@ class MeterStrip : public Gtk::VBox, public RouteUI boost::shared_ptr<ARDOUR::Route> route() { return _route; } static PBD::Signal1<void,MeterStrip*> CatchDeletion; - static PBD::Signal0<void> ResetAllPeakDisplays; - static PBD::Signal1<void,ARDOUR::RouteGroup*> ResetGroupPeakDisplays; static PBD::Signal0<void> MetricChanged; void reset_peak_display (); diff --git a/gtk2_ardour/meterbridge.cc b/gtk2_ardour/meterbridge.cc index 71fcddd6da..56a70a8d9a 100644 --- a/gtk2_ardour/meterbridge.cc +++ b/gtk2_ardour/meterbridge.cc @@ -155,8 +155,6 @@ Meterbridge::Meterbridge () signal_configure_event().connect (sigc::mem_fun (*ARDOUR_UI::instance(), &ARDOUR_UI::configure_handler)); Route::SyncOrderKeys.connect (*this, invalidator (*this), boost::bind (&Meterbridge::sync_order_keys, this, _1), gui_context()); MeterStrip::CatchDeletion.connect (*this, invalidator (*this), boost::bind (&Meterbridge::remove_strip, this, _1), gui_context()); - MeterStrip::ResetAllPeakDisplays.connect_same_thread (*this, boost::bind(&Meterbridge::reset_all_peaks, this)); - MeterStrip::ResetGroupPeakDisplays.connect_same_thread (*this, boost::bind (&Meterbridge::reset_group_peaks, this, _1)); MeterStrip::MetricChanged.connect_same_thread (*this, boost::bind(&Meterbridge::update_metrics, this)); /* work around ScrolledWindowViewport alignment mess Part one */ @@ -541,22 +539,6 @@ Meterbridge::update_metrics () } void -Meterbridge::reset_all_peaks () -{ - for (list<MeterStrip *>::iterator i = strips.begin(); i != strips.end(); ++i) { - (*i)->reset_peak_display (); - } -} - -void -Meterbridge::reset_group_peaks (RouteGroup* rg) -{ - for (list<MeterStrip *>::iterator i = strips.begin(); i != strips.end(); ++i) { - (*i)->reset_group_peak_display (rg); - } -} - -void Meterbridge::sync_order_keys (RouteSortOrderKey src) { MeterOrderRouteSorter sorter; diff --git a/gtk2_ardour/meterbridge.h b/gtk2_ardour/meterbridge.h index a44b7f552d..f02d6b82ab 100644 --- a/gtk2_ardour/meterbridge.h +++ b/gtk2_ardour/meterbridge.h @@ -76,9 +76,6 @@ class Meterbridge : void remove_strip (MeterStrip *); void update_metrics (); - void reset_all_peaks (); - void reset_group_peaks (ARDOUR::RouteGroup*); - void session_going_away (); void sync_order_keys (ARDOUR::RouteSortOrderKey src); |