]> Shamusworld >> Repos - architektonas/blobdiff - src/applicationwindow.h
Changes to make containers behave like a first-class object.
[architektonas] / src / applicationwindow.h
index 89fb9aa3e6edf703c61b776ad794869f965cc0ff..d10e4dd6c791a1b9db83481912bf6d68e0c99516 100644 (file)
@@ -1,12 +1,10 @@
 #ifndef __APPLICATIONWINDOW_H__
 #define __APPLICATIONWINDOW_H__
 
-#include <QtGui>
+#include <QtWidgets>
 
 // Forward declarations
 
-//class EditWindow;
-//class CharWindow;
 class AboutWindow;
 class DrawingView;
 class QLabel;
@@ -21,6 +19,7 @@ class ApplicationWindow: public QMainWindow
 
        protected:
                void closeEvent(QCloseEvent * event);
+               void contextMenuEvent(QContextMenuEvent * event);
 
        private slots:
                void FileNew(void);
@@ -33,16 +32,30 @@ class ApplicationWindow: public QMainWindow
                void DeleteTool(void);
                void DimensionTool(void);
                void RotateTool(void);
+               void MirrorTool(void);
+               void TrimTool(void);
+               void TriangulateTool(void);
                void AddLineTool(void);
                void AddCircleTool(void);
                void AddArcTool(void);
                void AddPolygonTool(void);
+               void AddSplineTool(void);
                void ZoomInTool(void);
                void ZoomOutTool(void);
                void HelpAbout(void);
                void Settings(void);
                void HandleGrouping(void);
+               void HandleConnection(void);
+               void HandleDisconnection(void);
                void HandleGridSizeInPixels(int);
+               void HandleGridSizeInBaseUnits(QString);
+               void HandleDimensionSize(QString);
+               void EditCut(void);
+               void EditCopy(void);
+               void EditPaste(void);
+
+       signals:
+               void ReloadLayers(void);
 
        private:
                void ClearUIToolStatesExcept(QAction *);
@@ -57,10 +70,11 @@ class ApplicationWindow: public QMainWindow
                void ReadSettings(void);
                void WriteSettings(void);
 
-               DrawingView * drawing;
                AboutWindow * aboutWin;
                QLabel * zoomIndicator;
                QString documentName;
+               QLineEdit * baseUnitInput;
+               QLineEdit * dimensionSizeInput;
 
                QSettings settings;
 
@@ -79,12 +93,28 @@ class ApplicationWindow: public QMainWindow
                QAction * addCircleAct;
                QAction * addArcAct;
                QAction * addPolygonAct;
+               QAction * addSplineAct;
                QAction * aboutAct;
                QAction * rotateAct;
                QAction * zoomInAct;
                QAction * zoomOutAct;
                QAction * snapToGridAct;
                QAction * groupAct;
+               QAction * connectAct;
+               QAction * disconnectAct;
+               QAction * mirrorAct;
+               QAction * trimAct;
+               QAction * triangulateAct;
+               QAction * editCutAct;
+               QAction * editCopyAct;
+               QAction * editPasteAct;
+
+               std::vector<void *> clipboard;
+
+       // Class variables
+       public:
+               static DrawingView * drawing;
 };
 
 #endif // __APPLICATIONWINDOW_H__
+