virtual bool Collided(Vector);
virtual void PointerMoved(Vector);
virtual void PointerReleased(void);
- void SetDimensionOnPoint1(Dimension *);
- void SetDimensionOnPoint2(Dimension *);
+// void SetDimensionOnPoint1(Dimension *);
+// void SetDimensionOnPoint2(Dimension *);
+ void SetDimensionOnLine(Dimension * d = 0);
+
+ protected:
+ bool HitTest(Point);
+ void SaveState(void);
+ bool StateChanged(void);
protected:
Vector endpoint; // Starting point is Object::position
Vector oldPoint; // Used for dragging
private:
- bool dragging;
+ bool draggingLine;
bool draggingHandle1;
bool draggingHandle2;
bool objectWasDragged;
double length;
+ Vector angle;
+ bool hitPoint1, hitPoint2, hitLine;
+ bool oldHitPoint1, oldHitPoint2, oldHitLine;
};
#endif // __LINE_H__