]> Shamusworld >> Repos - architektonas/blobdiff - src/drawingview.h
Fixed click selection and pen functionality.
[architektonas] / src / drawingview.h
index 0c6cc46cf76d18390d908dd8447e7b4661355ac9..5906766d35b6bd459e0c2ccf9cdca55405a2f60a 100644 (file)
@@ -19,16 +19,13 @@ class DrawingView: public QWidget
 
        public:
                void DrawBackground(Painter *);
-//             void SetGridSize(uint32_t);
-//             void SetGridSize(double);
-//             void UpdateGridBackground(void);
-//             void UpdateGridBackgroundF(void);
                Point SnapPointToGrid(Point);
                Point SnapPointToAngle(Point);
                void RenderObjects(Painter *, VPVector &, int, bool ignoreLayer = false);
-               void AddHoveredToSelection(void);
+               void HandleSelectionClick(VPVector &);
                VPVector GetSelection(void);
-               VPVector GetHovered(void);
+               VPVector GetHovered(bool exclude = false);
+               void MoveSelectedToLayer(int);
                void ToolHandler(int, Point);
                void ToolDraw(Painter *);
                void LineHandler(int, Point);
@@ -37,6 +34,7 @@ class DrawingView: public QWidget
                void RotateHandler(int, Point);
                void MirrorHandler(int, Point);
                void DimensionHandler(int, Point);
+               void DeleteHandler(int, Point);
                void TriangulateHandler(int, Point);
                void TrimHandler(int, Point);
                void ParallelHandler(int, Point);
@@ -52,9 +50,7 @@ class DrawingView: public QWidget
                void DeleteCurrentLayer(int);
                void HandleLayerToggle(void);
                void HandleLayerSwap(int, int);
-               void HandlePenWidth(float);
-               void HandlePenStyle(int);
-               void HandlePenColor(uint32_t);
+               void HandleLayerSwap(int, int, VPVector &);
                void HandlePenStamp(QAction *);
                void HandlePenDropper(QAction *);
 
@@ -76,7 +72,6 @@ class DrawingView: public QWidget
                void keyReleaseEvent(QKeyEvent * event);
 
        private:
-               void HandleLayerSwap(int, int, VPVector &);
                void DrawSubGrid(Painter *, uint32_t, double, Vector, Vector);
                QPoint GetAdjustedMousePosition(QMouseEvent * event);
                QPoint GetAdjustedClientPosition(int x, int y);
@@ -95,12 +90,11 @@ class DrawingView: public QWidget
                bool supressSelected;
                QCursor curMarker;
                QCursor curDropper;
+               uint32_t currentSelect;
        public:
                Container document;
                uint32_t gridPixels;                                    // Grid size in pixels
                double gridPixelsF;                                             // Grid size in pixels (float)
-//     private:
-       public:
                bool collided;
                bool scrollDrag;
                Vector oldPoint;
@@ -112,8 +106,10 @@ class DrawingView: public QWidget
                VPVector toolObjects;
                std::vector<Object> toolScratch;
                VPVector toolScratch2;
+               VPVector oldHover;
                Point toolPoint[32];
                Object * toolObj[32];
+               double toolParam[32];
                Point intersectionPoint;
                Point hoverPoint;
                bool hoverPointValid;
@@ -126,4 +122,3 @@ class DrawingView: public QWidget
 };
 
 #endif // __DRAWINGVIEW_H__
-