1 #ifndef __APPLICATIONWINDOW_H__
2 #define __APPLICATIONWINDOW_H__
11 // Forward declarations
18 class ApplicationWindow: public QMainWindow
20 // All Qt apps require this macro
27 void closeEvent(QCloseEvent * event);
28 void contextMenuEvent(QContextMenuEvent * event);
33 void FileOpenRecent(void);
35 void FileSaveAs(void);
36 void PrintPreview(void);
37 void HandlePrintRequest(QPrinter *);
38 void SnapToGridTool(void);
41 void DeleteTool(void);
42 void DimensionTool(void);
43 void RotateTool(void);
44 void MirrorTool(void);
46 void ParallelTool(void);
47 void TriangulateTool(void);
48 void AddLineTool(void);
49 void AddCircleTool(void);
50 void AddArcTool(void);
51 void AddPolygonTool(void);
52 void AddSplineTool(void);
53 void ZoomInTool(void);
54 void ZoomOutTool(void);
57 void DrawingSettings(void);
58 void HandleGrouping(void);
59 void HandleConnection(void);
60 void HandleDisconnection(void);
61 void HandleGridSizeInPixels(int);
62 void HandleGridSizeInBaseUnits(QString);
63 void HandleDimensionSize(QString);
67 void SelectAllObjects(void);
68 void UpdateZoom(void);
69 void MoveToLayer(void);
70 void UpdateFromCommand(void);
73 void ReloadLayers(void);
76 void LoadFile(QString);
77 void ClearUIToolStatesExcept(QAction *);
78 void SetInternalToolStates(void);
79 void CreateActions(void);
80 QAction * CreateAction(QString name, QString tooltip, QString statustip,
81 QIcon icon, QKeySequence key, bool checkable = false);
82 QAction * CreateAction(QString name, QString tooltip, QString statustip,
83 QIcon icon, QKeySequence key1, QKeySequence key2, bool checkable = false);
84 void CreateMenus(void);
85 void CreateToolbars(void);
86 void ReadSettings(void);
87 void WriteSettings(void);
88 void UpdateMRUActionList(void);
89 void AdjustMRU(const QString & filePath);
91 AboutWindow * aboutWin;
92 QLabel * zoomIndicator;
94 QLineEdit * baseUnitInput;
95 QLineEdit * dimensionSizeInput;
100 QAction * fileNewAct;
101 QAction * fileOpenAct;
102 QAction * fileSaveAct;
103 QAction * fileSaveAsAct;
104 QAction * fileCloseAct;
106 QAction * settingsAct;
107 QAction * drawingSettingsAct;
108 QAction * fixAngleAct;
109 QAction * fixLengthAct;
111 QAction * addDimensionAct;
112 QAction * addLineAct;
113 QAction * addCircleAct;
115 QAction * addPolygonAct;
116 QAction * addSplineAct;
120 QAction * zoomOutAct;
121 QAction * snapToGridAct;
123 QAction * connectAct;
124 QAction * disconnectAct;
127 QAction * parallelAct;
128 QAction * triangulateAct;
129 QAction * editCutAct;
130 QAction * editCopyAct;
131 QAction * editPasteAct;
132 QAction * selectAllAct;
133 QAction * printPreviewAct;
134 QList<QAction *> layerAct;
135 QList<QAction *> mruAct;
137 std::vector<void *> clipboard;
141 static DrawingView * drawing;
144 #endif // __APPLICATIONWINDOW_H__