diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc index 1898ec80e4..ada380130e 100644 --- a/gtk2_ardour/ardour_ui.cc +++ b/gtk2_ardour/ardour_ui.cc @@ -82,6 +82,7 @@ #include "ardour/session_utils.h" #include "ardour/slave.h" #include "ardour/system_exec.h" +#include "dbg_msg.h" #ifdef WINDOWS_VST_SUPPORT #include @@ -2027,6 +2028,20 @@ ARDOUR_UI::toggle_session_auto_loop () looploc->set_hidden (false, this); } +void ARDOUR_UI::toggle_multi_out_mode () +{ + dbg_msg("ARDOUR_UI::toggle_multi_out_mode ()"); + editor->get_waves_button ("mode_multi_out_button").set_active(true); + editor->get_waves_button ("mode_stereo_out_button").set_active(false); +} + +void ARDOUR_UI::toggle_stereo_out_mode () +{ + dbg_msg("ARDOUR_UI::toggle_stereo_out_mode ()"); + editor->get_waves_button ("mode_stereo_out_button").set_active(true); + editor->get_waves_button ("mode_multi_out_button").set_active(false); +} + void ARDOUR_UI::transport_play_selection () { @@ -4431,7 +4446,6 @@ ARDOUR_UI::reset_route_peak_display (Route* route) } } -#define dbg_msg(a) MessageDialog(a, PROGRAM_NAME).run(); int ARDOUR_UI::do_engine_setup (framecnt_t desired_sample_rate) { diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h index 44b2540009..fc3325a4e9 100644 --- a/gtk2_ardour/ardour_ui.h +++ b/gtk2_ardour/ardour_ui.h @@ -315,6 +315,9 @@ class ARDOUR_UI : public Gtkmm2ext::UI, public ARDOUR::SessionHandlePtr void toggle_click (); void toggle_audio_midi_setup (); void toggle_session_auto_loop (); + void toggle_multi_out_mode (); + void toggle_stereo_out_mode (); + void toggle_rc_options_window (); void toggle_session_options_window (); @@ -322,14 +325,14 @@ class ARDOUR_UI : public Gtkmm2ext::UI, public ARDOUR::SessionHandlePtr Gtk::Tooltips _tooltips; NSM_Client *nsm; bool _was_dirty; - bool _mixer_on_top; - bool first_time_engine_run; + bool _mixer_on_top; + bool first_time_engine_run; void goto_editor_window (); void goto_mixer_window (); void toggle_mixer_window (); void toggle_meterbridge (); - void toggle_editor_mixer (); + void toggle_editor_mixer (); int setup_windows (); void setup_transport (); diff --git a/gtk2_ardour/ardour_ui2.cc b/gtk2_ardour/ardour_ui2.cc index bc2555819a..96f07046af 100644 --- a/gtk2_ardour/ardour_ui2.cc +++ b/gtk2_ardour/ardour_ui2.cc @@ -226,6 +226,10 @@ ARDOUR_UI::setup_transport_trx () editor->get_waves_button ("transport_record_button").set_controllable (rec_controllable); act = ActionManager::get_action (X_("Main"), X_("LockSession")); editor->get_waves_button ("lock_session_button").set_related_action (act); + act = ActionManager::get_action (X_("Main"), X_("ToggleMultiOutMode")); + editor->get_waves_button ("mode_multi_out_button").set_related_action (act); + act = ActionManager::get_action (X_("Main"), X_("ToggleStereoOutMode")); + editor->get_waves_button ("mode_stereo_out_button").set_related_action (act); transport_tearoff_hbox.set_border_width (3); transport_tearoff_hbox.set_spacing (3); diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc index 7f24a661fe..72c44df3ac 100644 --- a/gtk2_ardour/ardour_ui_ed.cc +++ b/gtk2_ardour/ardour_ui_ed.cc @@ -143,6 +143,8 @@ ARDOUR_UI::install_actions () ActionManager::session_sensitive_actions.push_back (act); ActionManager::register_action (main_actions, X_("LockSession"), _("Lock this session"), sigc::mem_fun(*this, &ARDOUR_UI::lock_session)); + ActionManager::register_action (main_actions, X_("ToggleMultiOutMode"), "Multi Out", sigc::mem_fun(*this, &ARDOUR_UI::toggle_multi_out_mode)); + ActionManager::register_action (main_actions, X_("ToggleStereoOutMode"), "Stereo Out", sigc::mem_fun(*this, &ARDOUR_UI::toggle_stereo_out_mode)); act = ActionManager::register_action (main_actions, X_("Snapshot"), _("Snapshot..."), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::snapshot_session), false)); ActionManager::session_sensitive_actions.push_back (act);