void
Selection::add (const TrackViewList& track_list)
{
+ clear_objects(); //enforce object/range exclusivity
+
TrackViewList added = tracks.add (track_list);
if (!added.empty()) {
void
Selection::add (TimeAxisView* track)
{
+ clear_objects(); //enforce object/range exclusivity
+
TrackViewList tr;
track->set_selected (true);
tr.push_back (track);
Selection::set (framepos_t start, framepos_t end)
{
clear_objects(); //enforce region/object exclusivity
- clear_tracks(); //enforce object/track exclusivity
clear_time();
if ((start == 0 && end == 0) || end < start) {
as a cut buffer.
*/
- return object_level_empty && midi_notes.empty();
+ return object_level_empty && midi_notes.empty() && points.empty();
}
void
fatal << _("programming error: ")
<< X_("unknown selectable type passed to Selection::toggle()")
<< endmsg;
- /*NOTREACHED*/
+ abort(); /*NOTREACHED*/
}
}
fatal << _("programming error: ")
<< X_("unknown selectable type passed to Selection::add()")
<< endmsg;
- /*NOTREACHED*/
+ abort(); /*NOTREACHED*/
}
}
RouteTimeAxisView* rtv = editor->get_route_view_by_route_id (id);
if (rtv) {
- boost::shared_ptr<AutomationTimeAxisView> atv = rtv->automation_child (EventTypeMap::instance().new_parameter (prop_parameter->value ()));
+ boost::shared_ptr<AutomationTimeAxisView> atv = rtv->automation_child (EventTypeMap::instance().from_symbol (prop_parameter->value ()));
/* the automation could be for an entity that was never saved
in the session file. Don't freak out if we can't find