use_group(), use_me() filters group behavior beforehand.
ControlGroup::set_group_value() lacks context to make the decision itself
and should always apply to the group (regardless of active state):
InverseGroup allows to override both: inactive predicate and inactive group.
This needs testing, particularly since RouteGroupMember::use_group()
is no longer used and was superseded by RouteGroup::push_to_groups()
control->set_value (val, Controllable::ForGroup);
- if (!_active) {
- return;
- }
-
/* now propagate across the group */
Glib::Threads::RWLock::ReaderLock lm (controls_lock);
void
GainControlGroup::set_group_value (boost::shared_ptr<AutomationControl> control, double val)
{
- if (!_active) {
- /* set the primary control */
- control->set_value (val, Controllable::ForGroup);
- return;
- }
-
Glib::Threads::RWLock::ReaderLock lm (controls_lock);
if (_mode & Relative) {