]> Shamusworld >> Repos - architektonas/blobdiff - src/drawingview.h
Added line-to-circle intersection code.
[architektonas] / src / drawingview.h
index c8e46ff627fe6fb70be0d860bbca4efa2c910ce8..cf70e400967a247ca8fbb73ad2d14da3cb686600 100644 (file)
@@ -20,7 +20,7 @@ class DrawingView: public QWidget
                void SetGridSize(uint32_t);
                void UpdateGridBackground(void);
                Point SnapPointToGrid(Point);
-               void RenderObjects(Painter *, std::vector<void *> &);
+               void RenderObjects(Painter *, std::vector<void *> &, int);
                void AddHoveredToSelection(void);
                void GetSelection(std::vector<void *> &);
                void GetHovered(std::vector<void *> &);
@@ -28,13 +28,17 @@ class DrawingView: public QWidget
                void ToolDraw(Painter *);
                void LineHandler(int, Point);
                void CircleHandler(int, Point);
+               void ArcHandler(int, Point);
                void RotateHandler(int, Point);
+               void MirrorHandler(int, Point);
                void CheckObjectBounds(void);
                bool HitTestObjects(Point);
                void HandleObjectMovement(Point);
 
        public slots:
-               void SetCurrentLayer(int);
+               void DeleteCurrentLayer(int);
+               void HandleLayerToggle(void);
+               void HandleLayerSwap(int, int);
 
        protected:
                void paintEvent(QPaintEvent * event);
@@ -76,6 +80,8 @@ class DrawingView: public QWidget
                std::vector<void *> toolObjects;
                std::vector<Object> toolScratch;
                Point toolPoint[32];
+               Point intersectionPoint;
+               bool hoveringIntersection;
 
 //     public:
 //             static Container document;