- /* step one: get all selected tracks and all tracks in the relevant edit groups */
-
- for (TrackSelection::iterator ti = selection->tracks.begin(); ti != selection->tracks.end(); ++ti) {
-
- RouteTimeAxisView* rtv = dynamic_cast<RouteTimeAxisView*>(*ti);
-
- if (!rtv) {
- continue;
- }
-
- RouteGroup* group = rtv->route()->edit_group();
-
- if (group && group->is_active()) {
-
- /* active group for this track, loop over all tracks and get every member of the group */
-
- for (TrackViewList::iterator i = track_views.begin(); i != track_views.end(); ++i) {
-
- RouteTimeAxisView* trtv;
-
- if ((trtv = dynamic_cast<RouteTimeAxisView*> (*i)) != 0) {
-
- if (trtv->route()->edit_group() == group) {
- relevant_tracks.insert (trtv);
- }
- }
- }
- } else {
- relevant_tracks.insert (rtv);
- }
- }
+ for (TrackViewList::iterator i = track_views.begin(); i != track_views.end(); ++i) {
+ if ((*i)->y_position() < _canvas_height) {
+ tvl.push_back (*i);
+ }
+ }