]> git.sesse.net Git - kdenlive/blobdiff - src/projectsettings.cpp
Ask to change profile if first clip does not match project profile:
[kdenlive] / src / projectsettings.cpp
index c4e7c817b45b9a5e771b5e4af3ea8356fb89032b..fdfdb832d38f8012ceb17dff0c52f50b9d017ab2 100644 (file)
@@ -63,6 +63,7 @@ ProjectSettings::ProjectSettings(ProjectList *projectlist, QStringList lumas, in
     video_thumbs->setChecked(KdenliveSettings::videothumbnails());
     audio_tracks->setValue(audiotracks);
     video_tracks->setValue(videotracks);
+
     if (readOnlyTracks) {
         video_tracks->setEnabled(false);
         audio_tracks->setEnabled(false);
@@ -139,6 +140,7 @@ void ProjectSettings::slotUpdateFiles(bool cacheOnly)
     // TODO: images used in luma transitions, files used for LADSPA effects?
 
     QStringList allFiles;
+    QStringList allFonts;
     allFiles << m_lumas;
     for (int i = 0; i < list.count(); i++) {
         DocClipBase *clip = list.at(i);
@@ -149,7 +151,9 @@ void ProjectSettings::slotUpdateFiles(bool cacheOnly)
         } else if (!clip->fileURL().isEmpty()) allFiles.append(clip->fileURL().path());
         if (clip->clipType() == TEXT) {
             QStringList images = TitleWidget::extractImageList(clip->getProperty("xmldata"));
+            QStringList fonts = TitleWidget::extractFontList(clip->getProperty("xmldata"));
             allFiles << images;
+            allFonts << fonts;
         } else if (clip->clipType() == PLAYLIST) {
             QStringList files = extractPlaylistUrls(clip->fileURL().path());
             allFiles << files;
@@ -163,11 +167,13 @@ void ProjectSettings::slotUpdateFiles(bool cacheOnly)
             usedSize += clip->fileSize();
         }
     }
-#if QT_VERSION >= 0x040500    
+#if QT_VERSION >= 0x040500
     allFiles.removeDuplicates();
+    allFonts.removeDuplicates();
 #endif
     files_count->setText(QString::number(allFiles.count()));
     files_list->addItems(allFiles);
+    fonts_list->addItems(allFonts);
     used_count->setText(QString::number(used));
     used_size->setText(KIO::convertSize(usedSize));
     unused_count->setText(QString::number(unused));
@@ -190,8 +196,12 @@ void ProjectSettings::slotUpdateDisplay()
     p_fps->setText(values.value("frame_rate_num") + '/' + values.value("frame_rate_den"));
     p_aspect->setText(values.value("sample_aspect_num") + '/' + values.value("sample_aspect_den"));
     p_display->setText(values.value("display_aspect_num") + '/' + values.value("display_aspect_den"));
-    if (values.value("progressive").toInt() == 0) p_progressive->setText(i18n("Interlaced"));
-    else p_progressive->setText(i18n("Progressive"));
+    if (values.value("progressive").toInt() == 0) {
+        p_progressive->setText(i18n("Interlaced (%1 fields per second)",
+                                    QString::number((double)2*values.value("frame_rate_num").toInt()/values.value("frame_rate_den").toInt(), 'f', 2)));
+    } else {
+        p_progressive->setText(i18n("Progressive"));
+    }
 }
 
 void ProjectSettings::slotUpdateButton(const QString &path)
@@ -231,6 +241,7 @@ bool ProjectSettings::enableAudioThumbs() const
     return audio_thumbs->isChecked();
 }
 
+
 //static
 QStringList ProjectSettings::extractPlaylistUrls(QString path)
 {