X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fclipmanager.h;h=1fcfa6c6f3dbb450ad62d58b213f878455ee65ec;hb=ccce6a62e32f5974b400f4ae5c2556c1f82ee856;hp=943d6a56e7c6ac3736593f5a4252b986e5879efa;hpb=25a95ff4dba48d6a94c5c1d0d653617b1c327b90;p=kdenlive diff --git a/src/clipmanager.h b/src/clipmanager.h index 943d6a56..1fcfa6c6 100644 --- a/src/clipmanager.h +++ b/src/clipmanager.h @@ -29,6 +29,7 @@ #include #include #include +#include #include #include @@ -73,8 +74,12 @@ Q_OBJECT public: void slotAddClipList(const KUrl::List urls, const QString group, const QString &groupId); void slotAddTextClipFile(const QString titleName, int out, const QString xml, const QString group, const QString &groupId); void slotAddTextTemplateClip(QString titleName, const KUrl path, const QString group, const QString &groupId); + void slotAddXmlClipFile(const QString name, const QDomElement xml, const QString group, const QString &groupId); void slotAddColorClipFile(const QString name, const QString color, QString duration, const QString group, const QString &groupId); - void slotAddSlideshowClipFile(const QString name, const QString path, int count, const QString duration, const bool loop, const bool fade, const QString &luma_duration, const QString &luma_file, const int softness, const QString group, const QString &groupId); + void slotAddSlideshowClipFile(const QString name, const QString path, int count, const QString duration, + const bool loop, const bool crop,const bool fade, + const QString &luma_duration, const QString &luma_file, const int softness, + const QString &animation, const QString group, const QString &groupId); DocClipBase *getClipById(QString clipId); const QList getClipByResource(QString resource); void slotDeleteClips(QStringList ids); @@ -99,13 +104,13 @@ Q_OBJECT public: QDomElement groupsXml() const; int clipsCount() const; -public slots: - void updatePreviewSettings(); - private slots: + /** A clip was externally modified, monitor for more changes and prepare for reload */ void slotClipModified(const QString &path); void slotClipMissing(const QString &path); void slotClipAvailable(const QString &path); + /** Check the list of externally modified clips, and process them if they were not modified in the last 1500 milliseconds */ + void slotProcessModifiedClips(); private: // Private attributes /** the list of clips in the document */ @@ -120,9 +125,14 @@ private: // Private attributes int m_folderIdCounter; QString m_generatingAudioId; KDirWatch m_fileWatcher; + /** Timer used to reload clips when they have been externally modified */ + QTimer m_modifiedTimer; + /** List of the clip IDs that need to be reloaded after being externally modified */ + QMap m_modifiedClips; signals: void reloadClip(const QString &); + void modifiedClip(const QString &); void missingClip(const QString &); void availableClip(const QString &); void checkAllClips();