From 0e956b06c34437c19d02ce3a36926cfb69be442e Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Mardelle Date: Wed, 22 Oct 2008 19:11:28 +0000 Subject: [PATCH 1/1] Allow transition blacklist, add Composition to fix: http://www.kdenlive.org:80/mantis/view.php?id=252 svn path=/branches/KDE4/; revision=2534 --- data/CMakeLists.txt | 2 +- data/blacklisted_transitions.txt | 1 + src/initeffects.cpp | 18 ++++++++++++++++++ 3 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 data/blacklisted_transitions.txt diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt index 656b7e78..2287e6d9 100644 --- a/data/CMakeLists.txt +++ b/data/CMakeLists.txt @@ -1 +1 @@ -install(FILES banner.png timeline_nothumbs.png timeline_athumbs.png timeline_vthumbs.png timeline_avthumbs.png transition.png metadata.properties blacklisted_effects.txt DESTINATION ${DATA_INSTALL_DIR}/kdenlive ) +install(FILES banner.png timeline_nothumbs.png timeline_athumbs.png timeline_vthumbs.png timeline_avthumbs.png transition.png metadata.properties blacklisted_effects.txt blacklisted_transitions.txt DESTINATION ${DATA_INSTALL_DIR}/kdenlive ) diff --git a/data/blacklisted_transitions.txt b/data/blacklisted_transitions.txt new file mode 100644 index 00000000..088ab0c5 --- /dev/null +++ b/data/blacklisted_transitions.txt @@ -0,0 +1 @@ +frei0r.composition diff --git a/src/initeffects.cpp b/src/initeffects.cpp index 1fec379f..748ce6d4 100644 --- a/src/initeffects.cpp +++ b/src/initeffects.cpp @@ -97,6 +97,20 @@ Mlt::Repository *initEffects::parseEffectFiles() { } 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()) { + blackListedtransitions.append(in.readLine().simplified()); + } + } + file2.close(); + for (int i = 0 ; i < filters->count() ; i++) { filtersList << filters->get_name(i); } @@ -117,6 +131,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"); -- 2.39.2