X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Farchivewidget.h;h=de4c1f54ba51021452626f89befd36db604e013b;hb=1feb9c1eff4911301cb3e04bfdeb50a270c95b0c;hp=1fab3e46c209e4e5a8b81605366496bef7cb6b56;hpb=e927a83144e3080773c54f89f3d8ec6e637d47a6;p=kdenlive diff --git a/src/archivewidget.h b/src/archivewidget.h index 1fab3e46..de4c1f54 100644 --- a/src/archivewidget.h +++ b/src/archivewidget.h @@ -26,14 +26,17 @@ #include "docclipbase.h" #include +#include +#include +#include + #include #include #include -#include -#include -#include + class KJob; +class KArchive; /** * @class ArchiveWidget @@ -41,22 +44,26 @@ class KJob; * @author Jean-Baptiste Mardelle */ +#if KDE_IS_VERSION(4,7,0) + class KMessageWidget; +#endif + class ArchiveWidget : public QDialog, public Ui::ArchiveWidget_UI { Q_OBJECT public: - ArchiveWidget(QString projectName, QDomDocument doc, QList list, QStringList luma_list, QWidget * parent = 0); + ArchiveWidget(const QString &projectName, const QDomDocument &doc, const QList &list, const 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(); + QString extractedProjectFile() const; 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(); @@ -66,6 +73,12 @@ private slots: void slotStartExtracting(); void doExtracting(); void slotExtractingFinished(); + void slotExtractProgress(); + 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 ); @@ -85,9 +98,18 @@ private: bool m_extractMode; KUrl m_extractUrl; 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); + void generateItems(QTreeWidgetItem *parentItem, const QStringList &items); + /** @brief Generate tree widget subitems from a map of clip ids / urls. */ + void generateItems(QTreeWidgetItem *parentItem, const QMap &items); /** @brief Replace urls in project file. */ bool processProjectFile(); @@ -95,7 +117,7 @@ signals: void archivingFinished(bool); void archiveProgress(int); void extractingFinished(); - + void showMessage(const QString &, const QString &); };