summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2013-07-24 16:15:06 +0200
committerRobin Gareus <robin@gareus.org>2013-07-24 16:15:06 +0200
commit2ca3329c1084451feacd724e5411f06222de9f1b (patch)
tree22f6e3599b50bee7783bed670e37292ff6c53af8 /gtk2_ardour
parentfd9c0a63fdaf689f60aa9f434a2bd148cb4fec2f (diff)
fix display-type of editor-mixer level-meter
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/level_meter.cc3
-rw-r--r--gtk2_ardour/level_meter.h1
2 files changed, 3 insertions, 1 deletions
diff --git a/gtk2_ardour/level_meter.cc b/gtk2_ardour/level_meter.cc
index d57481b701..f0562ea716 100644
--- a/gtk2_ardour/level_meter.cc
+++ b/gtk2_ardour/level_meter.cc
@@ -361,7 +361,7 @@ LevelMeter::setup_meters (int len, int initial_width, int thin_width)
}
}
}
- if (meters[n].width != width || meters[n].length != len || color_changed) {
+ if (meters[n].width != width || meters[n].length != len || color_changed || meter_type != visible_meter_type) {
delete meters[n].meter;
meters[n].meter = new FastMeter ((uint32_t) floor (Config->get_meter_hold()), width, FastMeter::Vertical, len,
c[0], c[1], c[2], c[3], c[4],
@@ -383,6 +383,7 @@ LevelMeter::setup_meters (int len, int initial_width, int thin_width)
}
show();
color_changed = false;
+ visible_meter_type = meter_type;
}
void
diff --git a/gtk2_ardour/level_meter.h b/gtk2_ardour/level_meter.h
index ead63aa50b..d3fd4f9bbd 100644
--- a/gtk2_ardour/level_meter.h
+++ b/gtk2_ardour/level_meter.h
@@ -101,6 +101,7 @@ class LevelMeter : public Gtk::HBox, public ARDOUR::SessionHandlePtr
std::vector<MeterInfo> meters;
float max_peak;
ARDOUR::MeterType meter_type;
+ ARDOUR::MeterType visible_meter_type;
PBD::ScopedConnection _configuration_connection;
PBD::ScopedConnection _meter_type_connection;