virtual boost::shared_ptr<GainControl> trim_control() const = 0;
virtual boost::shared_ptr<MonitorControl> monitoring_control() const = 0;
- virtual boost::shared_ptr<AutomationControl> recenable_control() const { return boost::shared_ptr<AutomationControl>(); }
+ virtual boost::shared_ptr<AutomationControl> rec_enable_control() const { return boost::shared_ptr<AutomationControl>(); }
/* "well-known" controls for panning. Any or all of these may return
* null.
virtual boost::shared_ptr<GainControl> gain_control() const { return _gain_control; }
virtual boost::shared_ptr<SoloControl> solo_control() const { return _solo_control; }
virtual boost::shared_ptr<MuteControl> mute_control() const { return _mute_control; }
- virtual boost::shared_ptr<AutomationControl> recenable_control() const { return _recenable_control; }
+ virtual boost::shared_ptr<AutomationControl> rec_enable_control() const { return _recenable_control; }
virtual boost::shared_ptr<MonitorControl> monitoring_control() const { return _monitor_control; }
/* null Stripable API, because VCAs don't have any of this */
break;
case ControllableDescriptor::Recenable:
- c = s->recenable_control ();
+ c = s->rec_enable_control ();
break;
case ControllableDescriptor::PanDirection:
break;
case RecEnableAutomation:
for (StripableList::iterator s = stripables.begin(); s != stripables.end(); ++s) {
- boost::shared_ptr<AutomationControl> ac = (*s)->recenable_control();
+ boost::shared_ptr<AutomationControl> ac = (*s)->rec_enable_control();
if (ac) {
controls.push_back (ac);
}
_stripable->gain_control()->Changed.connect(stripable_connections, MISSING_INVALIDATOR, boost::bind (&Strip::notify_gain_changed, this, false), ui_context());
_stripable->PropertyChanged.connect (stripable_connections, MISSING_INVALIDATOR, boost::bind (&Strip::notify_property_changed, this, _1), ui_context());
- boost::shared_ptr<Track> trk = boost::dynamic_pointer_cast<ARDOUR::Track>(_stripable);
+ boost::shared_ptr<AutomationControl> rec_enable_control = _stripable->rec_enable_control ();
- if (trk) {
- _recenable->set_control (trk->rec_enable_control());
- trk->rec_enable_control()->Changed .connect(stripable_connections, MISSING_INVALIDATOR, boost::bind (&Strip::notify_record_enable_changed, this), ui_context());
+ if (rec_enable_control) {
+ _recenable->set_control (rec_enable_control);
+ rec_enable_control->Changed.connect (stripable_connections, MISSING_INVALIDATOR, boost::bind (&Strip::notify_record_enable_changed, this), ui_context());
}
// TODO this works when a currently-banked stripable is made inactive, but not