![]() |
ICF 3.0.5.47
Technical documentation of ICF Libraries
|
#include <CParallelogramShape.h>
Public Types | |
typedef CInteractiveShapeBase | BaseClass |
![]() | |
typedef CShapeBase | BaseClass |
![]() | |
enum | ShapeTransformMode { STM_VIEW , STM_SHAPE , STM_COMBINE } |
Describe how shape tranformation is interpreted. More... | |
typedef imod::CSingleModelObserverBase | BaseClass |
![]() | |
typedef imod::IModel | ModelType |
![]() | |
enum | ChangeFlags { CF_CALIB = 0x3663adf } |
Data model change notification flags. More... | |
![]() | |
enum | TouchState { TS_NONE , TS_TRANSPARENT , TS_INACTIVE , TS_TICKER , TS_DRAGGABLE , TS_OTHER , TS_LAST = TS_OTHER } |
Enumeration for possible shape touch states. More... | |
Public Member Functions | |
CParallelogramShape () | |
virtual bool | IsEditableRotation () |
Check, if rotation is editable. | |
virtual void | SetEditableRotation (bool state=true) |
virtual bool | IsEditableWidth () |
Check, if width is editable. | |
virtual void | SetEditableWidth (bool state=true) |
virtual bool | IsEditableHeight () |
Check, if size is editable. | |
virtual void | SetEditableHeight (bool state=true) |
virtual bool | IsEditableAngle () |
Check, if internal angle is editable. | |
virtual void | SetEditableAngle (bool state=true) |
virtual bool | IsProportionalScaled () const |
Check, if both axis will be scaled proportional. | |
virtual void | SetProportionalScaled (bool state=true) |
virtual bool | AreAxesEqual () const |
Check, if it is forced to keep length of both axes equal. | |
virtual void | SetAxesEqual (bool state=true) |
virtual bool | AreAxesOrthogonal () const |
Check, if it is forced to keep both axes orthogonal. | |
virtual void | SetAxesOrthogonal (bool state=true) |
virtual void | InvalidateBoundingBox () |
Invalidate bounding box. | |
virtual TouchState | IsTouched (istd::CIndex2d position) const |
Check, if any shape is touched. | |
virtual void | Draw (QPainter &drawContext) const |
Draw this shape using draw context. | |
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. | |
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. | |
virtual bool | OnMouseMove (istd::CIndex2d position) |
It is called, when mouse is moved. | |
![]() | |
CInteractiveShapeBase () | |
CInteractiveShapeBase (const CInteractiveShapeBase &shape) | |
virtual | ~CInteractiveShapeBase () |
virtual bool | IsEditablePosition () const |
virtual void | SetEditablePosition (bool state=true) |
virtual bool | IsSelected () const |
Check, if this shape is selected. | |
virtual void | SetSelected (bool selectFlag=true) |
Inform that this object was selected or deselected. | |
virtual bool | IsDraggable () const |
Check if drag is enabled. | |
virtual void | BeginDrag (const istd::CIndex2d &position) |
Called before dragging is begin. | |
virtual void | SetDragPosition (const istd::CIndex2d &position) |
Set new drag position. | |
virtual void | EndDrag () |
Called after dragging. | |
virtual bool | OnModelDetached (imod::IModel *modelPtr) |
This call back function will be called, if an observable object is about to be detached. | |
![]() | |
CShapeBase () | |
CShapeBase (const CShapeBase &shape) | |
virtual | ~CShapeBase () |
virtual bool | AssignToLayer (int layerType) |
Assign this shape to same layer. | |
virtual void | Invalidate () |
iview::IDisplay * | GetDisplay () const |
Get access to currently connected display. | |
ShapeTransformMode | GetTransformMode () const |
Get shape transformation mode. | |
void | SetTransformMode (ShapeTransformMode mode) |
Set shape transformation mode. | |
int | GetLayerType () const override |
Get layer type of this shape object. | |
i2d::CRect | GetBoundingBox () const override |
Return bounding box in client window coordinates. | |
void | SetVisible (bool state=true) override |
Make shape to be visible or not. | |
const IColorSchema * | GetUserColorSchema () const override |
Get color schema from view or user defined. | |
void | SetUserColorSchema (const IColorSchema *schemaPtr) override |
Set color schema to draw shape. | |
void | SetDefaultDescription (const QString &description) override |
Set default description will be used to display on console. | |
bool | IsVisible () const override |
Check, if this object is visible. | |
bool | IsDisplayAccepted (const IDisplay &display) const override |
Check if this object can be connected to this display. | |
void | OnDisplayConnected (IDisplay *displayPtr) override |
Called after display is connected. | |
void | OnDisplayDisconnected (IDisplay *displayPtr) override |
Called after display is disconnected. | |
bool | OnDisplayChanged (const istd::IChangeable::ChangeSet &changeSet) override |
It informs about changes in display. | |
ITouchable::TouchState | IsTouched (istd::CIndex2d position) const override |
Check, if any shape is touched. | |
QString | GetShapeDescriptionAt (istd::CIndex2d position) const override |
Get description to shape at specified position. | |
bool | OnModelAttached (imod::IModel *modelPtr, istd::IChangeable::ChangeSet &changeMask) override |
This call back function will be called, if an observable object is about to be attached. | |
bool | OnModelDetached (imod::IModel *modelPtr) override |
This call back function will be called, if an observable object is about to be detached. | |
void | OnUpdate (const istd::IChangeable::ChangeSet &changeSet) override |
Called on update of observed model. | |
![]() | |
CSingleModelObserverBase () | |
virtual | ~CSingleModelObserverBase () |
imod::IModel * | GetObservedModel () const |
Get access to observed model. | |
imod::IModel * | GetModelPtr () const |
Get access to observed model. | |
void | EnsureModelDetached () |
Make sure this observer is detached. | |
void | SetObservedIds (const istd::IChangeable::ChangeSet &changeMask) |
Set list of ID's beeing observed. | |
bool | IsModelAttached (const imod::IModel *modelPtr=nullptr) const override |
Check if specified model is attached. | |
bool | OnModelAttached (imod::IModel *modelPtr, istd::IChangeable::ChangeSet &changeMask) override |
This call back function will be called, if an observable object is about to be attached. | |
bool | OnModelDetached (imod::IModel *modelPtr) override |
This call back function will be called, if an observable object is about to be detached. | |
void | BeforeModelChange (imod::IModel *modelPtr) override |
This function will be called before update of the observer contents occures. | |
void | AfterModelChange (imod::IModel *modelPtr, const istd::IChangeable::ChangeSet &changeSet) override |
This function will be called after update of the observer contents occures. | |
![]() | |
![]() | |
![]() | |
![]() | |
![]() | |
![]() | |
![]() |
Protected Types | |
enum | EditNode { EN_NONE = -1 , EN_NODE11 = 0 , EN_NODE12 = 1 , EN_NODE22 = 2 , EN_NODE21 = 3 , EN_LAST = EN_NODE21 } |
Protected Member Functions | |
void | CalcNodes (const i2d::CAffine2d ¶llTransform) const |
void | ResetNodes () const |
bool | AreNodesValid () const |
const i2d::CVector2d * | GetNodes () const |
virtual void | EnsureValidNodes () const |
virtual bool | IsTickerTouched (istd::CIndex2d position) const |
virtual bool | IsCurveTouched (istd::CIndex2d position) const |
virtual void | DrawTickers (QPainter &drawContext) const |
virtual void | DrawFigure (QPainter &drawContext) const |
virtual i2d::CRect | CalcBoundingBox () const |
Calculate bounding box. | |
virtual void | BeginLogDrag (const i2d::CVector2d &reference) |
virtual void | SetLogDragPosition (const i2d::CVector2d &position) |
![]() | |
void | BeginTickerDrag () |
void | EndTickerDrag () |
void | UpdateModelChanges () |
int | GetKeysState () const |
Get actual keys state. | |
int | GetEditMode () const |
Get actual edit mode. | |
void | DrawText (QPainter &drawContext, istd::CIndex2d point, const QString &text) const |
Draw text on a given position. | |
virtual bool | IsDisplayChangeImportant (const istd::IChangeable::ChangeSet &changeSet) |
Get display changes mask. | |
![]() | |
i2d::CVector2d | GetScreenPosition (const i2d::CVector2d &logPosition) const |
Get screen position based on logical position. | |
i2d::CVector2d | GetLogPosition (const i2d::CVector2d &screenPosition) const |
Get logical position based on screen position. | |
double | GetLocalLineWidth (const i2d::CVector2d &screenPosition) const |
Get line with (in logical coordinates) for single screen position. | |
bool | IsDisplayConnected () const |
Check if display is connected. | |
const IColorSchema & | GetColorSchema () const |
Get color schema for this shape. | |
i2d::CRect | GetClientRect () const |
Get display client rectangle. | |
bool | IsBoundingBoxValid () const |
void | DisconnectDisplay () |
virtual const iview::CScreenTransform & | GetViewToScreenTransform () const |
![]() | |
void | SetModelPtr (imod::IModel *modelPtr) |
Set internal model pointer to specified value. | |
Protected Attributes | |
EditNode | m_editNode |
i2d::CVector2d | m_referencePosition |
Definition at line 20 of file CParallelogramShape.h.
Definition at line 23 of file CParallelogramShape.h.
|
protected |
Enumerator | |
---|---|
EN_NONE | |
EN_NODE11 | |
EN_NODE12 | |
EN_NODE22 | |
EN_NODE21 | |
EN_LAST |
Definition at line 86 of file CParallelogramShape.h.
iview::CParallelogramShape::CParallelogramShape | ( | ) |
|
inlinevirtual |
Check, if it is forced to keep length of both axes equal.
Definition at line 194 of file CParallelogramShape.h.
|
inlinevirtual |
Check, if it is forced to keep both axes orthogonal.
Definition at line 206 of file CParallelogramShape.h.
|
inlineprotected |
Definition at line 220 of file CParallelogramShape.h.
|
protectedvirtual |
Implements iview::CInteractiveShapeBase.
|
protectedvirtual |
Calculate bounding box.
You have to implement this method in your shapes implementations.
Implements iview::CShapeBase.
|
protected |
|
virtual |
Draw this shape using draw context.
Implements iview::IVisualizable.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
inlineprotected |
Definition at line 226 of file CParallelogramShape.h.
|
virtual |
Invalidate bounding box.
You can overload this method to provide validation of your internal attributes, because this method is called from Invalidate
and OnDisplayChanged
methods. Please don't forget base method call in your implementations.
Reimplemented from iview::CShapeBase.
|
protectedvirtual |
|
inlinevirtual |
Check, if internal angle is editable.
Definition at line 170 of file CParallelogramShape.h.
|
inlinevirtual |
Check, if size is editable.
Definition at line 158 of file CParallelogramShape.h.
|
inlinevirtual |
Check, if rotation is editable.
Definition at line 134 of file CParallelogramShape.h.
|
inlinevirtual |
Check, if width is editable.
Definition at line 146 of file CParallelogramShape.h.
|
inlinevirtual |
Check, if both axis will be scaled proportional.
Definition at line 182 of file CParallelogramShape.h.
|
protectedvirtual |
|
virtual |
Check, if any shape is touched.
When shape is touched, it return also pointer to this shape.
Implements iview::ITouchable.
|
virtual |
This call back function will be called, if an observable object is about to be attached.
This function returns a true
, if observable object is accepted by the implementation logic of the observer, otherwise returns false.
modelPtr | pointer to model object being attached. |
changeMask | output parameter returning set of change ID's will be accepted. returns a false . |
Reimplemented from iview::CInteractiveShapeBase.
|
virtual |
It is called, when mouse button is pushed down or up on this object.
position | position of mouse pointer on client area (picture coords). |
buttonType | determine the mouse butten type. |
downFlag | true, if mouse button is pushed down, false if pushed up. |
Reimplemented from iview::CInteractiveShapeBase.
|
virtual |
It is called, when mouse is moved.
Only objects with focus receive this event.
position | - position of mouse pointer on client area (picture coords). |
Reimplemented from iview::CInteractiveShapeBase.
|
protected |
|
inlinevirtual |
Definition at line 200 of file CParallelogramShape.h.
|
inlinevirtual |
Definition at line 212 of file CParallelogramShape.h.
|
inlinevirtual |
Definition at line 176 of file CParallelogramShape.h.
|
inlinevirtual |
Definition at line 164 of file CParallelogramShape.h.
|
inlinevirtual |
Definition at line 140 of file CParallelogramShape.h.
|
inlinevirtual |
Definition at line 152 of file CParallelogramShape.h.
|
protectedvirtual |
Implements iview::CInteractiveShapeBase.
|
inlinevirtual |
Definition at line 188 of file CParallelogramShape.h.
|
protected |
Definition at line 96 of file CParallelogramShape.h.
|
protected |
Definition at line 97 of file CParallelogramShape.h.
© Witold Gantzke and Kirill Lepskiy