]> git.sesse.net Git - kdenlive/blobdiff - src/clipmanager.h
Cache timeline thumbnails for faster project opening, should solve:
[kdenlive] / src / clipmanager.h
index fe708e96c5d3c78eecfbfe7b5dc4a457026301f9..8e127b32b454efa75ea12573ab108056035a002e 100644 (file)
 
 #include "gentime.h"
 #include "definitions.h"
-#include "docclipbase.h"
 
-class KdenliveDoc;
 
+class KdenliveDoc;
+class DocClipBase;
 
-class ClipManager:public QObject {
-  Q_OBJECT public:
+class ClipManager: public QObject {
+Q_OBJECT public:
 
 
     ClipManager(KdenliveDoc *doc);
     virtual ~ ClipManager();
     void addClip(DocClipBase *clip);
     DocClipBase *getClipAt(int pos);
-    void deleteClip(uint clipId);
-    void slotAddClipFile(const KUrl url, const QString group);
-    void slotAddColorClipFile(const QString name, const QString color, QString duration, const QString group);
-    DocClipBase *getClipById(int clipId);
+    void deleteClip(const QString &clipId);
+    void slotAddClipFile(const KUrl url, const QString group, const QString &groupId);
+    void slotAddClipList(const KUrl::List urls, const QString group, const QString &groupId);
+    void slotAddTextClipFile(const QString titleName, const QString imagePath, const QString 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);
+    DocClipBase *getClipById(QString clipId);
+    void slotDeleteClip(const QString & clipId);
+    void setThumbsProgress(const QString &message, int progress);
+    void checkAudioThumbs();
+    QList <DocClipBase*> documentClipList();
+    int getFreeClipId();
+    int lastClipId() const;
+    void startAudioThumbsGeneration();
+    void endAudioThumbsGeneration(const QString &requestedId);
+    void askForAudioThumb(const QString &id);
+    QString projectFolder() const;
 
-  private:                     // Private attributes
+private:   // Private attributes
     /** the list of clips in the document */
     QList <DocClipBase*> m_clipList;
+    QList <QString> m_audioThumbsQueue;
     /** the document undo stack*/
     KdenliveDoc *m_doc;
     int m_clipIdCounter;
+    bool m_audioThumbsEnabled;
+    QString m_generatingAudioId;
 
 };