summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2013-07-06 16:09:38 +0200
committerRobin Gareus <robin@gareus.org>2013-07-10 15:27:11 +0200
commit794fa1dd03c7bccec088a90efa1bacc66d966bb7 (patch)
tree3bd03f60576684fe03155030d48b9835f8c66e62
parentc1f56d4d7c12290c06392539f05547a7bd89e5b2 (diff)
make changes to peak-meter threshold config effective immediately
-rw-r--r--gtk2_ardour/gain_meter.cc7
-rw-r--r--gtk2_ardour/meter_strip.cc9
-rw-r--r--gtk2_ardour/meter_strip.h1
3 files changed, 13 insertions, 4 deletions
diff --git a/gtk2_ardour/gain_meter.cc b/gtk2_ardour/gain_meter.cc
index 767754bca3..dcc89e1d29 100644
--- a/gtk2_ardour/gain_meter.cc
+++ b/gtk2_ardour/gain_meter.cc
@@ -843,10 +843,9 @@ GainMeterBase::update_meters()
snprintf (buf, sizeof(buf), "%.1f", mpeak);
peak_display.set_label (buf);
}
-
- if (mpeak >= Config->get_meter_peak()) {
- peak_display.set_name ("MixerStripPeakDisplayPeak");
- }
+ }
+ if (mpeak >= Config->get_meter_peak()) {
+ peak_display.set_name ("MixerStripPeakDisplayPeak");
}
}
diff --git a/gtk2_ardour/meter_strip.cc b/gtk2_ardour/meter_strip.cc
index fcb3561eaa..a2872063d4 100644
--- a/gtk2_ardour/meter_strip.cc
+++ b/gtk2_ardour/meter_strip.cc
@@ -192,6 +192,7 @@ MeterStrip::MeterStrip (Session* sess, boost::shared_ptr<ARDOUR::Route> rt)
UI::instance()->theme_changed.connect (sigc::mem_fun(*this, &MeterStrip::on_theme_changed));
ColorsChanged.connect (sigc::mem_fun (*this, &MeterStrip::on_theme_changed));
DPIReset.connect (sigc::mem_fun (*this, &MeterStrip::on_theme_changed));
+ Config->ParameterChanged.connect (*this, invalidator (*this), ui_bind (&MeterStrip::parameter_changed, this, _1), gui_context());
}
MeterStrip::~MeterStrip ()
@@ -417,3 +418,11 @@ MeterStrip::redraw_metrics ()
meter_ticks1_area.queue_draw();
meter_ticks2_area.queue_draw();
}
+
+void
+MeterStrip::parameter_changed (std::string const & p)
+{
+ if (p == "meter-peak") {
+ max_peak = -INFINITY;
+ }
+}
diff --git a/gtk2_ardour/meter_strip.h b/gtk2_ardour/meter_strip.h
index c50c810fcf..4589742916 100644
--- a/gtk2_ardour/meter_strip.h
+++ b/gtk2_ardour/meter_strip.h
@@ -112,6 +112,7 @@ class MeterStrip : public Gtk::VBox, public RouteUI
bool peak_button_release (GdkEventButton*);
+ void parameter_changed (std::string const & p);
void redraw_metrics ();
};