summaryrefslogtreecommitdiff
path: root/gtk2_ardour/meter_strip.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2013-07-22 18:45:08 +0200
committerRobin Gareus <robin@gareus.org>2013-07-22 18:45:08 +0200
commit708edd586611c6b1132e4f25be4c2c0865ba4738 (patch)
tree501211154ef6f5cc06606874edfe3371f7049825 /gtk2_ardour/meter_strip.cc
parent72aa1cd86cf04964f08e7ca0557f73afd1c96e83 (diff)
implement new meter types
Diffstat (limited to 'gtk2_ardour/meter_strip.cc')
-rw-r--r--gtk2_ardour/meter_strip.cc23
1 files changed, 15 insertions, 8 deletions
diff --git a/gtk2_ardour/meter_strip.cc b/gtk2_ardour/meter_strip.cc
index 3a8410867a..263241bbd1 100644
--- a/gtk2_ardour/meter_strip.cc
+++ b/gtk2_ardour/meter_strip.cc
@@ -112,8 +112,8 @@ MeterStrip::MeterStrip (Session* sess, boost::shared_ptr<ARDOUR::Route> rt)
level_meter = new LevelMeter(sess);
level_meter->set_meter (_route->shared_peak_meter().get());
level_meter->clear_meters();
- level_meter->setup_meters (220, meter_width, 6);
level_meter->set_type (_route->meter_type());
+ level_meter->setup_meters (220, meter_width, 6);
level_meter->ButtonPress.connect_same_thread (level_meter_connection, boost::bind (&MeterStrip::level_meter_button_press, this, _1));
level_meter->MeterTypeChanged.connect_same_thread (level_meter_connection, boost::bind (&MeterStrip::meter_type_changed, this, _1));
@@ -394,7 +394,8 @@ MeterStrip::on_size_allocate (Gtk::Allocation& a)
gint
MeterStrip::meter_metrics_expose (GdkEventExpose *ev)
{
- return meter_expose_metrics(ev, _types, &meter_metric_area);
+ // TODO meter-type - set with set_metric_mode()
+ return meter_expose_metrics(ev, /*XXX*/ MeterPeak, _types, &meter_metric_area);
}
void
@@ -432,13 +433,15 @@ MeterStrip::set_pos (int pos)
gint
MeterStrip::meter_ticks1_expose (GdkEventExpose *ev)
{
- return meter_expose_ticks(ev, _types, &meter_ticks1_area);
+ assert(_route);
+ return meter_expose_ticks(ev, _route->meter_type(), _types, &meter_ticks1_area);
}
gint
MeterStrip::meter_ticks2_expose (GdkEventExpose *ev)
{
- return meter_expose_ticks(ev, _types, &meter_ticks2_area);
+ assert(_route);
+ return meter_expose_ticks(ev, _route->meter_type(), _types, &meter_ticks2_area);
}
void
@@ -572,10 +575,14 @@ MeterStrip::popup_level_meter_menu (GdkEventButton* ev)
_suspend_menu_callbacks = true;
add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterPeak), MeterPeak);
- add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterKrms), MeterKrms);
- add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterIEC1), MeterIEC1);
- add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterIEC2), MeterIEC2);
- add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterVU), MeterVU);
+ add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterRMS), MeterRMS);
+ add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterIEC1DIN), MeterIEC1DIN);
+ add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterIEC1NOR), MeterIEC1NOR);
+ add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterIEC2BBC), MeterIEC2BBC);
+ add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterIEC2EBU), MeterIEC2EBU);
+ add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterK20), MeterK20);
+ add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterK14), MeterK14);
+ add_level_meter_item (items, group, ArdourMeter::meter_type_string(MeterVU), MeterVU);
MeterType cmt = _route->meter_type();
const std::string cmn = ArdourMeter::meter_type_string(cmt);