summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2013-07-24 16:15:06 +0200
committerPaul Davis <paul@linuxaudiosystems.com>2013-08-08 15:24:49 -0400
commit49e24a6e0a2ad45c1dac2877e0f4cfcc69964ed2 (patch)
tree8b976ba173d54361b78dd997b04d7cecccee09b9
parent89e1fbff88eda4842e3758befb66bbcdd9ab489a (diff)
fix display-type of editor-mixer level-meter
-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 0e2cd1f8be..c459d91a81 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;