diff options
Diffstat (limited to 'libs/ardour')
-rw-r--r-- | libs/ardour/ardour/route_group_member.h | 5 | ||||
-rw-r--r-- | libs/ardour/route_group.cc | 6 | ||||
-rw-r--r-- | libs/ardour/route_group_member.cc | 14 |
3 files changed, 8 insertions, 17 deletions
diff --git a/libs/ardour/ardour/route_group_member.h b/libs/ardour/ardour/route_group_member.h index 860b836209..3cc8e2aaf8 100644 --- a/libs/ardour/ardour/route_group_member.h +++ b/libs/ardour/ardour/route_group_member.h @@ -34,7 +34,7 @@ class RouteGroupMember RouteGroup* route_group () const { return _route_group; } /** Emitted when this member joins or leaves a route group */ - PBD::Signal1<void, RouteGroup *> route_group_changed; + PBD::Signal0<void> route_group_changed; protected: RouteGroup* _route_group; @@ -42,8 +42,7 @@ class RouteGroupMember private: friend class RouteGroup; - void join_route_group (RouteGroup*); - void leave_route_group (); + void set_route_group (RouteGroup *); }; } diff --git a/libs/ardour/route_group.cc b/libs/ardour/route_group.cc index 045067013d..d8acefbeed 100644 --- a/libs/ardour/route_group.cc +++ b/libs/ardour/route_group.cc @@ -125,7 +125,7 @@ RouteGroup::~RouteGroup () RouteList::iterator tmp = i; ++tmp; - (*i)->leave_route_group (); + (*i)->set_route_group (0); i = tmp; } @@ -147,7 +147,7 @@ RouteGroup::add (boost::shared_ptr<Route> r) routes->push_back (r); - r->join_route_group (this); + r->set_route_group (this); r->DropReferences.connect_same_thread (*this, boost::bind (&RouteGroup::remove_when_going_away, this, boost::weak_ptr<Route> (r))); _session.set_dirty (); @@ -171,7 +171,7 @@ RouteGroup::remove (boost::shared_ptr<Route> r) RouteList::iterator i; if ((i = find (routes->begin(), routes->end(), r)) != routes->end()) { - r->leave_route_group (); + r->set_route_group (0); routes->erase (i); _session.set_dirty (); RouteRemoved (this, boost::weak_ptr<Route> (r)); /* EMIT SIGNAL */ diff --git a/libs/ardour/route_group_member.cc b/libs/ardour/route_group_member.cc index 9b23fd922b..9e2682bbb9 100644 --- a/libs/ardour/route_group_member.cc +++ b/libs/ardour/route_group_member.cc @@ -23,22 +23,14 @@ using namespace ARDOUR; +/** Set the route group; it can be set to 0 for `none' */ void -RouteGroupMember::join_route_group (RouteGroup *rg) +RouteGroupMember::set_route_group (RouteGroup *rg) { if (rg == _route_group) { return; } _route_group = rg; - route_group_changed (rg); /* EMIT SIGNAL */ + route_group_changed (); /* EMIT SIGNAL */ } - -void -RouteGroupMember::leave_route_group () -{ - RouteGroup* rg = _route_group; - _route_group = 0; - route_group_changed (rg); /* EMIT SIGNAL */ -} - |