summaryrefslogtreecommitdiff
path: root/gtk2_ardour/gain_meter.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2009-05-17 02:08:13 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2009-05-17 02:08:13 +0000
commit7deb14773baf3ebf191c973665fc0c3069cc39fb (patch)
treebf07175a72ca8c9e97f812914b70e3a4b6843067 /gtk2_ardour/gain_meter.cc
parent091bd8a778491dc608d688a22ba1289b1ee5cf35 (diff)
75% (?) of the way towards making mixer strips control bus sends. lots more to do
git-svn-id: svn://localhost/ardour2/branches/3.0@5090 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/gain_meter.cc')
-rw-r--r--gtk2_ardour/gain_meter.cc16
1 files changed, 15 insertions, 1 deletions
diff --git a/gtk2_ardour/gain_meter.cc b/gtk2_ardour/gain_meter.cc
index f06597253c..597e2a2fbe 100644
--- a/gtk2_ardour/gain_meter.cc
+++ b/gtk2_ardour/gain_meter.cc
@@ -165,7 +165,13 @@ GainMeterBase::set_io (boost::shared_ptr<IO> io)
_io = io;
- level_meter->set_meter (_io->peak_meter());
+ if (!_io) {
+ level_meter->set_meter (0);
+ gain_slider->set_controllable (boost::shared_ptr<PBD::Controllable>());
+ return;
+ }
+
+ level_meter->set_meter (&_io->peak_meter());
gain_slider->set_controllable (_io->gain_control());
boost::shared_ptr<Route> r;
@@ -836,6 +842,14 @@ GainMeter::set_io (boost::shared_ptr<IO> io)
if (!r->is_hidden()) {
fader_vbox->pack_start (gain_automation_state_button, false, false, 0);
}
+
+ } else {
+
+ /* we're managing a non-Route IO (e.g. Send) */
+
+ gain_display_box.pack_end (peak_display, true, true);
+ hbox.pack_end (*level_meter, true, true);
+ fader_vbox->pack_start (gain_automation_state_button, false, false, 0);
}
}