timeline: optimized pointer tool ctrl+drop

This commit is contained in:
itsmattkc
2020-06-06 17:50:23 +10:00
parent aaee2ab9ed
commit be784591fc
4 changed files with 158 additions and 67 deletions
@@ -248,21 +248,11 @@ void TimelineWidget::PointerTool::FinishDrag(TimelineViewMouseEvent *event)
InsertGapsAtGhostDestination(parent()->ghost_items_, command);
}
/*
QList<TrackReference> tracks_affected;
*/
// Now we can re-add each clip
for (int i=0;i<ghosts_moving.size();i++) {
TimelineViewGhostItem* ghost = ghosts_moving.at(i);
Block* block = blocks_moving.at(i);
/*
if (!tracks_affected.contains(ghost->GetAdjustedTrack())) {
tracks_affected.append(ghost->GetAdjustedTrack());
}
*/
if (duplicate_clips) {
// Duplicate rather than move
Node* copy = block->copy();
@@ -275,11 +265,6 @@ void TimelineWidget::PointerTool::FinishDrag(TimelineViewMouseEvent *event)
// Place the copy instead of the original block
block = static_cast<Block*>(copy);
/*
} else if (!tracks_affected.contains(ghost->Track())) {
// Block moved from its original position. Mark its track as affected.
tracks_affected.append(ghost->Track());
*/
}
const TrackReference& track_ref = ghost->GetAdjustedTrack();
@@ -290,14 +275,6 @@ void TimelineWidget::PointerTool::FinishDrag(TimelineViewMouseEvent *event)
command);
}
/*
foreach (const TrackReference& t, tracks_affected) {
new TrackCleanGapsCommand(parent()->GetConnectedNode()->track_list(t.type()),
t.index(),
command);
}
*/
// FIXME: Heavy optimization since MOST of the timeline does NOT change in this time
}