diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2015-07-27 09:41:42 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2015-07-27 09:41:57 -0400 |
commit | c55b659f391fba74704c474d7948a3976057c92a (patch) | |
tree | 44e349c2ba11021d59ca642408314018ad45a5f3 /libs/ardour/session_rtevents.cc | |
parent | 949a45b748546c125e69d794b0f73565f376ab60 (diff) |
add Session::routes_solo_changed(), a plural method which makes changing many route solo states much faster.
Code originally by Grygorii Zharun in Tracks
Diffstat (limited to 'libs/ardour/session_rtevents.cc')
-rw-r--r-- | libs/ardour/session_rtevents.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libs/ardour/session_rtevents.cc b/libs/ardour/session_rtevents.cc index 11d8319c0d..b00c4c1ebf 100644 --- a/libs/ardour/session_rtevents.cc +++ b/libs/ardour/session_rtevents.cc @@ -62,12 +62,17 @@ Session::set_solo (boost::shared_ptr<RouteList> rl, bool yn, SessionEvent::RTeve void Session::rt_set_solo (boost::shared_ptr<RouteList> rl, bool yn, bool /* group_override */) { + solo_update_disabled = true; + for (RouteList::iterator i = rl->begin(); i != rl->end(); ++i) { if (!(*i)->is_auditioner()) { (*i)->set_solo (yn, this); } } + solo_update_disabled = false; + routes_solo_changed (rl); + set_dirty(); } |