6#ifndef iview_CRectangleShape_included
7#define iview_CRectangleShape_included
34 virtual void Draw(QPainter& drawContext)
const;
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).
Base class of shape implementation with user interaction.
Interactive shape object for iview::CSearchArea.
virtual TouchState IsTouched(istd::CIndex2d position) const
Check, if any shape is touched.
virtual void SetLogDragPosition(const i2d::CVector2d &position)
virtual void Draw(QPainter &drawContext) const
Draw this shape using draw context.
virtual void BeginLogDrag(const i2d::CVector2d &reference)
virtual bool OnMouseMove(istd::CIndex2d position)
It is called, when mouse is moved.
virtual void InvalidateBoundingBox()
Invalidate bounding box.
i2d::CVector2d m_ctrlsLeft[4]
i2d::CVector2d m_referencePosition
virtual void CalcPoints(const i2d::CRectangle &rectangle) const
virtual i2d::CRect CalcBoundingBox() const
Calculate bounding box.
CInteractiveShapeBase BaseClass
virtual bool OnMouseButton(istd::CIndex2d position, Qt::MouseButton buttonType, bool downFlag)
It is called, when mouse button is pushed down or up on this object.
i2d::CVector2d m_ctrlsRight[4]
virtual bool OnModelAttached(imod::IModel *modelPtr, istd::IChangeable::ChangeSet &changeMask)
This call back function will be called, if an observable object is about to be attached.
i2d::CVector2d m_corners[4]
TouchState
Enumeration for possible shape touch states.
In this library is defined 2D view concept and standard visualisation objects.