diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2018-12-11 10:28:47 -0500 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2018-12-11 10:28:47 -0500 |
commit | 098b0f8a8b904313bc2e9e3147cc3c05fd83f3e6 (patch) | |
tree | 83439d12376bc0d5cf0b41587be651361881603f /gtk2_ardour/monitor_section.h | |
parent | 685c4f89558b57f22371f3f3adb59c4ded254b8d (diff) |
full (?) set of changes required to make MonitorSection an "always-there" component of the MixerUI
Obviously, it is not always shown, but it always exists, which means that its actions are always accessible
Diffstat (limited to 'gtk2_ardour/monitor_section.h')
-rw-r--r-- | gtk2_ardour/monitor_section.h | 33 |
1 files changed, 10 insertions, 23 deletions
diff --git a/gtk2_ardour/monitor_section.h b/gtk2_ardour/monitor_section.h index 2420888e9d..67340e135f 100644 --- a/gtk2_ardour/monitor_section.h +++ b/gtk2_ardour/monitor_section.h @@ -17,6 +17,9 @@ */ +#ifndef __gtk2_ardour_monitor_section_h__ +#define __gtk2_ardour_monitor_section_h__ + #include <gtkmm/box.h> #include <gtkmm/eventbox.h> #include <gtkmm/sizegroup.h> @@ -44,7 +47,7 @@ namespace ArdourWidgets { class MonitorSection : public RouteUI, public Gtk::EventBox { public: - MonitorSection (ARDOUR::Session*); + MonitorSection (); ~MonitorSection (); void set_session (ARDOUR::Session*); @@ -55,6 +58,8 @@ public: PluginSelector* plugin_selector() { return _plugin_selector; } + void use_others_actions (); + private: Gtk::HBox hpacker; Gtk::VBox vpacker; @@ -108,32 +113,10 @@ private: boost::shared_ptr<ARDOUR::MonitorProcessor> _monitor; boost::shared_ptr<ARDOUR::Route> _route; - enum MonitorActions { - MonitorMono, - MonitorCutAll, - MonitorDimAll, - ToggleExclusiveSolo, - ToggleMuteOverridesSolo, - SoloUseInPlace, - SoloUseAFL, - SoloUsePFL, - ToggleMonitorProcessorBox - }; - - enum ChannelActions { - CutChannel, - DimChannel, - SoloChannel, - InvertChannel - }; - Glib::RefPtr<Gtk::ActionGroup> monitor_actions; Glib::RefPtr<Gtk::ActionGroup> solo_actions; void register_actions (); - static void action_proxy0 (enum MonitorActions); - static void action_proxy1 (enum ChannelActions, uint32_t); - void cut_channel (uint32_t); void dim_channel (uint32_t); void solo_channel (uint32_t); @@ -208,4 +191,8 @@ private: void load_bindings (); bool enter_handler (GdkEventCrossing*); bool leave_handler (GdkEventCrossing*); + + void toggle_use_monitor_section (); }; + +#endif /* __gtk2_ardour_monitor_section_h__ */ |