X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fdocumentchecker.h;h=60c4fd4fa194fc7dcbf901636ab4c9cb45e95a2a;hb=56aee6aedeeed3efd10ada8fe3c229eddc01ef05;hp=4994579f5db54161662f65a70e07ef874d9cf861;hpb=1ff3782c29b50388d6be822ac560b48cc8835477;p=kdenlive diff --git a/src/documentchecker.h b/src/documentchecker.h index 4994579f..60c4fd4f 100644 --- a/src/documentchecker.h +++ b/src/documentchecker.h @@ -34,9 +34,9 @@ class DocumentChecker: public QObject Q_OBJECT public: - explicit DocumentChecker(QDomNodeList infoproducers, QDomDocument doc); + explicit DocumentChecker(const QDomNodeList &infoproducers, const QDomDocument &doc); ~DocumentChecker(); - bool hasMissingClips(); + bool hasErrorInClips(); private slots: void acceptDialog(); @@ -45,21 +45,29 @@ private slots: void slotPlaceholders(); void slotDeleteSelected(); QString getProperty(QDomElement effect, const QString &name); - void setProperty(QDomElement effect, const QString &name, const QString value); - QString searchLuma(QString file) const; - void checkMissingImages(QList &missingClips, QStringList images, QStringList fonts, QString id, QString baseClip); + 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: 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); };