diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-12-10 17:45:18 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-12-10 17:45:18 +0000 |
commit | 90d6916ca3443b81a4eaf615c014ac065554b4f2 (patch) | |
tree | 69d14f3bf15b34f054455afd71791ae3616b8260 /gtk2_ardour/editor_routes.cc | |
parent | b5ca5713fbf2d58485084d7cd70a2a52fb1d7ef5 (diff) |
restore rec-enable, solo & mute functionality; remove all Global*Command cruft; reimplement momentary solo&mute; refactor session RT event stuff to be even cleaner and finally compatible with everything-is-a-UI idea ; make all UIs derive from a primitive type that pprovides only void call_slot (sigc::slot<void>) as a way to execute arbitrary code in the UI thread
git-svn-id: svn://localhost/ardour2/branches/3.0@6338 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_routes.cc')
-rw-r--r-- | gtk2_ardour/editor_routes.cc | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/gtk2_ardour/editor_routes.cc b/gtk2_ardour/editor_routes.cc index 100c552be7..9cd5231d41 100644 --- a/gtk2_ardour/editor_routes.cc +++ b/gtk2_ardour/editor_routes.cc @@ -170,7 +170,9 @@ EditorRoutes::on_tv_rec_enable_toggled (Glib::ustring const & path_string) AudioTimeAxisView *atv = dynamic_cast<AudioTimeAxisView*> (tv); if (atv != 0 && atv->is_audio_track()){ - atv->reversibly_apply_track_boolean ("rec-enable change", &Track::set_record_enable, !atv->track()->record_enabled(), this); + boost::shared_ptr<RouteList> rl (new RouteList); + rl->push_back (atv->route()); + _session->set_record_enable (rl, !atv->track()->record_enabled(), Session::rt_cleanup); } } @@ -184,7 +186,9 @@ EditorRoutes::on_tv_mute_enable_toggled (Glib::ustring const & path_string) AudioTimeAxisView *atv = dynamic_cast<AudioTimeAxisView*> (tv); if (atv != 0) { - atv->reversibly_apply_route_boolean ("mute-enable change", &Route::set_mute, !atv->route()->muted(), this); + boost::shared_ptr<RouteList> rl (new RouteList); + rl->push_back (atv->route()); + _session->set_mute (rl, !atv->route()->muted(), Session::rt_cleanup); } } @@ -198,7 +202,9 @@ EditorRoutes::on_tv_solo_enable_toggled (Glib::ustring const & path_string) AudioTimeAxisView *atv = dynamic_cast<AudioTimeAxisView*> (tv); if (atv != 0) { - atv->reversibly_apply_route_boolean ("solo-enable change", &Route::set_solo, !atv->route()->soloed(), this); + boost::shared_ptr<RouteList> rl (new RouteList); + rl->push_back (atv->route()); + _session->set_solo (rl, !atv->route()->soloed(), Session::rt_cleanup); } } |