summaryrefslogtreecommitdiff
path: root/libs/ardour/route.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2011-11-16 17:40:16 +0000
committerCarl Hetherington <carl@carlh.net>2011-11-16 17:40:16 +0000
commit86d927b4ddbcedd1d6c120b1176aaef7352773cd (patch)
treeaa9abf17ee285d8234d3e4ef17e5ce14283d95b1 /libs/ardour/route.cc
parent7496295930dcc321b70a522655339d90c2939f32 (diff)
Make activate/deactivate all only operate on visible
processors (and also exclude the fader) (#4475). git-svn-id: svn://localhost/ardour2/branches/3.0@10649 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/route.cc')
-rw-r--r--libs/ardour/route.cc16
1 files changed, 8 insertions, 8 deletions
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc
index 070c6b61b9..8aebaf2664 100644
--- a/libs/ardour/route.cc
+++ b/libs/ardour/route.cc
@@ -1625,12 +1625,11 @@ Route::configure_processors_unlocked (ProcessorStreams* err)
return 0;
}
-/** Set all processors with a given placement to a given active state.
- * @param p Placement of processors to change.
- * @param state New active state for those processors.
+/** Set all visible processors to a given active state (except Fader, whose state is not changed)
+ * @param state New active state for those processors.
*/
void
-Route::all_processors_active (Placement p, bool state)
+Route::all_visible_processors_active (bool state)
{
Glib::RWLock::ReaderLock lm (_processor_lock);
@@ -1638,10 +1637,11 @@ Route::all_processors_active (Placement p, bool state)
return;
}
- ProcessorList::iterator start, end;
- placement_range(p, start, end);
-
- for (ProcessorList::iterator i = start; i != end; ++i) {
+ for (ProcessorList::iterator i = _processors.begin(); i != _processors.end(); ++i) {
+ if (!(*i)->display_to_user() || boost::dynamic_pointer_cast<Amp> (*i)) {
+ continue;
+ }
+
if (state) {
(*i)->activate ();
} else {