29 virtual void Draw(QPainter& drawContext)
const override;
Simple rectangle with integer bounds.
Definition of rectangle area orthogonal to axis of coordination system.
Definition of position or mathematical vector on 2D plane.
Common interface for model objects, that supports Model/Observer design pattern.
Index implementation for addressing elements in 2D-space.
Set of change flags (its IDs).
Interactive shape object for iview::CSearchArea.
CInteractiveShapeBase BaseClass
virtual i2d::CRect CalcBoundingBox() const override
Calculate bounding box.
virtual TouchState IsTouched(istd::CIndex2d position) const override
Check, if any shape is touched.
virtual void SetLogDragPosition(const i2d::CVector2d &position) override
virtual void Draw(QPainter &drawContext) const override
Draw this shape using draw context.
void CalcPoints(const i2d::CRectangle &rectangle) const
i2d::CVector2d m_ctrlsLeft[4]
i2d::CVector2d m_referencePosition
virtual void InvalidateBoundingBox() override
Invalidate bounding box.
virtual void BeginLogDrag(const i2d::CVector2d &reference) override
virtual bool OnModelAttached(imod::IModel *modelPtr, istd::IChangeable::ChangeSet &changeMask) override
Callback invoked when an observable model is about to be attached to this observer.
virtual bool OnMouseButton(istd::CIndex2d position, Qt::MouseButton buttonType, bool downFlag) override
It is called, when mouse button is pushed down or up on this object.
i2d::CVector2d m_ctrlsRight[4]
virtual bool OnMouseMove(istd::CIndex2d position) override
It is called, when mouse is moved.
i2d::CVector2d m_corners[4]
TouchState
Enumeration for possible shape touch states.
In this library is defined 2D view concept and standard visualisation objects.