]> git.sesse.net Git - kdenlive/commitdiff
Make transitions work
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Wed, 19 Mar 2008 23:25:56 +0000 (23:25 +0000)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Wed, 19 Mar 2008 23:25:56 +0000 (23:25 +0000)
svn path=/branches/KDE4/; revision=2082

src/customtrackview.cpp
src/customtrackview.h

index da85f1fe6fbdf58f7cf1bfc7e92e98d1ac0f298b..bcb43f25463340954807d82e42cc32333a0e8f12 100644 (file)
@@ -123,6 +123,15 @@ void CustomTrackView::wheelEvent(QWheelEvent * e) {
     }
 }
 
+int CustomTrackView::getPreviousVideoTrack(int track) {
+    track = m_tracksList.count() - track - 1;
+    int videoTracksCount = 0;
+    track --;
+    for (int i = track; i > -1; i--) {
+        if (m_tracksList.at(i) == VIDEOTRACK) return i + 1;
+    }
+    return 0;
+}
 
 // virtual
 void CustomTrackView::mouseMoveEvent(QMouseEvent * event) {
@@ -550,8 +559,8 @@ void CustomTrackView::addTransition(int startTrack, GenTime startPos , QDomEleme
             map[attribs.item(i).nodeName()] = attribs.item(i).nodeValue();
     }
 
-    kDebug() << "---- ADDING transition " << e.attribute("type") << ", on tracks " << m_tracksList.count() - e.attribute("transition_track").toInt();
-    m_document->renderer()->mltAddTransition(e.attribute("type"), m_tracksList.count() - e.attribute("transition_track").toInt() - 1, m_tracksList.count() - e.attribute("transition_track").toInt() ,
+    kDebug() << "---- ADDING transition " << e.attribute("type") << ", on tracks " << m_tracksList.count() - e.attribute("transition_track").toInt() << " / " << getPreviousVideoTrack(e.attribute("transition_track").toInt());
+    m_document->renderer()->mltAddTransition(e.attribute("type"), getPreviousVideoTrack(e.attribute("transition_track").toInt()), m_tracksList.count() - e.attribute("transition_track").toInt() ,
             GenTime(e.attribute("start").toInt(), m_document->renderer()->fps()),
             GenTime(e.attribute("end").toInt(), m_document->renderer()->fps()),
             map);
index faa5f753860fd2ad1468fc36089e95cb653e3c3c..f3fe449cb9fc54ea693518d3e15161ac4e830a9a 100644 (file)
@@ -119,6 +119,8 @@ private:
     QMenu *m_timelineContextClipMenu;
     QMenu *m_timelineContextTransitionMenu;
     QList <TRACKTYPE> m_tracksList;
+    /** Get the index of the video track that is just below current track */
+    int getPreviousVideoTrack(int track);
 
 
 signals: