+
+ typedef RouteTimeAxisView::AutomationTracks ATracks;
+ typedef std::list<Selectable*> Selectables;
+
+ /* Add control points to selection. */
+ const ATracks& atracks = midi_view()->automation_tracks();
+ Selectables selectables;
+ editor.get_selection().clear_points();
+ for (ATracks::const_iterator a = atracks.begin(); a != atracks.end(); ++a) {
+ a->second->get_selectables(start, end, gy0, gy1, selectables);
+ for (Selectables::const_iterator s = selectables.begin(); s != selectables.end(); ++s) {
+ ControlPoint* cp = dynamic_cast<ControlPoint*>(*s);
+ if (cp) {
+ editor.get_selection().add(cp);
+ }
+ }
+ a->second->set_selected_points(editor.get_selection().points);
+ }