[Summary] Reworked range selection according to PRD

[Details] Eliminated range selection relation to track header selection
Made range drag with region cut/copy reversible
Fixed bugs

Still to do with range selection: shift+click support, Enable Group Edit operation
This commit is contained in:
GZharun 2014-12-04 14:59:26 +02:00
parent 5d4d42b1fa
commit 930b87d8e1
10 changed files with 102 additions and 96 deletions

View file

@ -1005,13 +1005,6 @@ Editor::track_selection_changed ()
(*j)->set_selected (std::find (selection->tracks.begin(), selection->tracks.end(), j->get()) != selection->tracks.end());
}
if (yn) {
(*i)->reshow_selection (selection->time);
} else {
(*i)->hide_selection ();
}
if (yn) {
RouteTimeAxisView* rtav = dynamic_cast<RouteTimeAxisView*> (*i);
if (rtav) {
@ -1060,9 +1053,13 @@ Editor::time_selection_changed ()
(*i)->hide_selection ();
}
for (TrackSelection::iterator i = selection->tracks.begin(); i != selection->tracks.end(); ++i) {
(*i)->show_selection (selection->time);
}
{ // Now show time range selection on all affected tracks
TrackViewList& track_to_process = selection->time.tracks_in_range;
TrackViewList::iterator i = track_to_process.begin();
for (; i != track_to_process.end(); ++i) {
(*i)->show_selection (selection->time);
}
}
if (selection->time.empty()) {
ActionManager::set_sensitive (ActionManager::time_selection_sensitive_actions, false);