X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fclipmanager.h;h=943d6a56e7c6ac3736593f5a4252b986e5879efa;hb=25a95ff4dba48d6a94c5c1d0d653617b1c327b90;hp=d5e2bbb34d4f7c6a69076902a0cc930d4aba366c;hpb=7ac1f7b70439ce38c29fb6ff02439f24cb040ccc;p=kdenlive diff --git a/src/clipmanager.h b/src/clipmanager.h index d5e2bbb3..943d6a56 100644 --- a/src/clipmanager.h +++ b/src/clipmanager.h @@ -17,13 +17,15 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * ***************************************************************************/ +/** + * @class ClipManager + * @brief Manages the list of clips in a document. + * @author Jean-Baptiste Mardelle + */ + #ifndef CLIPMANAGER_H #define CLIPMANAGER_H -/**ClipManager manages the list of clips in a document - *@author Jean-Baptiste Mardelle - */ - #include #include #include @@ -55,7 +57,19 @@ Q_OBJECT public: void addClip(DocClipBase *clip); DocClipBase *getClipAt(int pos); void deleteClip(const QString &clipId); + + /** @brief Add a file to the project. + * @ref slotAddClipList + * @param url file to add + * @param group name of the group to insert the file in (can be empty) + * @param groupId id of the group (if any) */ void slotAddClipFile(const KUrl url, const QString group, const QString &groupId); + + /** @brief Adds a list of files to the project. + * @param urls files to add + * @param group name of the group to insert the files in (can be empty) + * @param groupId id of the group (if any) + * It checks for duplicated items and asks to the user for instructions. */ 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); @@ -63,7 +77,7 @@ Q_OBJECT public: 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); DocClipBase *getClipById(QString clipId); const QList getClipByResource(QString resource); - void slotDeleteClip(const QString & clipId); + void slotDeleteClips(QStringList ids); void setThumbsProgress(const QString &message, int progress); void checkAudioThumbs(); QList documentClipList() const; @@ -83,12 +97,15 @@ Q_OBJECT public: AbstractGroupItem *createGroup(); void removeGroup(AbstractGroupItem *group); QDomElement groupsXml() const; + int clipsCount() const; public slots: void updatePreviewSettings(); private slots: void slotClipModified(const QString &path); + void slotClipMissing(const QString &path); + void slotClipAvailable(const QString &path); private: // Private attributes /** the list of clips in the document */ @@ -101,12 +118,13 @@ private: // Private attributes KdenliveDoc *m_doc; int m_clipIdCounter; int m_folderIdCounter; - bool m_audioThumbsEnabled; QString m_generatingAudioId; KDirWatch m_fileWatcher; signals: void reloadClip(const QString &); + void missingClip(const QString &); + void availableClip(const QString &); void checkAllClips(); };