]> Shamusworld >> Repos - architektonas/blobdiff - src/dimension.h
Fixed Dimension class to rotate, translate & mirror correctly.
[architektonas] / src / dimension.h
index 9a9b3d48c024e4e4f35666304f281a4e19492f74..b3993b0413856b858106b7a7d408cca38aba02c4 100644 (file)
@@ -19,9 +19,14 @@ class Dimension: public Object
                virtual void Draw(Painter *);
                virtual Vector Center(void);
                virtual bool Collided(Vector);
-               virtual void PointerMoved(Vector);
+               virtual bool PointerMoved(Vector);
                virtual void PointerReleased(void);
                virtual bool HitTest(Point);
+               virtual void Translate(Vector);
+               virtual void Rotate(Point, double);
+               virtual void Mirror(Point, Point);
+               virtual void Save(void);
+               virtual void Restore(void);
                virtual void Enumerate(FILE *);
                virtual Object * Copy(void);
                virtual Vector GetPointAtParameter(double parameter);
@@ -50,7 +55,9 @@ class Dimension: public Object
                bool hitPoint2;
                bool hitLine;
                bool hitFlipSwitch;
-               bool oldHitPoint1, oldHitPoint2, oldHitLine, oldHitFlipSwitch;
+               bool hitChangeSwitch1;
+               bool hitChangeSwitch2;
+               bool oldHitPoint1, oldHitPoint2, oldHitLine, oldHitFlipSwitch, oldHitChangeSwitch1, oldHitChangeSwitch2;
        public:
                double size;                                            // Size of arrows/text in base units
 };