summaryrefslogtreecommitdiff
path: root/gtk2_ardour/level_meter.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour/level_meter.cc')
-rw-r--r--gtk2_ardour/level_meter.cc14
1 files changed, 10 insertions, 4 deletions
diff --git a/gtk2_ardour/level_meter.cc b/gtk2_ardour/level_meter.cc
index 36a469f35c..3d91b75878 100644
--- a/gtk2_ardour/level_meter.cc
+++ b/gtk2_ardour/level_meter.cc
@@ -44,10 +44,6 @@ using namespace Gtkmm2ext;
using namespace Gtk;
using namespace std;
-//sigc::signal<void> LevelMeter::ResetAllPeakDisplays;
-//sigc::signal<void,RouteGroup*> LevelMeter::ResetGroupPeakDisplays;
-
-
LevelMeter::LevelMeter (Session* s)
: _meter (0)
, meter_length (0)
@@ -79,10 +75,13 @@ void
LevelMeter::set_meter (PeakMeter* meter)
{
_configuration_connection.disconnect();
+ _meter_type_connection.disconnect();
+
_meter = meter;
if (_meter) {
_meter->ConfigurationChanged.connect (_configuration_connection, invalidator (*this), boost::bind (&LevelMeter::configuration_changed, this, _1, _2), gui_context());
+ _meter->TypeChanged.connect (_meter_type_connection, invalidator (*this), boost::bind (&LevelMeter::meter_type_changed, this, _1), gui_context());
}
}
@@ -156,6 +155,13 @@ LevelMeter::configuration_changed (ChanCount /*in*/, ChanCount /*out*/)
}
void
+LevelMeter::meter_type_changed (MeterType t)
+{
+ meter_type = t;
+ MeterTypeChanged(t);
+}
+
+void
LevelMeter::hide_all_meters ()
{
for (vector<MeterInfo>::iterator i = meters.begin(); i != meters.end(); ++i) {