]> git.sesse.net Git - kdenlive/blobdiff - src/databackup/backupwidget.cpp
When opening the backup dialog from an empty project, display all available files...
[kdenlive] / src / databackup / backupwidget.cpp
index 31c07ad719edc8fa4d9f5ab24b1a4661782484be..64e4a88bad025dbacc9e4147346d6e173bdfe8f0 100644 (file)
 
 
 BackupWidget::BackupWidget(KUrl projectUrl, KUrl projectFolder, const QString projectId, QWidget * parent) :
-        QDialog(parent),
-        m_url(projectUrl)
+        QDialog(parent)
 {
     setupUi(this);
     setWindowTitle(i18n("Restore Backup File"));
 
     KUrl backupFile;
-    m_projectWildcard = projectUrl.fileName().section('.', 0, -2);
-    project_url->setUrl(projectFolder);
-    if (!projectId.isEmpty()) m_projectWildcard.append("-" + projectId);
+
+    if (projectUrl.isEmpty()) {
+        // No url, means we opened the backup dialog from an empty project
+        info_label->setText(i18n("Showing all backup files in folder"));
+        m_projectWildcard = "*";
+    }
     else {
-        // No project id, it was lost, add wildcard
-        m_projectWildcard.append("*");
+        info_label->setText(i18n("Showing backup files for %1", projectUrl.fileName()));
+        m_projectWildcard = projectUrl.fileName().section('.', 0, -2);
+        if (!projectId.isEmpty()) m_projectWildcard.append("-" + projectId);
+        else {
+            // No project id, it was lost, add wildcard
+            m_projectWildcard.append("*");
+        }
     }
+    project_url->setUrl(projectFolder);
     m_projectWildcard.append("-??");
     m_projectWildcard.append("??");
     m_projectWildcard.append("-??");
@@ -74,10 +82,17 @@ void BackupWidget::slotParseBackupFiles()
     QStringList results;
     backup_list->clear();
     QListWidgetItem *item;
+    QString label;
     for (int i = 0; i < resultList.count(); i++) {
-        item = new QListWidgetItem(resultList.at(i).lastModified().toString(Qt::DefaultLocaleLongDate), backup_list);
+        label = resultList.at(i).lastModified().toString(Qt::SystemLocaleLongDate);
+        if (m_projectWildcard.startsWith("*")) {
+            // Displaying all backup files, so add project name in the entries
+            label.prepend(resultList.at(i).fileName().section("-", 0, -7) + ".kdenlive - ");
+        }
+        item = new QListWidgetItem(label, backup_list);
         item->setData(Qt::UserRole, resultList.at(i).absoluteFilePath());
     }
+    buttonBox->button(QDialogButtonBox::Open)->setEnabled(backup_list->count() > 0);
 }
 
 void BackupWidget::slotDisplayBackupPreview()