]> git.sesse.net Git - kdenlive/commitdiff
In the Add Clip file dialog, allow to display "supported files" only or "all files":
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Sat, 4 Apr 2009 10:38:26 +0000 (10:38 +0000)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Sat, 4 Apr 2009 10:38:26 +0000 (10:38 +0000)
http://www.kdenlive.org:80/mantis/view.php?id=736

svn path=/trunk/kdenlive/; revision=3208

src/projectlist.cpp

index 86b2d430041b38534a21ffe2a85e6a4d5f35612a..5ff295cfcedfa61b89e5321f5ed6bfd480255640 100644 (file)
@@ -568,7 +568,21 @@ void ProjectList::slotAddClip(const QList <QUrl> givenList, QString group)
     if (!m_commandStack) kDebug() << "!!!!!!!!!!!!!!!! NO CMD STK";
     KUrl::List list;
     if (givenList.isEmpty()) {
-        list = KFileDialog::getOpenUrls(KUrl("kfiledialog:///clipfolder"), "application/x-kdenlive video/x-flv application/vnd.rn-realmedia video/x-dv video/dv video/x-msvideo video/x-matroska video/mpeg video/x-ms-wmv audio/mpeg audio/x-mp3 audio/x-wav application/ogg video/mp4 video/quicktime image/gif image/jpeg image/png image/x-tga image/x-bmp image/svg+xml image/tiff image/x-xcf-gimp image/x-vnd.adobe.photoshop image/x-pcx image/x-exr video/mlt-playlist audio/x-flac audio/mp4 video/x-matroska audio/x-matroska", this);
+        // Build list of mime types
+        QStringList mimeTypes = QStringList() << "application/x-kdenlive" << "video/x-flv" << "application/vnd.rn-realmedia" << "video/x-dv" << "video/dv" << "video/x-msvideo" << "video/x-matroska" << "video/mpeg" << "video/x-ms-wmv" << "audio/mpeg" << "audio/x-mp3" << "audio/x-wav" << "application/ogg" << "video/mp4" << "video/quicktime" << "image/gif" << "image/jpeg" << "image/png" << "image/x-tga" << "image/x-bmp" << "image/svg+xml" << "image/tiff" << "image/x-xcf-gimp" << "image/x-vnd.adobe.photoshop" << "image/x-pcx" << "image/x-exr" << "video/mlt-playlist" << "audio/x-flac" << "audio/mp4" << "video/x-matroska" << "audio/x-matroska";
+
+        QString allExtensions;
+        foreach(const QString& mimeType, mimeTypes) {
+            KMimeType::Ptr mime(KMimeType::mimeType(mimeType));
+            if (mime) {
+                allExtensions.append(mime->patterns().join(" "));
+                allExtensions.append(' ');
+            }
+        }
+        QString dialogFilter = allExtensions + ' ' + QLatin1Char('|') + i18n("All Supported Files");
+        dialogFilter.append("\n*" + QLatin1Char('|') + i18n("All Files"));
+        list = KFileDialog::getOpenUrls(KUrl("kfiledialog:///clipfolder"), dialogFilter, this);
+
     } else {
         for (int i = 0; i < givenList.count(); i++)
             list << givenList.at(i);