]> git.sesse.net Git - kdenlive/blob - src/projectlist.h
Fix project view thumbnails
[kdenlive] / src / projectlist.h
1 #ifndef PRJECTLIST_H
2 #define PRJECTLIST_H
3
4 #include <QDomNodeList>
5 #include <QToolBar>
6 #include <QTreeWidget>
7
8 #include <KUndoStack>
9 #include <KTreeWidgetSearchLine>
10
11 #include "docclipbase.h"
12 #include "kdenlivedoc.h"
13 #include "renderer.h"
14 #include "timecode.h"
15
16 class ProjectList : public QWidget
17 {
18   Q_OBJECT
19   
20   public:
21     ProjectList(KUndoStack *commandStack, QWidget *parent=0);
22
23     QDomElement producersList();
24     void setRenderer(Render *projectRender);
25
26     void addClip(const QStringList &name, const QDomElement &elem, const int clipId, const KUrl &url = KUrl());
27     void deleteClip(const int clipId);
28
29   public slots:
30     void setDocument(KdenliveDoc *doc);
31     void addProducer(QDomElement producer);
32     void slotReplyGetImage(int clipId, int pos, const QPixmap &pix, int w, int h);
33     void slotReplyGetFileProperties(int clipId, const QMap < QString, QString > &properties, const QMap < QString, QString > &metadata);
34
35
36   private:
37     QTreeWidget *listView;
38     KTreeWidgetSearchLine *searchView;
39     Render *m_render;
40     Timecode m_timecode;
41     double m_fps;
42     QToolBar *m_toolbar;
43     KUndoStack *m_commandStack;
44     int m_clipIdCounter;
45
46   private slots:
47     void slotAddClip();
48     void slotRemoveClip();
49     void slotEditClip();
50     void slotClipSelected();
51     void slotAddColorClip();
52
53   signals:
54     void clipSelected(const QDomElement &);
55     void getFileProperties(const QDomElement&, int);
56 };
57
58 #endif