]> git.sesse.net Git - kdenlive/blobdiff - src/initeffects.cpp
Copy the boolean heuristic detection from effects to transitions.
[kdenlive] / src / initeffects.cpp
index c706f6a6e1acaed516ad1d954478c5d7ff97981b..a9dd406bf302b2489c558395a4a98d60f8c330df 100644 (file)
@@ -27,7 +27,7 @@
 #include <KStandardDirs>
 
 #include <QFile>
-#include <qregexp.h>
+#include <QRegExp>
 #include <QDir>
 #include <QIcon>
 
@@ -353,7 +353,7 @@ void initEffects::parseCustomEffectsFile()
 }
 
 // static
-void initEffects::parseEffectFile(EffectsList *customEffectList, EffectsList *audioEffectList, EffectsList *videoEffectList, QString name, QStringList filtersList, QStringList producersList, Mlt::Repository *repository)
+void initEffects::parseEffectFile(EffectsList *customEffectList, EffectsList *audioEffectList, EffectsList *videoEffectList, const QString &name, QStringList filtersList, QStringList producersList, Mlt::Repository *repository)
 {
     QDomDocument doc;
     QFile file(name);
@@ -391,8 +391,8 @@ void initEffects::parseEffectFile(EffectsList *customEffectList, EffectsList *au
             for (int j = 0; j < params.count(); j++) {
                 QDomNamedNodeMap attrs = params.at(j).attributes();
                 for (int k = 0; k < attrs.count(); k++) {
-                    QString name = attrs.item(k).nodeName();
-                    if (name != "type" && name != "name") {
+                    QString nodeName = attrs.item(k).nodeName();
+                    if (nodeName != "type" && nodeName != "name") {
                             QString val = attrs.item(k).nodeValue();
                             if (val.contains(oldSeparator)) {
                                 QString newVal = val.replace(oldSeparator, separator);
@@ -617,8 +617,12 @@ void initEffects::fillTransitionsList(Mlt::Repository *repository, EffectsList *
                 if (paramdesc.get("minimum"))
                     params.setAttribute("min", paramdesc.get("minimum"));
                 if (QString(paramdesc.get("type")) == "integer") {
-                    params.setAttribute("type", "constant");
-                    params.setAttribute("factor", "100");
+                    if (params.attribute("min") == "0" && params.attribute("max") == "1")
+                        params.setAttribute("type", "bool");
+                    else {
+                        params.setAttribute("type", "constant");
+                        params.setAttribute("factor", "100");
+                    }
                 }
                 if (QString(paramdesc.get("type")) == "boolean")
                     params.setAttribute("type", "bool");