summaryrefslogtreecommitdiff
path: root/libs/surfaces/control_protocol
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-05-16 16:36:01 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2016-05-31 15:30:42 -0400
commitdd57a83793db78cfdfd8289aead08cc4121fc30d (patch)
tree1a0e236f44983af78f1ea5f2ea1823bfae63c272 /libs/surfaces/control_protocol
parent96faa622eec46c5787445e02ebd579c6c06717d0 (diff)
add Stripable analogs for Route signals and methods in ControlProtocol
These will go away once all surfaces have migrated to Stripables
Diffstat (limited to 'libs/surfaces/control_protocol')
-rw-r--r--libs/surfaces/control_protocol/control_protocol.cc13
-rw-r--r--libs/surfaces/control_protocol/control_protocol/control_protocol.h7
-rw-r--r--libs/surfaces/control_protocol/control_protocol/types.h6
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__ */