]> git.sesse.net Git - kdenlive/blob - src/mainwindow.h
New undo history widget
[kdenlive] / src / mainwindow.h
1 #ifndef MAINWINDOW_H
2 #define MAINWINDOW_H
3  
4 #include <QDockWidget>
5 #include <QUndoView>
6
7 #include <KXmlGuiWindow>
8 #include <KTextEdit>
9 #include <KListWidget>
10 #include <KTabWidget>
11 #include <KUndoStack>
12
13 #include "projectlist.h"
14 #include "monitor.h"
15 #include "monitormanager.h"
16 #include "kdenlivedoc.h"
17 #include "trackview.h"
18
19 class MainWindow : public KXmlGuiWindow
20 {
21   Q_OBJECT
22   
23   public:
24     MainWindow(QWidget *parent=0);
25     void openFile(const QString &inputFileName);
26   
27   private:
28     KTabWidget* m_timelineArea;
29     void setupActions();
30     QString fileName;
31     KdenliveDoc *m_activeDocument;
32     MonitorManager *m_monitorManager;
33
34     QDockWidget *projectListDock;
35     ProjectList *m_projectList;
36
37     QDockWidget *effectListDock;
38     KListWidget *effectList;
39
40     QDockWidget *effectStackDock;
41     KListWidget *effectStack;
42
43     QDockWidget *transitionConfigDock;
44     KListWidget *transitionConfig;
45
46     QDockWidget *clipMonitorDock;
47     Monitor *m_clipMonitor;
48
49     QDockWidget *projectMonitorDock;
50     Monitor *m_projectMonitor;
51
52     QDockWidget *undoViewDock;
53     QUndoView *m_undoView;
54     KUndoStack *m_commandStack;
55     QAction *m_undo;
56     QAction *m_redo;
57  
58   private slots:
59     void newFile();
60     void activateDocument();
61     void connectDocument(TrackView*, KdenliveDoc*);
62     void openFile();
63     void saveFile();
64     void saveFileAs();
65     void saveFileAs(const QString &outputFileName);
66     void slotPreferences();
67     void slotConnectMonitors();
68     void slotRaiseMonitor(bool clipMonitor);
69 };
70  
71 #endif