X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fdocumentchecker.h;h=60c4fd4fa194fc7dcbf901636ab4c9cb45e95a2a;hb=56aee6aedeeed3efd10ada8fe3c229eddc01ef05;hp=5742890a006443e3ddbd61be60db069784606042;hpb=9c94de263f52fc5de385fafbbe277edc9ec3a9bf;p=kdenlive diff --git a/src/documentchecker.h b/src/documentchecker.h index 5742890a..60c4fd4f 100644 --- a/src/documentchecker.h +++ b/src/documentchecker.h @@ -29,27 +29,45 @@ #include -class DocumentChecker : public QDialog +class DocumentChecker: public QObject { Q_OBJECT public: - explicit DocumentChecker(QList missingClips, QDomDocument doc, QWidget * parent = 0); + explicit DocumentChecker(const QDomNodeList &infoproducers, const QDomDocument &doc); ~DocumentChecker(); + bool hasErrorInClips(); private slots: - virtual void accept(); + void acceptDialog(); void slotSearchClips(); void slotEditItem(QTreeWidgetItem *item, int); void slotPlaceholders(); void slotDeleteSelected(); + QString getProperty(QDomElement effect, const QString &name); + void setProperty(QDomElement effect, const QString &name, const QString &value); + QString searchLuma(const QDir &dir, const QString &file) const; + /** @brief Check if images and fonts in this clip exists, returns a list of images that do exist so we don't check twice. */ + void checkMissingImagesAndFonts(const QStringList &images, const QStringList &fonts, const QString &id, const QString &baseClip); + void slotCheckButtons(); + /** @brief Fix duration mismatch issues. */ + void slotFixDuration(); private: - Ui::MissingClips_UI m_view; + QDomNodeList m_info; QDomDocument m_doc; + Ui::MissingClips_UI m_ui; + QDialog *m_dialog; + QString searchPathRecursively(const QDir &dir, const QString &fileName) const; QString searchFileRecursively(const QDir &dir, const QString &matchSize, const QString &matchHash) const; void checkStatus(); - + QMap m_missingTitleImages; + QMap m_missingTitleFonts; + QList m_missingClips; + QStringList m_safeImages; + QStringList m_safeFonts; + + void fixClipItem(QTreeWidgetItem *child, QDomNodeList producers, QDomNodeList infoproducers, QDomNodeList trans); };