X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fapplicationwindow.h;h=8b9921818107f041f690443d450326acda88e484;hb=41644f6a841b45cb6f1f7a96c93fd550f67a7974;hp=b695c1ed06059ac72c6cc618b946e03d4ec466a0;hpb=c85958d34fac175452fe420ff24ea82f26d6f1f3;p=architektonas diff --git a/src/applicationwindow.h b/src/applicationwindow.h index b695c1e..8b99218 100644 --- a/src/applicationwindow.h +++ b/src/applicationwindow.h @@ -1,15 +1,19 @@ #ifndef __APPLICATIONWINDOW_H__ #define __APPLICATIONWINDOW_H__ -#include +#include +#include + +// Useful definitions + +#define MRU_MAX 10 // Forward declarations -//class EditWindow; -//class CharWindow; class AboutWindow; class DrawingView; class QLabel; +class ConsoleWidget; class ApplicationWindow: public QMainWindow { @@ -21,12 +25,16 @@ class ApplicationWindow: public QMainWindow protected: void closeEvent(QCloseEvent * event); + void contextMenuEvent(QContextMenuEvent * event); private slots: void FileNew(void); void FileOpen(void); + void FileOpenRecent(void); void FileSave(void); void FileSaveAs(void); + void PrintPreview(void); + void HandlePrintRequest(QPrinter *); void SnapToGridTool(void); void FixAngle(void); void FixLength(void); @@ -35,6 +43,8 @@ class ApplicationWindow: public QMainWindow void RotateTool(void); void MirrorTool(void); void TrimTool(void); + void ParallelTool(void); + void TriangulateTool(void); void AddLineTool(void); void AddCircleTool(void); void AddArcTool(void); @@ -44,14 +54,26 @@ class ApplicationWindow: public QMainWindow void ZoomOutTool(void); void HelpAbout(void); void Settings(void); + void DrawingSettings(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); + void MoveToLayer(void); + void UpdateFromCommand(void); + + signals: + void ReloadLayers(void); private: + void LoadFile(QString); void ClearUIToolStatesExcept(QAction *); void SetInternalToolStates(void); void CreateActions(void); @@ -63,12 +85,15 @@ class ApplicationWindow: public QMainWindow void CreateToolbars(void); void ReadSettings(void); void WriteSettings(void); + void UpdateMRUActionList(void); + void AdjustMRU(const QString & filePath); AboutWindow * aboutWin; QLabel * zoomIndicator; QString documentName; QLineEdit * baseUnitInput; QLineEdit * dimensionSizeInput; + ConsoleWidget * cw; QSettings settings; @@ -79,6 +104,7 @@ class ApplicationWindow: public QMainWindow QAction * fileCloseAct; QAction * exitAct; QAction * settingsAct; + QAction * drawingSettingsAct; QAction * fixAngleAct; QAction * fixLengthAct; QAction * deleteAct; @@ -98,6 +124,17 @@ class ApplicationWindow: public QMainWindow QAction * disconnectAct; QAction * mirrorAct; QAction * trimAct; + QAction * parallelAct; + QAction * triangulateAct; + QAction * editCutAct; + QAction * editCopyAct; + QAction * editPasteAct; + QAction * selectAllAct; + QAction * printPreviewAct; + QList layerAct; + QList mruAct; + + std::vector clipboard; // Class variables public: