]> git.sesse.net Git - kdenlive/blobdiff - src/archivewidget.h
Rewrite screen capture to use FFmpeg instead of recordMyDesktop, fixes many issues...
[kdenlive] / src / archivewidget.h
index e76aa669255c604749797f57666629cb32a62695..a6f71944a1f89112f0d88acab367e4e9865b621b 100644 (file)
 #include "docclipbase.h"
 
 #include <kio/global.h>
+#include <KIO/CopyJob>
+#include <KTemporaryFile>
+#include <kdeversion.h>
+
 #include <QLabel>
 #include <QDialog>
 #include <QList>
-#include <KIO/CopyJob>
-#include <KTemporaryFile>
+
 
 class KJob;
 class KArchive;
@@ -41,6 +44,10 @@ class KArchive;
  * @author Jean-Baptiste Mardelle
  */
 
+#if KDE_IS_VERSION(4,7,0)
+    class KMessageWidget;
+#endif
+
 class ArchiveWidget : public QDialog, public Ui::ArchiveWidget_UI
 {
     Q_OBJECT
@@ -48,7 +55,7 @@ class ArchiveWidget : public QDialog, public Ui::ArchiveWidget_UI
 public:
     ArchiveWidget(QString projectName, QDomDocument doc, QList <DocClipBase*> list, QStringList luma_list, QWidget * parent = 0);
     // Constructor for extracting widget
-    ArchiveWidget(const KUrl &url, QWidget * parent = 0);
+    explicit ArchiveWidget(const KUrl &url, QWidget * parent = 0);
     ~ArchiveWidget();
 
     QString extractedProjectFile();
@@ -56,7 +63,7 @@ public:
 private slots:
     void slotCheckSpace();
     bool slotStartArchiving(bool firstPass = true);
-    void slotArchivingFinished(KJob *job = NULL);
+    void slotArchivingFinished(KJob *job = NULL, bool finished = false);
     void slotArchivingProgress(KJob *, qulonglong);
     virtual void done ( int r );
     bool closeAccepted();
@@ -70,6 +77,8 @@ private slots:
     void slotGotProgress(KJob*);
     void openArchiveForExtraction();
     void slotDisplayMessage(const QString &icon, const QString &text);
+    void slotJobResult(bool success, const QString &text);
+    void slotProxyOnly(int onlyProxy);
 
 protected:
     virtual void closeEvent ( QCloseEvent * e );
@@ -91,9 +100,16 @@ private:
     QString m_projectName;
     QTimer *m_progressTimer;
     KArchive *m_extractArchive;
+    int m_missingClips;
+    
+#if KDE_IS_VERSION(4,7,0)
+    KMessageWidget *m_infoMessage;
+#endif
 
     /** @brief Generate tree widget subitems from a string list of urls. */
     void generateItems(QTreeWidgetItem *parentItem, QStringList items);
+    /** @brief Generate tree widget subitems from a map of clip ids / urls. */
+    void generateItems(QTreeWidgetItem *parentItem, QMap <QString, QString> items);
     /** @brief Replace urls in project file. */
     bool processProjectFile();