diff --git a/gtk2_ardour/route_time_axis.cc b/gtk2_ardour/route_time_axis.cc index 045dffa20f..c1fa5e26ba 100644 --- a/gtk2_ardour/route_time_axis.cc +++ b/gtk2_ardour/route_time_axis.cc @@ -1345,9 +1345,7 @@ RouteTimeAxisView::selection_click (GdkEventButton* ev) void RouteTimeAxisView::set_selected_points (PointSelection& points) { - for (Children::iterator i = children.begin(); i != children.end(); ++i) { - (*i)->set_selected_points (points); - } + StripableTimeAxisView::set_selected_points (points); AudioStreamView* asv = dynamic_cast(_view); if (asv) { asv->set_selected_points (points); @@ -1382,12 +1380,7 @@ RouteTimeAxisView::get_selectables (framepos_t start, framepos_t end, double top } /* pick up visible automation tracks */ - - for (Children::iterator i = children.begin(); i != children.end(); ++i) { - if (!(*i)->hidden()) { - (*i)->get_selectables (start_adjusted, end_adjusted, top, bot, results, within); - } - } + StripableTimeAxisView::get_selectables (start_adjusted, end_adjusted, top, bot, results, within); } void @@ -1396,14 +1389,7 @@ RouteTimeAxisView::get_inverted_selectables (Selection& sel, list& if (_view) { _view->get_inverted_selectables (sel, results); } - - for (Children::iterator i = children.begin(); i != children.end(); ++i) { - if (!(*i)->hidden()) { - (*i)->get_inverted_selectables (sel, results); - } - } - - return; + StripableTimeAxisView::get_inverted_selectables (sel, results); } RouteGroup* diff --git a/gtk2_ardour/time_axis_view.cc b/gtk2_ardour/time_axis_view.cc index c1ec7767e5..05d93f696c 100644 --- a/gtk2_ardour/time_axis_view.cc +++ b/gtk2_ardour/time_axis_view.cc @@ -1017,15 +1017,31 @@ TimeAxisView::remove_child (boost::shared_ptr child) * @param result Filled in with selectable things. */ void -TimeAxisView::get_selectables (framepos_t /*start*/, framepos_t /*end*/, double /*top*/, double /*bot*/, list& /*result*/, bool /*within*/) +TimeAxisView::get_selectables (framepos_t start, framepos_t end, double top, double bot, list& results, bool within) { - return; + for (Children::iterator i = children.begin(); i != children.end(); ++i) { + if (!(*i)->hidden()) { + (*i)->get_selectables (start, end, top, bot, results, within); + } + } } void -TimeAxisView::get_inverted_selectables (Selection& /*sel*/, list& /*result*/) +TimeAxisView::set_selected_points (PointSelection& points) { - return; + for (Children::iterator i = children.begin(); i != children.end(); ++i) { + (*i)->set_selected_points (points); + } +} + +void +TimeAxisView::get_inverted_selectables (Selection& sel, list& results) +{ + for (Children::iterator i = children.begin(); i != children.end(); ++i) { + if (!(*i)->hidden()) { + (*i)->get_inverted_selectables (sel, results); + } + } } void diff --git a/gtk2_ardour/time_axis_view.h b/gtk2_ardour/time_axis_view.h index f33379e4d6..7f9e562ee1 100644 --- a/gtk2_ardour/time_axis_view.h +++ b/gtk2_ardour/time_axis_view.h @@ -189,7 +189,7 @@ class TimeAxisView : public virtual AxisView const int32_t sub_num) { return false; } virtual void set_selected_regionviews (RegionSelection&) {} - virtual void set_selected_points (PointSelection&) {} + virtual void set_selected_points (PointSelection&); virtual void fade_range (TimeSelection&) {}