diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2016-09-25 15:02:47 -0500 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2016-09-27 14:59:32 -0500 |
commit | 8be313932e1fe90b5b74968412737db7cb22573c (patch) | |
tree | f3866809de543e60a2634f6d67814e028b74f297 /libs | |
parent | 56af59953fb612bac7272bd855ebe1911d4b4eb2 (diff) |
use new canvas meter in push2 track mix layout
Diffstat (limited to 'libs')
-rw-r--r-- | libs/surfaces/push2/track_mix.cc | 19 | ||||
-rw-r--r-- | libs/surfaces/push2/track_mix.h | 5 | ||||
-rw-r--r-- | libs/surfaces/push2/wscript | 2 |
3 files changed, 13 insertions, 13 deletions
diff --git a/libs/surfaces/push2/track_mix.cc b/libs/surfaces/push2/track_mix.cc index 72f2954d09..6bfd3c5f04 100644 --- a/libs/surfaces/push2/track_mix.cc +++ b/libs/surfaces/push2/track_mix.cc @@ -50,14 +50,16 @@ #include "gtkmm2ext/gui_thread.h" #include "gtkmm2ext/rgb_macros.h" +#include "canvas/box.h" #include "canvas/line.h" +#include "canvas/meter.h" #include "canvas/rectangle.h" #include "canvas/text.h" #include "canvas.h" #include "knob.h" +#include "level_meter.h" #include "menu.h" -#include "meter.h" #include "push2.h" #include "track_mix.h" #include "utils.h" @@ -140,7 +142,7 @@ TrackMixLayout::TrackMixLayout (Push2& p, Session& s) name_text->set_font_description (fd); name_text->set_position (Duple (10 + (4*Push2Canvas::inter_button_spacing()), 2)); - meter = new Meter (this, 24, 32, Meter::Horizontal, 200); + meter = new LevelMeter (p2, this, 200, ArdourCanvas::Meter::Horizontal); meter->set_position (Duple (10 + (4 * Push2Canvas::inter_button_spacing()), 50)); ControlProtocol::StripableSelectionChanged.connect (selection_connection, invalidator (*this), boost::bind (&TrackMixLayout::selection_changed, this), &p2); @@ -426,6 +428,10 @@ TrackMixLayout::set_stripable (boost::shared_ptr<Stripable> s) solo_iso_change (); solo_safe_change (); monitoring_change (); + + meter->set_meter (stripable->peak_meter ().get()); + } else { + meter->set_meter (0); } } @@ -507,12 +513,5 @@ TrackMixLayout::update_meters () return; } - boost::shared_ptr<PeakMeter> peak_meter = stripable->peak_meter (); - - if (!peak_meter) { - return; - } - - const float mpeak = peak_meter->meter_level (0, MeterPeak); - meter->set (DSP::log_meter (mpeak)); + meter->update_meters (); } diff --git a/libs/surfaces/push2/track_mix.h b/libs/surfaces/push2/track_mix.h index ffc20aca55..8ba95344b0 100644 --- a/libs/surfaces/push2/track_mix.h +++ b/libs/surfaces/push2/track_mix.h @@ -32,12 +32,13 @@ namespace ArdourCanvas { class Rectangle; class Text; class Line; + class VBox; } namespace ArdourSurface { class Push2Knob; -class Meter; +class LevelMeter; class TrackMixLayout : public Push2Layout { @@ -73,7 +74,7 @@ class TrackMixLayout : public Push2Layout uint8_t selection_color; Push2Knob* knobs[8]; - Meter* meter; + LevelMeter* meter; void stripable_property_change (PBD::PropertyChange const& what_changed); void simple_control_change (boost::shared_ptr<ARDOUR::AutomationControl> ac, Push2::ButtonID bid); diff --git a/libs/surfaces/push2/wscript b/libs/surfaces/push2/wscript index 5d8bb83361..a29ccd4492 100644 --- a/libs/surfaces/push2/wscript +++ b/libs/surfaces/push2/wscript @@ -26,12 +26,12 @@ def build(bld): interface.cc midi_byte_array.cc leds.cc + level_meter.cc gui.cc knob.cc layout.cc mode.cc menu.cc - meter.cc mix.cc scale.cc splash.cc |