]> Shamusworld >> Repos - architektonas/blob - src/applicationwindow.h
Added preliminary zooming and panning.
[architektonas] / src / applicationwindow.h
1 #ifndef __APPLICATIONWINDOW_H__
2 #define __APPLICATIONWINDOW_H__
3
4 #include <QtGui>
5
6 // Forward declarations
7
8 //class EditWindow;
9 //class CharWindow;
10 class AboutWindow;
11 class DrawingView;
12
13 class ApplicationWindow: public QMainWindow
14 {
15         // All Qt apps require this macro
16         Q_OBJECT
17
18         public:
19                 ApplicationWindow();
20
21         protected:
22                 void closeEvent(QCloseEvent * event);
23
24         private slots:
25 //              void FileOpen();
26                 void FixAngle(void);
27                 void FixLength(void);
28                 void DeleteTool(void);
29                 void DimensionTool(void);
30                 void RotateTool(void);
31                 void ZoomInTool(void);
32                 void ZoomOutTool(void);
33                 void HelpAbout(void);
34                 void Settings(void);
35
36         private:
37                 void CreateActions(void);
38                 QAction * CreateAction(QString name, QString tooltip, QString statustip,
39                         QIcon icon, QKeySequence key, bool checkable = false);
40                 QAction * CreateAction2(QString name, QString tooltip, QString statustip,
41                         QIcon icon, QKeySequence key1, QKeySequence key2, bool checkable = false);
42                 void CreateMenus(void);
43                 void CreateToolbars(void);
44                 void ReadSettings(void);
45                 void WriteSettings(void);
46
47                 DrawingView * drawing;
48                 AboutWindow * aboutWin;
49
50                 QSettings settings;
51
52                 QAction * fileNewAct;
53                 QAction * fileOpenAct;
54                 QAction * fileSaveAct;
55                 QAction * fileSaveAsAct;
56                 QAction * fileCloseAct;
57                 QAction * exitAct;
58                 QAction * settingsAct;
59                 QAction * fixAngleAct;
60                 QAction * fixLengthAct;
61                 QAction * deleteAct;
62                 QAction * addDimensionAct;
63                 QAction * addLineAct;
64                 QAction * addCircleAct;
65                 QAction * addArcAct;
66                 QAction * aboutAct;
67                 QAction * rotateAct;
68                 QAction * zoomInAct;
69                 QAction * zoomOutAct;
70 };
71
72 #endif  // __APPLICATIONWINDOW_H__