diff options
Diffstat (limited to 'libs/surfaces/control_protocol')
3 files changed, 23 insertions, 3 deletions
diff --git a/libs/surfaces/control_protocol/control_protocol.cc b/libs/surfaces/control_protocol/control_protocol.cc index 2562edebcb..ab15dc705e 100644 --- a/libs/surfaces/control_protocol/control_protocol.cc +++ b/libs/surfaces/control_protocol/control_protocol.cc @@ -46,13 +46,22 @@ PBD::Signal0<void> ControlProtocol::VerticalZoomOutAll; PBD::Signal0<void> ControlProtocol::VerticalZoomInSelected; PBD::Signal0<void> ControlProtocol::VerticalZoomOutSelected; PBD::Signal1<void,RouteNotificationListPtr> ControlProtocol::TrackSelectionChanged; +PBD::Signal0<void> ControlProtocol::StepTracksDown; +PBD::Signal0<void> ControlProtocol::StepTracksUp; + PBD::Signal1<void,uint64_t> ControlProtocol::AddRouteToSelection; PBD::Signal1<void,uint64_t> ControlProtocol::SetRouteSelection; PBD::Signal1<void,uint64_t> ControlProtocol::ToggleRouteSelection; PBD::Signal1<void,uint64_t> ControlProtocol::RemoveRouteFromSelection; PBD::Signal0<void> ControlProtocol::ClearRouteSelection; -PBD::Signal0<void> ControlProtocol::StepTracksDown; -PBD::Signal0<void> ControlProtocol::StepTracksUp; + +PBD::Signal1<void,StripableNotificationListPtr> ControlProtocol::StripableSelectionChanged; +PBD::Signal1<void,uint64_t> ControlProtocol::AddStripableToSelection; +PBD::Signal1<void,uint64_t> ControlProtocol::SetStripableSelection; +PBD::Signal1<void,uint64_t> ControlProtocol::ToggleStripableSelection; +PBD::Signal1<void,uint64_t> ControlProtocol::RemoveStripableFromSelection; +PBD::Signal0<void> ControlProtocol::ClearStripableSelection; + const std::string ControlProtocol::state_node_name ("Protocol"); diff --git a/libs/surfaces/control_protocol/control_protocol/control_protocol.h b/libs/surfaces/control_protocol/control_protocol/control_protocol.h index d0294511f6..35a00c5496 100644 --- a/libs/surfaces/control_protocol/control_protocol/control_protocol.h +++ b/libs/surfaces/control_protocol/control_protocol/control_protocol.h @@ -84,12 +84,19 @@ class LIBCONTROLCP_API ControlProtocol : public PBD::Stateful, public PBD::Scope static PBD::Signal1<void,uint64_t> RemoveRouteFromSelection; static PBD::Signal0<void> ClearRouteSelection; + static PBD::Signal1<void,uint64_t> AddStripableToSelection; + static PBD::Signal1<void,uint64_t> SetStripableSelection; + static PBD::Signal1<void,uint64_t> ToggleStripableSelection; + static PBD::Signal1<void,uint64_t> RemoveStripableFromSelection; + static PBD::Signal0<void> ClearStripableSelection; + /* signals that one UI (e.g. the GUI) can emit to get all other UI's to respond. Typically this will always be GUI->"others" - the GUI pays no attention to these signals. */ static PBD::Signal1<void,RouteNotificationListPtr> TrackSelectionChanged; + static PBD::Signal1<void,StripableNotificationListPtr> StripableSelectionChanged; /* the model here is as follows: diff --git a/libs/surfaces/control_protocol/control_protocol/types.h b/libs/surfaces/control_protocol/control_protocol/types.h index 1d46753e51..d2e5d0772c 100644 --- a/libs/surfaces/control_protocol/control_protocol/types.h +++ b/libs/surfaces/control_protocol/control_protocol/types.h @@ -26,11 +26,15 @@ namespace ARDOUR { class Route; + class Stripable; typedef std::vector<boost::weak_ptr<ARDOUR::Route> > RouteNotificationList; typedef boost::shared_ptr<RouteNotificationList> RouteNotificationListPtr; - typedef std::vector<boost::shared_ptr<ARDOUR::Route> > StrongRouteNotificationList; + + typedef std::vector<boost::weak_ptr<ARDOUR::Stripable> > StripableNotificationList; + typedef boost::shared_ptr<StripableNotificationList> StripableNotificationListPtr; + typedef std::vector<boost::shared_ptr<ARDOUR::Stripable> > StrongStripableNotificationList; } #endif /* __ardour_control_protocol_types_h__ */ |