PBD::Property<bool> _color;
PBD::Property<bool> _monitoring;
- bool pre_master_gain;
- bool pre_master_solo;
- bool pre_master_mute;
-
boost::shared_ptr<ControlGroup> _solo_group;
boost::shared_ptr<ControlGroup> _mute_group;
boost::shared_ptr<ControlGroup> _rec_enable_group;
_gain = yn;
_gain_group->set_active (yn);
- if (routes->empty() || !routes->front()->slaved()) {
- pre_master_gain = yn;
- }
-
send_change (PropertyChange (Properties::gain));
}
_mute = yn;
_mute_group->set_active (yn);
- if (routes->empty() || !routes->front()->slaved()) {
- pre_master_mute = yn;
- }
-
send_change (PropertyChange (Properties::mute));
}
_solo = yn;
_solo_group->set_active (yn);
- if (routes->empty() || !routes->front()->slaved()) {
- pre_master_solo = yn;
- }
-
send_change (PropertyChange (Properties::solo));
}
boost::shared_ptr<Route> front = routes->front ();
- if (!front) {
- return;
- }
-
if (front->slaved_to (master)) {
return;
}
- bool cancel_master_controls = false;
-
- if (!front->slaved()) {
- pre_master_gain = is_gain ();
- pre_master_solo = is_solo ();
- pre_master_mute = is_mute ();
- cancel_master_controls = true;
- }
-
for (RouteList::iterator r = routes->begin(); r != routes->end(); ++r) {
(*r)->assign (master);
}
-
- if (cancel_master_controls) {
- set_gain (false);
- set_solo (false);
- set_mute (false);
- }
}
void
boost::shared_ptr<Route> front = routes->front ();
- if (!front) {
- return;
- }
-
if (!front->slaved_to (master)) {
return;
}
for (RouteList::iterator r = routes->begin(); r != routes->end(); ++r) {
(*r)->unassign (master);
}
-
- if (!front->slaved()) {
- set_gain (pre_master_gain);
- set_solo (pre_master_solo);
- set_mute (pre_master_mute);
- }
}
bool