X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=src%2Fdocumentchecker.h;h=60c4fd4fa194fc7dcbf901636ab4c9cb45e95a2a;hb=3c844989ad9fdb96bb9258a990a9874773b3d792;hp=e6341e3cba8a34c9c7079bec24741671970245c2;hpb=05d5da65489ab125958e4f62ded8987bcf4989aa;p=kdenlive diff --git a/src/documentchecker.h b/src/documentchecker.h index e6341e3c..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(QDomNodeList producers, QDomNodeList infoproducers, 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); };