]> git.sesse.net Git - kdenlive/blob - src/kdenlivedoc.h
start implementing folders in project view
[kdenlive] / src / kdenlivedoc.h
1 /***************************************************************************
2                          krender.h  -  description
3                             -------------------
4    begin                : Fri Nov 22 2002
5    copyright            : (C) 2002 by Jason Wood
6    email                : jasonwood@blueyonder.co.uk
7 ***************************************************************************/
8
9 /***************************************************************************
10  *                                                                         *
11  *   This program is free software; you can redistribute it and/or modify  *
12  *   it under the terms of the GNU General Public License as published by  *
13  *   the Free Software Foundation; either version 2 of the License, or     *
14  *   (at your option) any later version.                                   *
15  *                                                                         *
16  ***************************************************************************/
17
18 #ifndef KDENLIVEDOC_H
19 #define KDENLIVEDOC_H
20
21 #include <qdom.h>
22 #include <qstring.h>
23 #include <qmap.h>
24 #include <QList>
25 #include <QObject>
26
27 #include <KUndoStack>
28 #include <kurl.h>
29
30 #include "gentime.h"
31 #include "timecode.h"
32 #include "renderer.h"
33
34 class KdenliveDoc:public QObject {
35   Q_OBJECT public:
36
37     KdenliveDoc(KUrl url, double fps, int width, int height, QWidget *parent = 0);
38     ~KdenliveDoc();
39     QString documentName();
40     QDomNodeList producersList();
41     double fps();
42     int width();
43     int height();
44     KUrl url();
45     void setProducers(QDomElement doc);
46     Timecode timecode();
47     QDomDocument toXml();
48     void setRenderer(Render *render);
49     KUndoStack *commandStack();
50
51   private:
52     KUrl m_url;
53     QDomDocument m_document;
54     QString m_projectName;
55     double m_fps;
56     int m_width;
57     int m_height;
58     Timecode m_timecode;
59     Render *m_render;
60     KUndoStack *m_commandStack;
61     QDomDocument generateSceneList();
62
63   public slots:
64     
65 };
66
67 #endif