X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fapplicationwindow.h;h=a83e93722202aab35a421bccbdde683752d6d428;hb=5d8c9e52606315fbfe857f2715b8f051b4f97491;hp=8322abced90307c2f43a834567b2754baae67a76;hpb=70297ac8ec7453e4196f4b58056bcfe4b04f2aca;p=architektonas diff --git a/src/applicationwindow.h b/src/applicationwindow.h index 8322abc..a83e937 100644 --- a/src/applicationwindow.h +++ b/src/applicationwindow.h @@ -1,12 +1,11 @@ #ifndef __APPLICATIONWINDOW_H__ #define __APPLICATIONWINDOW_H__ -#include +#include +#include // Forward declarations -//class EditWindow; -//class CharWindow; class AboutWindow; class DrawingView; class QLabel; @@ -21,30 +20,48 @@ class ApplicationWindow: public QMainWindow protected: void closeEvent(QCloseEvent * event); + void contextMenuEvent(QContextMenuEvent * event); private slots: void FileNew(void); void FileOpen(void); void FileSave(void); void FileSaveAs(void); + void PrintPreview(void); + void HandlePrintRequest(QPrinter *); void SnapToGridTool(void); void FixAngle(void); void FixLength(void); void DeleteTool(void); void DimensionTool(void); void RotateTool(void); + void MirrorTool(void); + void TrimTool(void); + void ParallelTool(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); + void SelectAllObjects(void); + void UpdateZoom(void); + + signals: + void ReloadLayers(void); private: void ClearUIToolStatesExcept(QAction *); @@ -59,7 +76,6 @@ class ApplicationWindow: public QMainWindow void ReadSettings(void); void WriteSettings(void); - DrawingView * drawing; AboutWindow * aboutWin; QLabel * zoomIndicator; QString documentName; @@ -83,6 +99,7 @@ class ApplicationWindow: public QMainWindow QAction * addCircleAct; QAction * addArcAct; QAction * addPolygonAct; + QAction * addSplineAct; QAction * aboutAct; QAction * rotateAct; QAction * zoomInAct; @@ -91,6 +108,21 @@ class ApplicationWindow: public QMainWindow QAction * groupAct; QAction * connectAct; QAction * disconnectAct; + QAction * mirrorAct; + QAction * trimAct; + QAction * parallelAct; + QAction * triangulateAct; + QAction * editCutAct; + QAction * editCopyAct; + QAction * editPasteAct; + QAction * selectAllAct; + QAction * printPreviewAct; + + std::vector clipboard; + + // Class variables + public: + static DrawingView * drawing; }; #endif // __APPLICATIONWINDOW_H__