]> Shamusworld >> Repos - architektonas/blobdiff - src/drawingview.h
Fix DrawArcAction to actually allow creation of Arcs.
[architektonas] / src / drawingview.h
index 989693c870f76477774de10890d0bee1ac2ba0e4..44420e9e08216fe2f325201d008e4e4139f21843 100644 (file)
@@ -15,8 +15,15 @@ class DrawingView: public QWidget
 
        public:
                void SetRotateToolActive(bool state = true);
+#if 0
                void SetAddLineToolActive(bool state = true);
                void SetAddCircleToolActive(bool state = true);
+               void SetAddArcToolActive(bool state = true);
+               void SetAddDimensionToolActive(bool state = true);
+#endif
+//             void SetToolActive(Action * action, bool state = true);
+               void SetToolActive(Action * action);//, bool state = true);
+               void SetGridSize(uint32_t);
                void UpdateGridBackground(void);
 
        public slots:
@@ -24,6 +31,7 @@ class DrawingView: public QWidget
 
        protected:
                void paintEvent(QPaintEvent * event);
+               void resizeEvent(QResizeEvent * event);
                void mousePressEvent(QMouseEvent * event);
                void mouseMoveEvent(QMouseEvent * event);
                void mouseReleaseEvent(QMouseEvent * event);
@@ -31,6 +39,7 @@ class DrawingView: public QWidget
        private:
                QPoint GetAdjustedMousePosition(QMouseEvent * event);
                QPoint GetAdjustedClientPosition(int x, int y);
+               Vector SnapPointToGrid(Vector);
 
        public:
                bool useAntialiasing;
@@ -40,9 +49,11 @@ class DrawingView: public QWidget
                QPixmap gridBackground;
                double scale;                                                   // Window scaling factor
                int32_t offsetX, offsetY;                               // Window offsets
-               Container document;
        public:
-               double gridSpacing;
+               Container document;
+               double gridSpacing;                                             // Grid spacing in base units
+               uint32_t gridPixels;                                    // Grid size in pixels
+//             double gridBaseUnits;                                   // Grid size in base units
        private:
                bool collided;
 //Should this go into Object's class variables???
@@ -52,25 +63,12 @@ class DrawingView: public QWidget
                Vector oldPoint;
                bool addLineTool;
                bool addCircleTool;
-               Action * toolAction;
-/*             QSize minimumSizeHint() const;
-               QSize sizeHint() const;
-
-       private:
-               void CreateCursors(void);
-               QPoint GetAdjustedMousePosition(QMouseEvent * event);
-               QPoint GetAdjustedClientPosition(int x, int y);
-
-               QImage image;
-               QPoint pt, ptOffset, ptPrevious;
-               ToolType tool;                                                  // Current tool
-               GlyphPoints pts;                                                // Glyph point structure
-               int32 ptHighlight, oldPtHighlight, ptNextHighlight, oldPtNextHighlight;
-               bool polyFirstPoint;
+               bool addDimensionTool;
+//             bool selectionInProgress;
+//             QRectF selection;
 
-               ToolWindow * toolPalette;
-               QCursor cur[8];
-*/
+       public:
+               Action * toolAction;
 };
 
 #endif // __DRAWINGVIEW_H__