diff options
author | Carl Hetherington <carl@carlh.net> | 2009-06-21 19:59:56 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2009-06-21 19:59:56 +0000 |
commit | 955d731fa6933e6769986687a781d16f7889da67 (patch) | |
tree | 84a383627ac0a9548f5b789b17740915846e5dcf /gtk2_ardour/editor_selection.cc | |
parent | 8cd536ab85b5923fe97d32cb93c913420fbaf5bf (diff) |
Merge edit and mix groups to just being route groups. Add properties to route groups to decide what things their member routes will share. Allow edits to happen across a route group without its tracks necessarily being selected.
git-svn-id: svn://localhost/ardour2/branches/3.0@5236 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_selection.cc')
-rw-r--r-- | gtk2_ardour/editor_selection.cc | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/gtk2_ardour/editor_selection.cc b/gtk2_ardour/editor_selection.cc index 9bfba273f7..bb9a392c9c 100644 --- a/gtk2_ardour/editor_selection.cc +++ b/gtk2_ardour/editor_selection.cc @@ -274,7 +274,7 @@ Editor::get_relevant_tracks (set<RouteTimeAxisView*>& relevant_tracks) continue; } - RouteGroup* group = rtv->route()->edit_group(); + RouteGroup* group = rtv->route()->route_group(); if (group && group->is_active()) { @@ -286,7 +286,7 @@ Editor::get_relevant_tracks (set<RouteTimeAxisView*>& relevant_tracks) if ((trtv = dynamic_cast<RouteTimeAxisView*> (*i)) != 0) { - if (trtv->route()->edit_group() == group) { + if (trtv->route()->route_group() == group) { relevant_tracks.insert (trtv); } } @@ -299,7 +299,7 @@ Editor::get_relevant_tracks (set<RouteTimeAxisView*>& relevant_tracks) /** * Call a slot for a given `basis' track and also for any track that is in the same - * active edit group. + * active route group with the `select' property. * @param sl Slot to call. * @param basis Basis track. */ @@ -320,13 +320,13 @@ Editor::mapover_tracks (slot<void, RouteTimeAxisView&, uint32_t> sl, TimeAxisVie /* always call for the basis */ tracks.insert (route_basis); - RouteGroup* group = route_basis->route()->edit_group(); - if (group && group->is_active()) { + RouteGroup* group = route_basis->route()->route_group(); + if (group && group->active_property (RouteGroup::Select)) { /* the basis is a member of an active edit group; find other members */ for (TrackViewList::const_iterator i = track_views.begin(); i != track_views.end(); ++i) { RouteTimeAxisView* v = dynamic_cast<RouteTimeAxisView*> (*i); - if (v && v->route()->edit_group() == group) { + if (v && v->route()->route_group() == group) { tracks.insert (v); } } @@ -487,7 +487,8 @@ Editor::set_selected_regionview_from_click (bool press, Selection::Operation op, case Selection::Set: if (!selection->selected (clicked_regionview)) { - selection->set (clicked_regionview); + get_equivalent_regions (clicked_regionview, all_equivalent_regions); + selection->set (all_equivalent_regions); commit = true; } else { /* no commit necessary: clicked on an already selected region */ |