36 virtual void Draw(QPainter& drawContext)
const override;
Simple rectangle with integer bounds.
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).
virtual void SetEditableStartAngle(bool editable=true)
virtual void SetEditableRadius(bool editable=true)
virtual bool IsEditableStartAngle() const
bool m_isEditableStartAngle
virtual TouchState IsTouched(istd::CIndex2d position) const override
Check, if any shape is touched.
bool m_isEditableAngleWidth
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 IsCenterVisible() const
virtual void SetCenterVisible(bool state=true)
virtual void SetEditableAngleWidth(bool editable=true)
virtual bool IsEditableRadius() const
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.
virtual void Draw(QPainter &drawContext) const override
Draw this shape using draw context.
virtual bool OnMouseMove(istd::CIndex2d position) override
It is called, when mouse is moved.
CInteractiveShapeBase ShapeBaseClass
virtual bool IsEditableAngleWidth() const
virtual i2d::CRect CalcBoundingBox() const override
Calculate bounding box.
TouchState
Enumeration for possible shape touch states.
In this library is defined 2D view concept and standard visualisation objects.