diff options
author | Robin Gareus <robin@gareus.org> | 2017-07-07 14:47:36 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-07-07 14:47:36 +0200 |
commit | 68c106eab521ecbf85ac1d93b168b5814dda0df1 (patch) | |
tree | 6c2aaab5f1ea786a45e95b42cffc077310b23230 | |
parent | f2c7f2fdcbecb432c0a5e985ff512b0d830a0b12 (diff) |
Fix VCA Automation Lane selection
This moves child-selection API up into TAV (Superclass of StripableTAV
which actually owns the children)
-rw-r--r-- | gtk2_ardour/route_time_axis.cc | 20 | ||||
-rw-r--r-- | gtk2_ardour/time_axis_view.cc | 24 | ||||
-rw-r--r-- | gtk2_ardour/time_axis_view.h | 2 |
3 files changed, 24 insertions, 22 deletions
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<AudioStreamView*>(_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<Selectable*>& 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<TimeAxisView> child) * @param result Filled in with selectable things. */ void -TimeAxisView::get_selectables (framepos_t /*start*/, framepos_t /*end*/, double /*top*/, double /*bot*/, list<Selectable*>& /*result*/, bool /*within*/) +TimeAxisView::get_selectables (framepos_t start, framepos_t end, double top, double bot, list<Selectable*>& 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::set_selected_points (PointSelection& points) +{ + for (Children::iterator i = children.begin(); i != children.end(); ++i) { + (*i)->set_selected_points (points); + } } void -TimeAxisView::get_inverted_selectables (Selection& /*sel*/, list<Selectable*>& /*result*/) +TimeAxisView::get_inverted_selectables (Selection& sel, list<Selectable*>& results) { - return; + 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&) {} |