diff options
author | Robin Gareus <robin@gareus.org> | 2015-11-03 08:02:22 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2015-11-03 19:21:32 +0100 |
commit | 2f7c91c7da3793713482880864dded1a8cf4e820 (patch) | |
tree | 6661196dba565d82e07f2b505f813fea60db14e2 /gtk2_ardour | |
parent | ea063ade522c9a3b642816bbe0ca73bb710c626c (diff) |
GUI checkbox to disable plugins
for the benefit of Windows and OSX users and everyone else who does
not run Ardour from the commandline.
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/session_dialog.cc | 17 | ||||
-rw-r--r-- | gtk2_ardour/session_dialog.h | 4 |
2 files changed, 21 insertions, 0 deletions
diff --git a/gtk2_ardour/session_dialog.cc b/gtk2_ardour/session_dialog.cc index 7ff2ad2083..017d5b9482 100644 --- a/gtk2_ardour/session_dialog.cc +++ b/gtk2_ardour/session_dialog.cc @@ -411,6 +411,17 @@ SessionDialog::setup_initial_choice_box () centering_vbox->pack_start (*browse_label, false, false, 12); centering_vbox->pack_start (existing_session_chooser, false, false); + /* --disable plugins UI */ + + _disable_plugins.set_label (_("Safe Mode: Disable all Plugins")); + _disable_plugins.set_flags (Gtk::CAN_FOCUS); + _disable_plugins.set_relief (Gtk::RELIEF_NORMAL); + _disable_plugins.set_mode (true); + _disable_plugins.set_active (ARDOUR::Session::get_disable_all_loaded_plugins()); + _disable_plugins.set_border_width(0); + _disable_plugins.signal_clicked().connect (sigc::mem_fun (*this, &SessionDialog::disable_plugins_clicked)); + centering_vbox->pack_start (_disable_plugins, false, false); + /* pack it all up */ centering_hbox->pack_start (*centering_vbox, true, true); @@ -1135,6 +1146,12 @@ SessionDialog::recent_row_activated (const Gtk::TreePath&, Gtk::TreeViewColumn*) } void +SessionDialog::disable_plugins_clicked () +{ + ARDOUR::Session::set_disable_all_loaded_plugins (_disable_plugins.get_active()); +} + +void SessionDialog::existing_session_selected () { _existing_session_chooser_used = true; diff --git a/gtk2_ardour/session_dialog.h b/gtk2_ardour/session_dialog.h index 69532182a2..c2efd3ab2b 100644 --- a/gtk2_ardour/session_dialog.h +++ b/gtk2_ardour/session_dialog.h @@ -231,6 +231,10 @@ class SessionDialog : public ArdourDialog { void master_bus_button_clicked (); void setup_more_options_box (); + /* --disable plugins UI */ + Gtk::CheckButton _disable_plugins; + void disable_plugins_clicked (); + /* always there */ Glib::RefPtr<Pango::Layout> layout; |