diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2006-01-19 00:03:55 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2006-01-19 00:03:55 +0000 |
commit | cd87dceb0fda44d7c8fcc2b7844f65def25edb23 (patch) | |
tree | 36ca3ef004a12e9edb3f41e708128188d54613c0 /gtk2_ardour | |
parent | 2a25079173c9614049457ec28cd2ed260f503b3f (diff) |
latched rec-enable
git-svn-id: svn://localhost/trunk/ardour2@277 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/ardour.menus | 1 | ||||
-rw-r--r-- | gtk2_ardour/ardour_ui.cc | 2 | ||||
-rw-r--r-- | gtk2_ardour/ardour_ui.h | 1 | ||||
-rw-r--r-- | gtk2_ardour/ardour_ui_ed.cc | 2 | ||||
-rw-r--r-- | gtk2_ardour/ardour_ui_options.cc | 7 | ||||
-rw-r--r-- | gtk2_ardour/route_ui.cc | 3 | ||||
-rw-r--r-- | gtk2_ardour/streamview.cc | 3 |
7 files changed, 14 insertions, 5 deletions
diff --git a/gtk2_ardour/ardour.menus b/gtk2_ardour/ardour.menus index 67d9aca462..4874eddc2a 100644 --- a/gtk2_ardour/ardour.menus +++ b/gtk2_ardour/ardour.menus @@ -194,6 +194,7 @@ <separator/> <menuitem action='StopPluginsWithTransport'/> <menuitem action='DoNotRunPluginsWhileRecording'/> + <menuitem action='LatchedRecordEnable'/> <separator/> <menuitem action='VerifyRemoveLastCapture'/> <menuitem action='StopRecordingOnXrun'/> diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc index de23ebdcc3..686652c4eb 100644 --- a/gtk2_ardour/ardour_ui.cc +++ b/gtk2_ardour/ardour_ui.cc @@ -1052,7 +1052,7 @@ ARDOUR_UI::transport_record () break; case Session::Recording: case Session::Enabled: - session->disable_record (); + session->disable_record (true); } } } diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h index e5f7f4d96e..f0637ad535 100644 --- a/gtk2_ardour/ardour_ui.h +++ b/gtk2_ardour/ardour_ui.h @@ -690,6 +690,7 @@ class ARDOUR_UI : public Gtkmm2ext::UI void toggle_SoloViaBus(); void toggle_AutomaticallyCreateCrossfades(); void toggle_UnmuteNewFullCrossfades(); + void toggle_LatchedRecordEnable (); void mtc_port_changed (); void map_some_session_state (const char* group, const char* action, bool (ARDOUR::Session::*get)() const); diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc index d10683ec9e..b065f55a06 100644 --- a/gtk2_ardour/ardour_ui_ed.cc +++ b/gtk2_ardour/ardour_ui_ed.cc @@ -380,6 +380,8 @@ ARDOUR_UI::install_actions () ActionManager::session_sensitive_actions.push_back (act); act = ActionManager::register_toggle_action (option_actions, X_("DoNotRunPluginsWhileRecording"), _("Do not run plugins while recording"), mem_fun (*this, &ARDOUR_UI::toggle_DoNotRunPluginsWhileRecording)); ActionManager::session_sensitive_actions.push_back (act); + + ActionManager::register_toggle_action (option_actions, X_("LatchedRecordEnable"), _("Rec-enable stays engaged at stop"), mem_fun (*this, &ARDOUR_UI::toggle_LatchedRecordEnable)); act = ActionManager::register_toggle_action (option_actions, X_("VerifyRemoveLastCapture"), _("Verify remove last capture"), mem_fun (*this, &ARDOUR_UI::toggle_VerifyRemoveLastCapture)); ActionManager::session_sensitive_actions.push_back (act); diff --git a/gtk2_ardour/ardour_ui_options.cc b/gtk2_ardour/ardour_ui_options.cc index 5a15bd7de3..14b385e175 100644 --- a/gtk2_ardour/ardour_ui_options.cc +++ b/gtk2_ardour/ardour_ui_options.cc @@ -239,6 +239,13 @@ ARDOUR_UI::toggle_StopPluginsWithTransport() { toggle_config_state ("options", "StopPluginsWithTransport", &Configuration::set_plugins_stop_with_transport); } + +void +ARDOUR_UI::toggle_LatchedRecordEnable() +{ + toggle_config_state ("options", "LatchedRecordEnable", &Configuration::set_latched_record_enable); +} + void ARDOUR_UI::toggle_DoNotRunPluginsWhileRecording() { diff --git a/gtk2_ardour/route_ui.cc b/gtk2_ardour/route_ui.cc index ed93c55811..e974b88a97 100644 --- a/gtk2_ardour/route_ui.cc +++ b/gtk2_ardour/route_ui.cc @@ -76,8 +76,7 @@ RouteUI::RouteUI (ARDOUR::Route& rt, ARDOUR::Session& sess, const char* m_name, get_diskstream()->record_enable_changed.connect (mem_fun (*this, &RouteUI::route_rec_enable_changed)); - _session.RecordEnabled.connect (mem_fun (*this, &RouteUI::session_rec_enable_changed)); - _session.RecordDisabled.connect (mem_fun (*this, &RouteUI::session_rec_enable_changed)); + _session.RecordStateChanged.connect (mem_fun (*this, &RouteUI::session_rec_enable_changed)); rec_enable_button = manage (new BindableToggleButton (& at->midi_rec_enable_control(), r_name )); rec_enable_button->set_bind_button_state (2, GDK_CONTROL_MASK); diff --git a/gtk2_ardour/streamview.cc b/gtk2_ardour/streamview.cc index a8b7499644..e661b5d49c 100644 --- a/gtk2_ardour/streamview.cc +++ b/gtk2_ardour/streamview.cc @@ -82,8 +82,7 @@ StreamView::StreamView (AudioTimeAxisView& tv) _trackview.audio_track()->diskstream_changed.connect (mem_fun (*this, &StreamView::diskstream_changed)); _trackview.session().TransportStateChange.connect (mem_fun (*this, &StreamView::transport_changed)); _trackview.get_diskstream()->record_enable_changed.connect (mem_fun (*this, &StreamView::rec_enable_changed)); - _trackview.session().RecordEnabled.connect (mem_fun (*this, &StreamView::sess_rec_enable_changed)); - _trackview.session().RecordDisabled.connect (mem_fun (*this, &StreamView::sess_rec_enable_changed)); + _trackview.session().RecordStateChanged.connect (mem_fun (*this, &StreamView::sess_rec_enable_changed)); } rec_updating = false; |