6 class Circle: public Object
9 Circle(Vector, double, Object * p = 0);
12 virtual void Draw(Painter *);
13 virtual Vector Center(void);
14 virtual bool Collided(Vector);
15 virtual void PointerMoved(Vector);
16 virtual void PointerReleased(void);
17 virtual bool HitTest(Point);
18 virtual void Enumerate(FILE *);
19 virtual Object * Copy(void);
20 virtual QRectF Extents(void);
21 virtual void Rotate(Point, double);
22 virtual void Mirror(Point, Point);
23 virtual void Save(void);
24 virtual void Restore(void);
27 void SaveHitState(void);
28 bool HitStateChanged(void);
31 double radius; // Center is Object::position
32 Vector dragPoint; // Used for rendering edge dragging
38 bool objectWasDragged;
39 bool hitCenter, hitCircle;
40 bool oldHitCenter, oldHitCircle;
44 #endif // __CIRCLE_H__