+ // Set the directories to look into for effects.
+ QStringList direc = KGlobal::dirs()->findDirs("appdata", "effects");
+ // Iterate through effects directories to parse all XML files.
+ for (more = direc.begin(); more != direc.end(); ++more) {
+ QDir directory(*more);
+ QStringList filter;
+ filter << "*.xml";
+ fileList = directory.entryList(filter, QDir::Files);
+ for (it = fileList.begin(); it != fileList.end(); ++it) {
+ itemName = KUrl(*more + *it).path();
+ parseEffectFile(&MainWindow::customEffects,
+ &MainWindow::audioEffects,
+ &MainWindow::videoEffects,
+ itemName, filtersList, producersList, repository);
+ }
+ }
+
+ // Create custom effects
+ for (int i = 0; i < MainWindow::customEffects.count(); ++i) {
+ effectInfo = MainWindow::customEffects.at(i);
+ effectsMap.insert(effectInfo.elementsByTagName("name").item(0).toElement().text().toLower().toUtf8().data(), effectInfo);
+ }
+ MainWindow::customEffects.clearList();
+ foreach(const QDomElement & effect, effectsMap)
+ MainWindow::customEffects.append(effect);
+ effectsMap.clear();
+