1 #ifndef __APPLICATIONWINDOW_H__
2 #define __APPLICATIONWINDOW_H__
11 // Forward declarations
17 class ApplicationWindow: public QMainWindow
19 // All Qt apps require this macro
26 void closeEvent(QCloseEvent * event);
27 void contextMenuEvent(QContextMenuEvent * event);
32 void FileOpenRecent(void);
34 void FileSaveAs(void);
35 void PrintPreview(void);
36 void HandlePrintRequest(QPrinter *);
37 void SnapToGridTool(void);
40 void DeleteTool(void);
41 void DimensionTool(void);
42 void RotateTool(void);
43 void MirrorTool(void);
45 void ParallelTool(void);
46 void TriangulateTool(void);
47 void AddLineTool(void);
48 void AddCircleTool(void);
49 void AddArcTool(void);
50 void AddPolygonTool(void);
51 void AddSplineTool(void);
52 void ZoomInTool(void);
53 void ZoomOutTool(void);
56 void HandleGrouping(void);
57 void HandleConnection(void);
58 void HandleDisconnection(void);
59 void HandleGridSizeInPixels(int);
60 void HandleGridSizeInBaseUnits(QString);
61 void HandleDimensionSize(QString);
65 void SelectAllObjects(void);
66 void UpdateZoom(void);
67 void MoveToLayer(void);
70 void ReloadLayers(void);
73 void LoadFile(QString);
74 void ClearUIToolStatesExcept(QAction *);
75 void SetInternalToolStates(void);
76 void CreateActions(void);
77 QAction * CreateAction(QString name, QString tooltip, QString statustip,
78 QIcon icon, QKeySequence key, bool checkable = false);
79 QAction * CreateAction(QString name, QString tooltip, QString statustip,
80 QIcon icon, QKeySequence key1, QKeySequence key2, bool checkable = false);
81 void CreateMenus(void);
82 void CreateToolbars(void);
83 void ReadSettings(void);
84 void WriteSettings(void);
85 void UpdateMRUActionList(void);
86 void AdjustMRU(const QString & filePath);
88 AboutWindow * aboutWin;
89 QLabel * zoomIndicator;
91 QLineEdit * baseUnitInput;
92 QLineEdit * dimensionSizeInput;
97 QAction * fileOpenAct;
98 QAction * fileSaveAct;
99 QAction * fileSaveAsAct;
100 QAction * fileCloseAct;
102 QAction * settingsAct;
103 QAction * fixAngleAct;
104 QAction * fixLengthAct;
106 QAction * addDimensionAct;
107 QAction * addLineAct;
108 QAction * addCircleAct;
110 QAction * addPolygonAct;
111 QAction * addSplineAct;
115 QAction * zoomOutAct;
116 QAction * snapToGridAct;
118 QAction * connectAct;
119 QAction * disconnectAct;
122 QAction * parallelAct;
123 QAction * triangulateAct;
124 QAction * editCutAct;
125 QAction * editCopyAct;
126 QAction * editPasteAct;
127 QAction * selectAllAct;
128 QAction * printPreviewAct;
129 QList<QAction *> layerAct;
130 QList<QAction *> mruAct;
132 std::vector<void *> clipboard;
136 static DrawingView * drawing;
139 #endif // __APPLICATIONWINDOW_H__