]> git.sesse.net Git - kdenlive/commitdiff
Don't allow adding the speed effect to tracks.
authorTill Theato <root@ttill.de>
Sun, 2 Oct 2011 12:01:34 +0000 (12:01 +0000)
committerTill Theato <root@ttill.de>
Sun, 2 Oct 2011 12:01:34 +0000 (12:01 +0000)
svn path=/trunk/kdenlive/; revision=5937

src/customtrackview.cpp
src/headertrack.cpp

index ee7c5bd2b7bce246896ed0f6e4c88555ca917013..188d18e7adfef4b9bc73ddff282b772f44cea463 100644 (file)
@@ -1640,6 +1640,11 @@ void CustomTrackView::addEffect(int track, GenTime pos, QDomElement effect)
 {
     if (pos < GenTime()) {
         // Add track effect
+        if (effect.attribute("id") == "speed") {
+            // TODO: uncomment after 0.8.2 release
+            // emit displayMessage(i18n("Cannot add speed effect to track"));
+            return;
+        }
         clearSelection();
         m_document->addTrackEffect(track - 1, effect);
         m_document->renderer()->mltAddTrackEffect(track, getEffectArgs(effect));
index 5dbd39f67b474bfa7d81a444a8d5d98f76241392..b806a01ceb1c20f26d78a9bb77fbb4f52b09bf1e 100644 (file)
@@ -168,8 +168,18 @@ void HeaderTrack::dropEvent(QDropEvent * event)
 //virtual
 void HeaderTrack::dragEnterEvent(QDragEnterEvent *event)
 {
-    if (buttonLock->isChecked()) event->setAccepted(false);
-    else event->setAccepted(event->mimeData()->hasFormat("kdenlive/effectslist"));
+    if (buttonLock->isChecked()) {
+        event->setAccepted(false);
+    } else {
+        if (event->mimeData()->hasFormat("kdenlive/effectslist")) {
+            const QString effects = QString::fromUtf8(event->mimeData()->data("kdenlive/effectslist"));
+            QDomDocument doc;
+            doc.setContent(effects, true);
+            if (doc.documentElement().attribute("id") != "speed") {
+                event->setAccepted(true);
+            }
+        }
+    }
 }
 
 void HeaderTrack::setSelectedIndex(int ix)