diff options
author | Daniel Sheeler <dsheeler@pobox.com> | 2017-01-22 19:00:16 -0600 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-01-24 13:38:23 +0100 |
commit | 33c74357f086ad9d6e9c1ff5ff3e10d90c93fe1a (patch) | |
tree | b8cc6db08e7fb1bb01c839676dd49ee3bff8ee14 /gtk2_ardour/gain_meter.h | |
parent | 47de9314cc645938bd58fc90851204e5671e1599 (diff) |
Meter point toggle button now uses a popup menu instead of toggling
Diffstat (limited to 'gtk2_ardour/gain_meter.h')
-rw-r--r-- | gtk2_ardour/gain_meter.h | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/gtk2_ardour/gain_meter.h b/gtk2_ardour/gain_meter.h index 15948768a1..5880d575c8 100644 --- a/gtk2_ardour/gain_meter.h +++ b/gtk2_ardour/gain_meter.h @@ -64,6 +64,12 @@ namespace Gtk { class Menu; } +enum MeterPointChangeTarget { + MeterPointChangeAll, + MeterPointChangeGroup, + MeterPointChangeSingle +}; + class GainMeterBase : virtual public sigc::trackable, ARDOUR::SessionHandlePtr { public: @@ -139,6 +145,10 @@ class GainMeterBase : virtual public sigc::trackable, ARDOUR::SessionHandlePtr Gtk::Menu gain_astate_menu; Gtk::Menu gain_astyle_menu; + ArdourButton meter_point_button; + + Gtk::Menu meter_point_menu; + void set_gain_astate (ARDOUR::AutoState); bool gain_astate_propagate; static sigc::signal<void, ARDOUR::AutoState> ChangeGainAutomationState; @@ -163,7 +173,7 @@ class GainMeterBase : virtual public sigc::trackable, ARDOUR::SessionHandlePtr void fader_moved (); void gain_changed (); - void meter_point_clicked (); + void meter_point_clicked (ARDOUR::MeterPoint); void gain_unit_changed (); virtual void hide_all_meters (); @@ -181,11 +191,11 @@ class GainMeterBase : virtual public sigc::trackable, ARDOUR::SessionHandlePtr void set_route_group_meter_point (ARDOUR::Route&, ARDOUR::MeterPoint); void set_meter_point (ARDOUR::Route&, ARDOUR::MeterPoint); - gint meter_release (GdkEventButton*); gint meter_press (GdkEventButton*); - bool wait_for_release; ARDOUR::MeterPoint old_meter_point; + MeterPointChangeTarget meter_point_change_target; + void parameter_changed (const char*); void reset_peak_display (); |