Hello,
Here is a patch that will now paste segments copied from multiple tracks into
tracks starting from the currently selected track. I guess to explain it
better, say I copy segments from tracks 1, 2 and 3 - then select track 5 and
hit paste, the segments will paste to tracks 5, 6 and 7.
--
Levi Burton
http://www.puresimplicity.net/~ldb/
Index: gui/editcommands.cpp
===================================================================
RCS file: /cvsroot/rosegarden/gui/editcommands.cpp,v
retrieving revision 1.52
diff -u -w -r1.52 editcommands.cpp
--- gui/editcommands.cpp 5 May 2003 14:12:27 -0000 1.52
+++ gui/editcommands.cpp 6 Jun 2003 01:04:53 -0000
@@ -231,6 +231,7 @@
// to that as they did before
timeT earliestStartTime = 0;
+ int trackOffset = 0;
for (Rosegarden::Clipboard::iterator i = m_clipboard->begin();
i != m_clipboard->end(); ++i) {
@@ -238,6 +239,7 @@
if (i == m_clipboard->begin() ||
(*i)->getStartTime() < earliestStartTime) {
earliestStartTime = (*i)->getStartTime();
+ trackOffset = (*i)->getTrack();
}
}
@@ -248,7 +250,8 @@
Segment *segment = new Segment(**i);
segment->setStartTime(segment->getStartTime() + offset);
- segment->setTrack(m_composition->getSelectedTrack());
+ segment->setTrack
+ ((m_composition->getSelectedTrack() + segment->getTrack()) - trackOffset);
m_composition->addSegment(segment);
m_addedSegments.push_back(segment);
}