]> git.sesse.net Git - kdenlive/blobdiff - src/initeffects.cpp
Another attempt to fix effects order problem, issue:
[kdenlive] / src / initeffects.cpp
index 1fec379f6840e447b539f81632734c55e02c7049..8ec8551a87bf468f9e5ad22ce50d8dd2bc0e8cd5 100644 (file)
@@ -92,11 +92,27 @@ Mlt::Repository *initEffects::parseEffectFiles() {
     if (file.open(QIODevice::ReadOnly)) {
         QTextStream in(&file);
         while (!in.atEnd()) {
-            blackListed.append(in.readLine().simplified());
+            QString black = in.readLine().simplified();
+            if (!black.isEmpty() && !black.startsWith('#')) blackListed.append(black);
         }
     }
     file.close();
 
+    // Check for blacklisted transitions
+    blacklist = KStandardDirs::locate("appdata", "blacklisted_transitions.txt");
+
+    QFile file2(blacklist);
+    QStringList blackListedtransitions;
+
+    if (file2.open(QIODevice::ReadOnly)) {
+        QTextStream in(&file2);
+        while (!in.atEnd()) {
+            QString black = in.readLine().simplified();
+            if (!black.isEmpty() && !black.startsWith('#')) blackListedtransitions.append(black);
+        }
+    }
+    file2.close();
+
     for (int i = 0 ; i < filters->count() ; i++) {
         filtersList << filters->get_name(i);
     }
@@ -117,6 +133,10 @@ Mlt::Repository *initEffects::parseEffectFiles() {
         transitionsItemList << transitions->get_name(i);
     }
     delete transitions;
+
+    foreach(const QString &trans, blackListedtransitions) {
+        if (transitionsItemList.contains(trans)) transitionsItemList.removeAll(trans);
+    }
     fillTransitionsList(repository, &MainWindow::transitions, transitionsItemList);
 
     KGlobal::dirs()->addResourceType("ladspa_plugin", 0, "lib/ladspa");