diff options
author | Ben Loftis <ben@harrisonconsoles.com> | 2018-12-03 18:55:52 -0600 |
---|---|---|
committer | Ben Loftis <ben@harrisonconsoles.com> | 2018-12-07 12:57:26 -0600 |
commit | 65bda27d4218d9d4ebf809d91e716c892e1f1d8b (patch) | |
tree | 7254c9cb111d64912c78ce62023986d2fe9668a7 /gtk2_ardour/ardour_ui.cc | |
parent | 19cb8cf13803b52f2e6956ed24d4e328e61bb1b2 (diff) |
Tweaks to Mixer and Monitor keybindings:
Add Mixer-specific view keybindings for list, vca, mon. (thanks to: the_CLA)
Move monitor keybindings (mute, dim, mono) to be globally-accessible.
Implement new mixer-specific actions to show/hide monitor,vcas,mixbuses (the_CLA)
Move monitor funcs (mute,dim,mono) to globally-accessible actions.
Make a new Monitor group insted of using Transport group.
Allow use-monitor-section to be controlled by both menu and session-options dialog.
Diffstat (limited to 'gtk2_ardour/ardour_ui.cc')
-rw-r--r-- | gtk2_ardour/ardour_ui.cc | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc index 6dd659420c..9321f13137 100644 --- a/gtk2_ardour/ardour_ui.cc +++ b/gtk2_ardour/ardour_ui.cc @@ -92,6 +92,7 @@ #include "ardour/filename_extensions.h" #include "ardour/filesystem_paths.h" #include "ardour/ltc_file_reader.h" +#include "ardour/monitor_control.h" #include "ardour/midi_track.h" #include "ardour/port.h" #include "ardour/plugin_manager.h" @@ -5985,3 +5986,45 @@ ARDOUR_UI::reset_focus (Gtk::Widget* w) gtk_window_set_focus (GTK_WINDOW(top->gobj()), 0); } + +void +ARDOUR_UI::monitor_dim_all () +{ + boost::shared_ptr<Route> mon = _session->monitor_out (); + if (!mon) { + return; + } + boost::shared_ptr<ARDOUR::MonitorProcessor> _monitor = mon->monitor_control (); + + Glib::RefPtr<Action> act = global_actions.find_action (X_("Monitor"), "monitor-dim-all"); + assert (act); Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act); + assert (tact); _monitor->set_dim_all (tact->get_active()); +} + +void +ARDOUR_UI::monitor_cut_all () +{ + boost::shared_ptr<Route> mon = _session->monitor_out (); + if (!mon) { + return; + } + boost::shared_ptr<ARDOUR::MonitorProcessor> _monitor = mon->monitor_control (); + + Glib::RefPtr<Action> act = global_actions.find_action (X_("Monitor"), "monitor-cut-all"); + assert (act); Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act); + assert (tact); _monitor->set_cut_all (tact->get_active()); +} + +void +ARDOUR_UI::monitor_mono () +{ + boost::shared_ptr<Route> mon = _session->monitor_out (); + if (!mon) { + return; + } + boost::shared_ptr<ARDOUR::MonitorProcessor> _monitor = mon->monitor_control (); + + Glib::RefPtr<Action> act = global_actions.find_action (X_("Monitor"), "monitor-mono"); + assert (act); Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act); + assert (tact);_monitor->set_mono (tact->get_active()); +} |