summaryrefslogtreecommitdiff
path: root/gtk2_ardour/ardour_ui_options.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2006-03-31 15:51:03 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2006-03-31 15:51:03 +0000
commit9643eb4b2320c2ec77613cddd6a66056514bcdfa (patch)
tree838d6420ae792bf98df7dd0fb313ba6c0c2f00c8 /gtk2_ardour/ardour_ui_options.cc
parented48cdb3dfd10e27558d2d1063049b625830b049 (diff)
a) persist whether the end marker should move at first capture in the session file
b) prevent transport motion if stop-at-session-end is true c) ensure that (more) menu items that provide control over Configuration object options are in the correct state at startup d) Configuration options removed from "have a session" sensitivity toggling e) removed functionally empty default_keys.cc git-svn-id: svn://localhost/trunk/ardour2@433 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/ardour_ui_options.cc')
-rw-r--r--gtk2_ardour/ardour_ui_options.cc27
1 files changed, 26 insertions, 1 deletions
diff --git a/gtk2_ardour/ardour_ui_options.cc b/gtk2_ardour/ardour_ui_options.cc
index f38aeedc8d..b959cc7300 100644
--- a/gtk2_ardour/ardour_ui_options.cc
+++ b/gtk2_ardour/ardour_ui_options.cc
@@ -35,6 +35,31 @@ using namespace Gtkmm2ext;
using namespace ARDOUR;
void
+ARDOUR_UI::setup_config_options ()
+{
+ struct {
+ char* name;
+ bool (Configuration::*method)(void) const;
+ } options[] = {
+ { "ToggleTimeMaster", &Configuration::get_jack_time_master },
+ { "StopPluginsWithTransport", &Configuration::get_plugins_stop_with_transport },
+ { "LatchedRecordEnable", &Configuration::get_latched_record_enable },
+ { "VerifyRemoveLastCapture", &Configuration::get_verify_remove_last_capture },
+ { "StopRecordingOnXrun", &Configuration::get_stop_recording_on_xrun },
+ { "StopTransportAtEndOfSession", &Configuration::get_stop_at_session_end },
+ { 0, 0 }
+ };
+
+ for (uint32_t n = 0; options[n].name; ++n) {
+ Glib::RefPtr<Action> act = ActionManager::get_action ("options", options[n].name);
+ if (act) {
+ Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);
+ tact->set_active ((Config->*(options[n].method))());
+ }
+ }
+}
+
+void
ARDOUR_UI::toggle_time_master ()
{
toggle_config_state ("Transport", "ToggleTimeMaster", &Configuration::set_jack_time_master);
@@ -370,7 +395,7 @@ ARDOUR_UI::mtc_port_changed ()
}
void
-ARDOUR_UI::setup_options ()
+ARDOUR_UI::setup_session_options ()
{
mtc_port_changed ();