]> git.sesse.net Git - kdenlive/blobdiff - src/effectslist.cpp
Change clip speed (slowmotion) - not finished yet, saving does not work
[kdenlive] / src / effectslist.cpp
index 92ea77c33013f3e67d66f02a2299806ff4cfdf9a..91deb31ab5be956eb63065a0c62c48bb2f0a4407 100644 (file)
@@ -56,7 +56,8 @@ QDomElement EffectsList::getEffectByName(const QString & name) const {
             QDomNodeList params = effect.elementsByTagName("parameter");
             for (int i = 0; i < params.count(); i++) {
                 QDomElement e = params.item(i).toElement();
-                e.setAttribute("value", e.attribute("default"));
+                if (!e.hasAttribute("value"))
+                    e.setAttribute("value", e.attribute("default"));
             }
             return effect;
         }
@@ -73,23 +74,25 @@ QDomElement EffectsList::getEffectByTag(const QString & tag, const QString & id)
                 QDomNodeList params = effect.elementsByTagName("parameter");
                 for (int i = 0; i < params.count(); i++) {
                     QDomElement e = params.item(i).toElement();
-                    e.setAttribute("value", e.attribute("default"));
+                    if (!e.hasAttribute("value"))
+                        e.setAttribute("value", e.attribute("default"));
                 }
                 return effect;
             }
         }
 
-    for (int i = 0; i < this->size(); ++i) {
-        QDomElement effect =  this->at(i);
-        if (effect.attribute("tag") == tag) {
-            QDomNodeList params = effect.elementsByTagName("parameter");
-            for (int i = 0; i < params.count(); i++) {
-                QDomElement e = params.item(i).toElement();
-                e.setAttribute("value", e.attribute("default"));
+    if (!tag.isEmpty()) for (int i = 0; i < this->size(); ++i) {
+            QDomElement effect =  this->at(i);
+            if (effect.attribute("tag") == tag) {
+                QDomNodeList params = effect.elementsByTagName("parameter");
+                for (int i = 0; i < params.count(); i++) {
+                    QDomElement e = params.item(i).toElement();
+                    if (!e.hasAttribute("value"))
+                        e.setAttribute("value", e.attribute("default"));
+                }
+                return effect;
             }
-            return effect;
         }
-    }
 
     return QDomElement();
 }