]> git.sven.stormbind.net Git - sven/vym.git/blob - src/scripteditor.h
New upstream version 2.9.22
[sven/vym.git] / src / scripteditor.h
1 #ifndef SCRIPTEDITOR_H
2 #define SCRIPTEDITOR_H
3
4 #include "codeeditor.h"
5 #include "highlighter.h"
6 #include "ui_scripteditor.h"
7
8 class VymModel;
9
10 class ScriptEditor : public QWidget {
11     Q_OBJECT
12
13   public:
14     enum Mode { Slide, File };
15
16   private:
17     Mode mode;
18     uint vymModelID;
19     uint slideID;
20
21   public:
22     ScriptEditor(QWidget *parent = 0);
23     QString getScriptFile();
24     void setSlideScript(uint vymModelID, uint slideID, const QString &);
25
26   public slots:
27     void runMacro();
28     void runSlide();
29     void runScript();
30     void saveSlide();
31     void reloadMacros();
32     void saveMacros();
33     bool loadScript(QString fn = "");
34     void saveScript();
35     void saveScriptAs();
36
37   signals:
38     void runScript(QString);
39
40   private:
41     Ui::ScriptEditor ui;
42     CodeEditor *slideEditor;
43     CodeEditor *macroEditor;
44     CodeEditor *codeEditor;
45     QString filename;
46     Highlighter *highlighterMacro;
47     Highlighter *highlighterSlide;
48     Highlighter *highlighterFile;
49 };
50
51 #endif