summaryrefslogtreecommitdiff
path: root/libs/ardour/route_group_member.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-01-21 12:04:20 -0500
committerPaul Davis <paul@linuxaudiosystems.com>2016-01-22 11:58:31 -0500
commit23794eca5b4c352709e9054a9f32cab01228af25 (patch)
tree80c4e6fd563726cfe9cadbb672d81e6476a33858 /libs/ardour/route_group_member.cc
parent9e5b7db89f381c70232fab35dc21fd885863f998 (diff)
rename Controllable::WholeGroup => InverseGroup to reflect real intent.
Add logic to RouteGroupMember::use_group() to implement the real intent of InverseGroup
Diffstat (limited to 'libs/ardour/route_group_member.cc')
-rw-r--r--libs/ardour/route_group_member.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/libs/ardour/route_group_member.cc b/libs/ardour/route_group_member.cc
index 6ab2ade21e..d0701f57da 100644
--- a/libs/ardour/route_group_member.cc
+++ b/libs/ardour/route_group_member.cc
@@ -40,7 +40,8 @@ bool
RouteGroupMember::use_group (PBD::Controllable::GroupControlDisposition gcd, bool (RouteGroup::*predicate)(void) const) const
{
return (gcd != PBD::Controllable::NoGroup) &&
- (_route_group &&
- ((gcd == PBD::Controllable::WholeGroup) ||
- (_route_group->is_active() && (_route_group->*predicate)())));
+ _route_group &&
+ (_route_group->*predicate)() &&
+ (((_route_group->is_active()) && (gcd != PBD::Controllable::InverseGroup)) ||
+ ((!_route_group->is_active()) && (gcd == PBD::Controllable::InverseGroup)));
}