]> Shamusworld >> Repos - architektonas/blobdiff - src/drawingview.h
Added object pane, grouping, load/save functionality.
[architektonas] / src / drawingview.h
index cf70e400967a247ca8fbb73ad2d14da3cb686600..780c81214bf81c360bf53901478fb1421d390d6d 100644 (file)
@@ -3,6 +3,7 @@
 
 #include <QtWidgets>
 #include <stdint.h>
+#include "rect.h"
 #include "structs.h"
 
 enum { ToolMouseDown, ToolMouseMove, ToolMouseUp, ToolKeyDown, ToolKeyUp, ToolCleanup };
@@ -20,7 +21,7 @@ class DrawingView: public QWidget
                void SetGridSize(uint32_t);
                void UpdateGridBackground(void);
                Point SnapPointToGrid(Point);
-               void RenderObjects(Painter *, std::vector<void *> &, int);
+               void RenderObjects(Painter *, std::vector<void *> &, int, bool ignoreLayer = false);
                void AddHoveredToSelection(void);
                void GetSelection(std::vector<void *> &);
                void GetHovered(std::vector<void *> &);
@@ -31,8 +32,10 @@ class DrawingView: public QWidget
                void ArcHandler(int, Point);
                void RotateHandler(int, Point);
                void MirrorHandler(int, Point);
+               Rect GetObjectExtents(Object *);
                void CheckObjectBounds(void);
                bool HitTestObjects(Point);
+               bool HitTest(Object *, Point);
                void HandleObjectMovement(Point);
 
        public slots:
@@ -40,6 +43,9 @@ class DrawingView: public QWidget
                void HandleLayerToggle(void);
                void HandleLayerSwap(int, int);
 
+       signals:
+               void ObjectHovered(Object *);
+
        protected:
                void paintEvent(QPaintEvent * event);
                void resizeEvent(QResizeEvent * event);
@@ -56,7 +62,7 @@ class DrawingView: public QWidget
 
        public:
                bool useAntialiasing;
-               uint32_t numSelected;
+//             uint32_t numSelected;
                uint32_t numHovered;
                bool shiftDown;
                bool ctrlDown;