diff options
author | Robin Gareus <robin@gareus.org> | 2013-07-08 02:07:40 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2013-07-10 15:27:13 +0200 |
commit | 12780e4c8c144d1b80e3aa0d2de7dadf0155bea4 (patch) | |
tree | b893482930c11f2214873eff8bf76b3c64a0ee1f /gtk2_ardour/mixer_strip.cc | |
parent | ffbc1c7a8b7f6b0a7ef434bd6e14f8a01e2cbd28 (diff) |
add convenience functions to switch meter-types.. (maybe too much?!)
Diffstat (limited to 'gtk2_ardour/mixer_strip.cc')
-rw-r--r-- | gtk2_ardour/mixer_strip.cc | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gtk2_ardour/mixer_strip.cc b/gtk2_ardour/mixer_strip.cc index 3afa68be79..c15d3ea221 100644 --- a/gtk2_ardour/mixer_strip.cc +++ b/gtk2_ardour/mixer_strip.cc @@ -62,6 +62,7 @@ #include "utils.h" #include "gui_thread.h" #include "route_group_menu.h" +#include "meter_patterns.h" #include "i18n.h" @@ -2138,6 +2139,30 @@ MixerStrip::popup_level_meter_menu (GdkEventButton* ev) add_level_meter_item_type (items, tgroup, _("Peak"), MeterPeak); add_level_meter_item_type (items, tgroup, _("RMS + Peak"), MeterKrms); + int _strip_type; + if (_route->is_master()) { + _strip_type = 4; + } + else if (boost::dynamic_pointer_cast<AudioTrack>(_route) == 0 + && boost::dynamic_pointer_cast<MidiTrack>(_route) == 0) { + /* non-master bus */ + _strip_type = 3; + } + else if (boost::dynamic_pointer_cast<MidiTrack>(_route)) { + _strip_type = 2; + } + else { + _strip_type = 1; + } + + items.push_back (SeparatorElem()); + items.push_back (MenuElem (_("Change all in Group to Peak"), sigc::bind (SetMeterTypeMulti, -1, _route->route_group(), MeterPeak))); + items.push_back (MenuElem (_("Change all in Group to RMS + Peak"), sigc::bind (SetMeterTypeMulti, -1, _route->route_group(), MeterKrms))); + items.push_back (MenuElem (_("Change all to Peak"), sigc::bind (SetMeterTypeMulti, 0, _route->route_group(), MeterPeak))); + items.push_back (MenuElem (_("Change all to RMS + Peak"), sigc::bind (SetMeterTypeMulti, 0, _route->route_group(), MeterKrms))); + items.push_back (MenuElem (_("Change same track-type to Peak"), sigc::bind (SetMeterTypeMulti, _strip_type, _route->route_group(), MeterPeak))); + items.push_back (MenuElem (_("Change same track-type to RMS + Peak"), sigc::bind (SetMeterTypeMulti, _strip_type, _route->route_group(), MeterKrms))); + m->popup (ev->button, ev->time); _suspend_menu_callbacks = false; } |