5e253f3e7dd18c44240a30f590710ccf9653ba8c
[vlp.git] / src / edit / editor.h
1 #ifndef QWERTY_H
2 #define QWERTY_H
3
4 #include <QtGui/QTextEdit>
5 #include <QtGui/QMainWindow>
6 #include <QtGui/QLineEdit>
7 #include <QtGui/QPushButton>
8 #include <QtGui/QLabel>
9
10
11 #include "ui/editor.h"
12
13 #define COMP_MODE       1
14 #define GEN_MODE        2
15 #define ALL_MODE        3
16
17 typedef struct {
18         char name[255];
19         char filename[255];
20 } FuncEntry;
21
22 typedef struct {
23         QList<FuncEntry> dictionary;
24         QStringList names;
25         char name[255];
26 } CategoryEntry;
27
28 class My_Edit : public QTextEdit {
29         Q_OBJECT
30 public:
31         My_Edit(QWidget *parent = 0, const char *name = 0);
32         virtual void keyPressEvent(QKeyEvent *ev);
33 signals:
34         void cursorMove();
35 };
36
37 class Editor : public QMainWindow, private Ui::EditorWindow {
38         Q_OBJECT
39 public:
40         QString compiler_path;
41         QString gen_path;
42         QString file_path;
43
44         Editor(char *hdir = 0, QWidget *parent = 0);
45         ~Editor();
46
47         void compile(int mode);
48
49 public slots:
50         void load();
51         void load(const char *fileName);
52         void save();
53         void save(const char *fileName);
54         void save_as();
55         void create();
56         void props();
57         void print();
58         void cmp();
59         void gen();
60         void comp_all();
61
62         void log_unit();
63         void log_prog();
64
65         void findText();
66 //      void find_next();
67         //void gotoline();
68         void updateline();
69
70 protected:
71         void resizeEvent(QResizeEvent *);
72         virtual void closeEvent (QCloseEvent * e);
73 private:
74         My_Edit *e;
75         QTextEdit *msg;
76         QLabel *position;
77         QString fname;
78         QString find_text;
79         bool sensitive;
80         char HomeDir[255];
81
82 private slots:
83         void on_actionNew_triggered();
84         void on_actionOpen_triggered();
85         void on_actionSave_triggered();
86         void on_actionSave_as_triggered();
87         void on_actionQuit_triggered();
88         void on_actionCopy_triggered();
89         void on_actionPaste_triggered();
90         void on_actionCut_triggered();
91         void on_actionClear_all_triggered();
92         void on_actionFind_triggered();
93         void on_actionFind_Next_triggered();
94 };
95
96 #endif // QWERTY_H