}
} else if (group && group->is_active()) {
for (TrackViewList::iterator i = track_views.begin(); i != track_views.end (); ++i) {
- if ((*i)->route_group() == group)
+ if ((*i)->route_group() == group) {
selection->remove(*i);
+ }
}
} else {
selection->remove (clicked_axisview);
}
} else if (group && group->is_active()) {
for (TrackViewList::iterator i = track_views.begin(); i != track_views.end (); ++i) {
- if ( (*i)->route_group() == group)
+ if ((*i)->route_group() == group) {
selection->add(*i);
+ }
}
} else {
selection->add (clicked_axisview);
}
} else if (group && group->is_active()) {
for (TrackViewList::iterator i = track_views.begin(); i != track_views.end (); ++i) {
- if ((*i)->route_group() == group)
+ if ((*i)->route_group() == group) {
selection->add(*i);
+ }
}
} else {
selection->add (clicked_axisview);
}
} else if (group && group->is_active()) {
for (TrackViewList::iterator i = track_views.begin(); i != track_views.end (); ++i) {
- if ((*i)->route_group() == group)
+ if ((*i)->route_group() == group) {
selection->add(*i);
+ }
}
} else {
selection->set (clicked_axisview);
void
Editor::set_selected_track (TimeAxisView& view, Selection::Operation op, bool no_remove)
{
+ begin_reversible_selection_op (X_("Set Selected Track"));
+
switch (op) {
case Selection::Toggle:
if (selection->selected (&view)) {
extend_selection_to_track (view);
break;
}
+
+ commit_reversible_selection_op ();
}
void
return;
}
- begin_reversible_command (_("set selected regions"));
+ begin_reversible_selection_op (X_("set selected regions"));
switch (op) {
case Selection::Toggle:
break;
}
- commit_reversible_command () ;
+ commit_reversible_selection_op () ;
}
bool
return true;
}
- begin_reversible_command (_("set selected regions"));
+ begin_reversible_selection_op (X_("set selected regions"));
selection->set (rv);
- commit_reversible_command () ;
+ commit_reversible_selection_op () ;
return true;
}
return;
}
+ begin_reversible_selection_op (X_("Select All in Track"));
+
clicked_routeview->get_selectables (0, max_framepos, 0, DBL_MAX, touched);
switch (op) {
selection->add (touched);
break;
}
+
+ commit_reversible_selection_op ();
}
bool
}
- begin_reversible_command (_("select all"));
+ begin_reversible_selection_op (X_("select all"));
switch (op) {
case Selection::Add:
selection->add (touched);
/* meaningless, because we're selecting everything */
break;
}
- commit_reversible_command ();
+ commit_reversible_selection_op ();
}
void
return;
}
+ begin_reversible_selection_op (X_("Invert Selection in Track"));
clicked_routeview->get_inverted_selectables (*selection, touched);
selection->set (touched);
+ commit_reversible_selection_op ();
}
void
(*iter)->get_inverted_selectables (*selection, touched);
}
+ begin_reversible_selection_op (X_("Invert Selection"));
selection->set (touched);
+ commit_reversible_selection_op ();
}
/** @param start Start time in session frames.
}
}
- begin_reversible_command (_("select all within"));
+ begin_reversible_selection_op (X_("select all within"));
switch (op) {
case Selection::Add:
selection->add (found);
break;
}
- commit_reversible_command ();
+ commit_reversible_selection_op ();
}
void
}
selection->set (selection->regions.start(), selection->regions.end_frame());
+
+ //we must now select tracks, because otherwise set_selection_from_region would appear to do nothing
+ //perhaps too drastic; perhaps the user really only wants the region's track selected
+ //but I can't think of any use-case for that (why wouldn't you just select the region?)
+ select_all_tracks();
+
if (!Profile->get_sae()) {
set_mouse_mode (Editing::MouseRange, false);
}
void
Editor::set_selection_from_range (Location& loc)
{
- begin_reversible_command (_("set selection from range"));
+ begin_reversible_selection_op (X_("set selection from range"));
selection->set (loc.start(), loc.end());
- commit_reversible_command ();
+ commit_reversible_selection_op ();
if (!Profile->get_sae()) {
set_mouse_mode (Editing::MouseRange, false);
(*iter)->get_selectables (start, end - 1, 0, DBL_MAX, touched);
}
- begin_reversible_command (_("select all from range"));
+ begin_reversible_selection_op (X_("select all from range"));
selection->set (touched);
- commit_reversible_command ();
+ commit_reversible_selection_op ();
}
}
(*iter)->get_selectables (location->start(), location->end() - 1, 0, DBL_MAX, touched);
}
- begin_reversible_command (_("select all from punch"));
+ begin_reversible_selection_op (X_("select all from punch"));
selection->set (touched);
- commit_reversible_command ();
+ commit_reversible_selection_op ();
}
}
(*iter)->get_selectables (location->start(), location->end() - 1, 0, DBL_MAX, touched);
}
- begin_reversible_command (_("select all from loop"));
+ begin_reversible_selection_op (X_("select all from loop"));
selection->set (touched);
- commit_reversible_command ();
+ commit_reversible_selection_op ();
}
}
if (after) {
- begin_reversible_command (_("select all after cursor"));
+ begin_reversible_selection_op (X_("select all after cursor"));
} else {
- begin_reversible_command (_("select all before cursor"));
+ begin_reversible_selection_op (X_("select all before cursor"));
}
TrackViewList* ts;
(*iter)->get_selectables (start, end, 0, DBL_MAX, touched);
}
selection->set (touched);
- commit_reversible_command ();
+ commit_reversible_selection_op ();
}
void
list<Selectable *> touched;
if (after) {
- start = get_preferred_edit_position();
+ start = get_preferred_edit_position(EDIT_IGNORE_NONE, true);
end = _session->current_end_frame();
} else {
- if ((end = get_preferred_edit_position()) > 1) {
+ if ((end = get_preferred_edit_position(EDIT_IGNORE_NONE, true)) > 1) {
start = 0;
end -= 1;
} else {
}
if (after) {
- begin_reversible_command (_("select all after edit"));
+ begin_reversible_selection_op (X_("select all after edit"));
} else {
- begin_reversible_command (_("select all before edit"));
+ begin_reversible_selection_op (X_("select all before edit"));
}
TrackViewList* ts;
(*iter)->get_selectables (start, end, 0, DBL_MAX, touched);
}
selection->set (touched);
- commit_reversible_command ();
+ commit_reversible_selection_op ();
}
void
-Editor::select_all_selectables_between (bool /*within*/)
+Editor::select_all_selectables_between (bool within)
{
framepos_t start;
framepos_t end;
if ((*iter)->hidden()) {
continue;
}
- (*iter)->get_selectables (start, end, 0, DBL_MAX, touched);
+ (*iter)->get_selectables (start, end, 0, DBL_MAX, touched, within);
}
+ begin_reversible_selection_op (X_("Select all Selectables Between"));
selection->set (touched);
+ commit_reversible_selection_op ();
}
void
return;
}
+ begin_reversible_selection_op (X_("Select Range Between"));
set_mouse_mode (MouseRange);
selection->set (start, end);
+ commit_reversible_selection_op ();
}
bool
void
Editor::deselect_all ()
{
+ begin_reversible_selection_op (X_("Deselect All"));
selection->clear ();
+ commit_reversible_selection_op ();
}
long
Editor::select_range (framepos_t s, framepos_t e)
{
+ begin_reversible_selection_op (X_("Select Range"));
selection->add (clicked_axisview);
selection->time.clear ();
- return selection->set (s, e);
+ long ret = selection->set (s, e);
+ commit_reversible_selection_op ();
+ return ret;
}