|
ACF $AcfVersion:0$
|
Abstract base class for all calibrated view. More...
#include <CCalibratedViewBase.h>
Public Types | |
| typedef CViewBase | BaseClass |
Public Types inherited from iview::CViewBase | |
| enum | ZoomMode { ZM_RESET , ZM_ZOOM_IN , ZM_ZOOM_OUT , ZM_FIT , ZM_FIT_COVER , ZM_FIT_UNPROP , ZM_FIT_H , ZM_FIT_V } |
Public Types inherited from iview::IShapeView | |
| typedef IShapeObserver | BaseClass |
Public Types inherited from iview::IDisplay | |
| enum | ChangeFlags { CF_TRANSFORM = 0x3f67360 , CF_COLORS , CF_SIZE , CF_EDIT_MODE , CF_DISPLAY_MODE , CS_CONSOLE } |
| Define possible display change flags. More... | |
Public Types inherited from iview::ISelectable | |
| enum | MousePointerMode { MPM_NONE , MPM_DEFAULT , MPM_DESELECT , MPM_POINTER , MPM_WAIT , MPM_CROSS , MPM_HAND , MPM_DRAG , MPM_SCREEN_MOVE , MPM_ADD , MPM_LAST } |
| Defines possible states of mouse pointer. More... | |
| enum | EditMode { EM_NONE = 0 , EM_MOVE = 1 , EM_ADD = 2 , EM_REMOVE = 3 , EM_LAST = 100 } |
| Describes standard edit modes. More... | |
| enum | DisplayMode { DM_DEFAULT = 0 } |
| Describes standard display modes. More... | |
| typedef QSet< IInteractiveShape * > | SelectedShapes |
Public Types inherited from iview::ITouchable | |
| enum | TouchState { TS_NONE , TS_INACTIVE , TS_TICKER , TS_DRAGGABLE , TS_AREA , TS_OTHER , TS_LAST = TS_OTHER } |
| Enumeration for possible shape touch states. More... | |
Public Types inherited from istd::IChangeable | |
| enum | ChangeFlags { CF_ACF_INTERNAL = 0 , CF_ALL_DATA , CF_ANY , CF_DESTROYING , CF_DELEGATED , CF_NO_UNDO } |
| Data model change notification flags. More... | |
| enum | SupportedOperations { SO_NONE = 0 , SO_OBSERVE = 1 << 0 , SO_COPY = 1 << 1 , SO_CLONE = 1 << 2 , SO_COMPARE = 1 << 3 , SO_RESET = 1 << 4 } |
| Flags for supported operations. More... | |
| enum | CompatibilityMode { CM_STRICT , CM_WITHOUT_REFS , CM_WITH_REFS , CM_CONVERT } |
| Control how relationship betweeen objects are interpreted. More... | |
| typedef QMultiMap< QByteArray, QVariant > | ChangeInfoMap |
Public Member Functions | |
| CCalibratedViewBase () | |
| void | SetDisplayCalibration (const i2d::ICalibration2d *calibrationPtr) |
| Set calibration using to display logical coordinates. | |
| virtual void | SetGridVisible (bool state=true) |
| Set grid visibility state. | |
| virtual void | ConnectCalibrationShape (iview::IShape *shapePtr) |
| Connect visualisation shape for calibration object. | |
| virtual void | SetDistanceMeasureToolActive (bool state=true) |
| Set distance measure tool active. | |
| virtual void | SetPointMeasureToolActive (bool state=true) |
| Set point measure tool active. | |
| virtual void | ConnectToolShape (iview::IShape *shapePtr) |
| Connect visualisation shape for ruler object. | |
| void | SetMinGridDistance (double gridDistance) |
| Set minimal grid size. | |
| void | SetGridInMm (bool state=true) |
| Set if grid should be shown in milimeter. | |
| const iview::IViewLayer & | GetCalibrationLayer () const |
| Get default calibration layer. | |
| const iview::IViewLayer & | GetToolsLayer () const |
| Get default tools layer. | |
| void | SetDefaultColorSchema (const IColorSchema *colorSchemaPtr, bool releaseFlag=false) |
| Set default color schema object. | |
| bool | IsBackgroundBufferActive () const |
| void | SetBackgroundBufferActive (bool state=true) |
| bool | IsDoubleBufferActive () const |
| void | SetDoubleBufferActive (bool state=true) |
| const iview::CDrawBuffer & | GetBackgroundBuffer () const |
| iview::CDrawBuffer & | GetBackgroundBuffer () |
| const iview::CDrawBuffer & | GetDoubleBuffer () const |
| iview::CDrawBuffer & | GetDoubleBuffer () |
| virtual void | OnResize () |
| Called if found that display area was resized. | |
| void | CheckResize () |
| Check if size size was changed and invalidation and OnResize() should be done. | |
| virtual const iview::IColorSchema & | GetDefaultColorSchema () const override |
| virtual void | UpdateAllShapes (const istd::IChangeable::ChangeSet &changeSet) override |
| virtual void | InsertDefaultLayers () override |
| virtual int | InsertLayer (iview::IViewLayer *layerPtr, int index=-1, int layerType=IViewLayer::LT_NONE) override |
| Insert layer to view. | |
| virtual void | RemoveLayer (int index) override |
| Remove layer from view. | |
| virtual bool | IsGridVisible () const override |
| Check if grid is visible. | |
| virtual double | GetMinGridDistance () const override |
| Get minimal distance between grid lines. | |
| virtual bool | IsGridInMm () const override |
| Check if grid should be shown in milimeter. | |
| virtual bool | IsDistanceMeasureToolActive () const override |
| Check if the distance measuring is active. | |
| virtual bool | IsPointMeasureToolActive () const override |
| Check if the point measuring is active. | |
| virtual const i2d::ICalibration2d * | GetCalibration () const override |
| Get access to transformation object, which transforms a local logical coordinate system to global one. | |
| virtual void | InvalidateBackground () |
| Invalidate whole background buffer. | |
Public Member Functions inherited from iview::CViewBase | |
| CViewBase () | |
| virtual | ~CViewBase () |
| void | SetExternalScreenTransform (const istd::TSmartPtr< iview::CScreenTransform > &screenTransformPtr) |
| void | CenterTo (const iview::IShape &shape) |
| Zooms the view to the given shape. | |
| int | GetBackgroundLayerIndex () const |
| Get index of default background layer. | |
| int | GetInactiveLayerIndex () const |
| Get index of default inactive layer. | |
| int | GetActiveLayerIndex () const |
| Get index of default active layer. | |
| virtual void | AddViewEventObserver (iview::IViewEventObserver *listenerPtr) override |
| Add/remove external event observers. | |
| virtual void | RemoveViewEventObserver (iview::IViewEventObserver *listenerPtr) override |
| virtual void | SetZoom (ZoomMode zoom) |
| virtual void | SetEditMode (int mode) override |
| Changes the edit mode. | |
| virtual void | SetDisplayMode (int mode) override |
| Changes the display mode. | |
| virtual void | Update () override |
| Updates all invalidates shapes. | |
| virtual void | SetScreenPosition (const i2d::CVector2d &client, istd::CIndex2d screen) |
| virtual const i2d::CRectangle & | GetFitArea () const |
| virtual void | SetFitArea (const i2d::CRectangle &area) override |
| Set area used for fitting of the view contents. | |
| virtual void | SetViewDraggable (bool state=true) |
| virtual void | SetMultiselectable (bool state=true) |
| virtual void | SetDraggable (bool state=true) |
| virtual bool | IsViewDraggable () const override |
| Check if is draggable mode. | |
| virtual bool | IsMultiselectable () const override |
| Check, if it is possible to select more than one shape. | |
| virtual int | GetLayerIndex (const IViewLayer &layer) const override |
| Get index of layer. | |
| virtual int | GetLayerIndex (int layerType) const override |
| Get index of layer by type. | |
| virtual int | GetLayersCount () const override |
| Get count of layer in this view. | |
| virtual IViewLayer & | GetLayer (int index) const override |
| Get layer with the given index. | |
| virtual bool | ConnectShape (IShape *shapePtr) override |
| Connect shape object to view. | |
| virtual ISelectableLayer * | GetFocusedLayerPtr () const override |
| Get focused layer. | |
| virtual void | OnLayerShapeFocused (IInteractiveShape *shapePtr, ISelectableLayer *layerPtr) override |
| Called when shape in layer get focus. | |
| virtual void | OnLayerShapeDefocused (IInteractiveShape *shapePtr, ISelectableLayer *layerPtr) override |
| Called when shape in layer loose focus. | |
| virtual void | OnLayerInvalidated (const IViewLayer &layer, const i2d::CRect &prevArea, const i2d::CRect &newArea) override |
| Inform that layer was invalidated. | |
| virtual int | GetSelectedShapesCount () const override |
| Get count of selected shapes. | |
| virtual void | InsertSelectedShapes (SelectedShapes &result) const override |
| Get set of selected shapes. | |
| virtual void | DeselectAllShapes () override |
| Set all shapes to be deselected. | |
| virtual int | GetKeysState () const override |
| Get state of system keys. | |
| virtual int | GetEditMode () const override |
| Get actual edit mode. | |
| virtual int | GetDisplayMode () const override |
| Get actual display mode. | |
| virtual void | OnShapeFocused (IInteractiveShape *) override |
| Called when shape get focus. | |
| virtual void | OnShapeDefocused (IInteractiveShape *) override |
| Called when shape loose focus. | |
| virtual TouchState | IsTouched (istd::CIndex2d position) const override |
| Check, if any shape is touched. | |
| virtual QString | GetShapeDescriptionAt (istd::CIndex2d position) const override |
| Get description to shape at specified position. | |
| virtual QString | GetToolTipAt (istd::CIndex2d) const override |
| Get tooltip at specified position. | |
| virtual void | SetTransform (const i2d::CAffine2d &transform) override |
| Set a screen transformation. | |
| virtual void | UpdateMousePointer () override |
| Update mouse pointer. | |
| 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 bool | OnMouseMove (istd::CIndex2d position) override |
| It is called, when mouse is moved. | |
| virtual IDisplay * | GetParentDisplayPtr () const override |
| Get parent object of this display. | |
| virtual const iview::CScreenTransform & | GetTransform () const override |
| Return a screen transformation. | |
| virtual i2d::CRect | GetBoundingBox () const override |
| Get bounding box of all object in this display. | |
| virtual const IColorSchema & | GetColorSchema () const override |
| Get color schema. | |
| virtual void | OnAreaInvalidated (const i2d::CRect &prevArea, const i2d::CRect &newArea) override |
| Invalidate display area. | |
| virtual void | OnChangeShape (IShape *shapePtr) override |
| Invalidate a shape. | |
| virtual bool | DisconnectShape (IShape *shapePtr) override |
| Disconnect shape object from view. | |
| virtual void | OnShapeSelected (IInteractiveShape &shape, bool state=true) override |
| It is called after change shape selection state. | |
| virtual bool | IsDraggable () const override |
| Check if drag is enabled. | |
| virtual void | BeginDrag (const istd::CIndex2d &reference) override |
| Called before dragging is begin. | |
| virtual void | SetDragPosition (const istd::CIndex2d &position) override |
| Set new drag position. | |
| virtual void | EndDrag () override |
| Called after dragging. | |
Public Member Functions inherited from iview::IDisplay | |
| virtual i2d::CRect | GetClientRect () const =0 |
| Get bounding box of client area. | |
Public Member Functions inherited from istd::IPolymorphic | |
| virtual | ~IPolymorphic () |
Public Member Functions inherited from istd::IChangeable | |
| virtual int | GetSupportedOperations () const |
| Get set of flags for supported operations. | |
| virtual bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) |
| Copy this object from another one. | |
| virtual bool | IsEqual (const IChangeable &object) const |
| Compare this object with another object. | |
| virtual istd::TUniqueInterfacePtr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const |
| Make a copy of this object. | |
| virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) |
| Reset data to its default state. | |
| virtual void | BeginChanges (const ChangeSet &changeSet) |
| Starts the change transaction. | |
| virtual void | EndChanges (const ChangeSet &changeSet) |
| Ends the change transaction. | |
| virtual void | BeginChangeGroup (const ChangeSet &changeSet) |
| Starts group of changes. | |
| virtual void | EndChangeGroup (const ChangeSet &changeSet) |
| Ends group of changes. | |
Protected Member Functions | |
| virtual void | DrawBuffers (QPaintDevice &nativeContext, const i2d::CRect &clipRect) |
| virtual void | DrawToContext (QPaintDevice &nativeContext, QPainter &context, const i2d::CRect &invalidatedBox) |
Protected Member Functions inherited from iview::CViewBase | |
| virtual void | DrawLayers (QPainter &drawContext, int firstLayer, int lastLayer) |
| Draw Background layer. | |
| int | GetLastBackgroundLayerIndex () const |
| Get last background layer index. | |
| void | SetLastBackgroundLayerIndex (int index) |
| virtual bool | CanBeMoved () const |
| This method is internal used to check, if drag mode is allowed. | |
| void | DisconnectAllShapes () |
| Disconnect all shapes from this view. | |
| virtual void | InvalidateBoundingBox () |
| Invalidate bounding box. | |
| bool | EnsureBoundingBoxValid () |
| Calculate bounding box if it was invalid. | |
| virtual i2d::CRect | CalcBoundingBox () const |
| Calculate bounding box of all shapes. | |
| virtual void | OnBoundingBoxChanged () |
| Called when bounding box has been changed. | |
| virtual MousePointerMode | CalcMousePointer (istd::CIndex2d position) const |
| Calc mouse pointer for the given position. | |
| virtual bool | IsBackgroundBufferValid () const |
| Check if background buffer is valid. | |
| virtual void | SetBackgroundBufferValid (bool state=true) |
| Set validate flag of background buffer. | |
| const i2d::CRect & | GetInvalidatedBox () const |
| Get bounding box of all invalidated rectangles. | |
| void | InvalidateBox (const i2d::CRect &rect) |
| Invalidate rectangle screen area. | |
| void | ResetInvalidatedBox () |
| Reset invalidated box. | |
| void | SetKeysState (int state) |
| Set state of keys. | |
| const Layers & | GetLayers () const |
| Layers & | GetLayers () |
| virtual void | SetMousePointer (MousePointerMode mode)=0 |
| Set mouse pointer. | |
| virtual void | UpdateRectArea (const i2d::CRect &rect)=0 |
| Start updating specified rectangle area. | |
Protected Member Functions inherited from istd::IChangeable | |
| virtual void | OnBeginChanges () |
| Callback function for begin change event. | |
| virtual void | OnEndChanges (const ChangeSet &changeSet) |
| Callback function for end change event. | |
Abstract base class for all calibrated view.
Calibrated view implements i2d::ICalibrationProvider interface, and can automatically show calibration grid if supported.
Definition at line 29 of file CCalibratedViewBase.h.
Definition at line 36 of file CCalibratedViewBase.h.
| iview::CCalibratedViewBase::CCalibratedViewBase | ( | ) |
| void iview::CCalibratedViewBase::CheckResize | ( | ) |
Check if size size was changed and invalidation and OnResize() should be done.
|
virtual |
Connect visualisation shape for calibration object.
Reimplemented in iview::CViewport.
|
virtual |
Connect visualisation shape for ruler object.
|
protectedvirtual |
|
protectedvirtual |
| iview::CDrawBuffer & iview::CCalibratedViewBase::GetBackgroundBuffer | ( | ) |
| const iview::CDrawBuffer & iview::CCalibratedViewBase::GetBackgroundBuffer | ( | ) | const |
|
inlineoverridevirtual |
Get access to transformation object, which transforms a local logical coordinate system to global one.
Implements i2d::ICalibrationProvider.
Definition at line 276 of file CCalibratedViewBase.h.
|
inline |
Get default calibration layer.
Definition at line 204 of file CCalibratedViewBase.h.
|
overridevirtual |
Implements iview::CViewBase.
| iview::CDrawBuffer & iview::CCalibratedViewBase::GetDoubleBuffer | ( | ) |
| const iview::CDrawBuffer & iview::CCalibratedViewBase::GetDoubleBuffer | ( | ) | const |
|
inlineoverridevirtual |
Get minimal distance between grid lines.
Implements iview::IVisualCalibrationInfo.
Definition at line 222 of file CCalibratedViewBase.h.
|
inline |
Get default tools layer.
Definition at line 210 of file CCalibratedViewBase.h.
|
overridevirtual |
Reimplemented from iview::CViewBase.
|
overridevirtual |
Insert layer to view.
| layerPtr | pointer to inserted layer. |
| index | index of inserted layer. If equals -1, layer will be inserted after last existing layer. |
| layerType | used to set standard layers. |
Reimplemented from iview::CViewBase.
|
virtual |
Invalidate whole background buffer.
By next call Update() background buffer will be full repainted.
Reimplemented from iview::CViewBase.
Referenced by SetDistanceMeasureToolActive(), SetGridVisible(), and SetPointMeasureToolActive().
| bool iview::CCalibratedViewBase::IsBackgroundBufferActive | ( | ) | const |
|
inlineoverridevirtual |
Check if the distance measuring is active.
Implements iview::IToolsLayerInfo.
Definition at line 234 of file CCalibratedViewBase.h.
| bool iview::CCalibratedViewBase::IsDoubleBufferActive | ( | ) | const |
|
inlineoverridevirtual |
Check if grid should be shown in milimeter.
Implements iview::IVisualCalibrationInfo.
Definition at line 228 of file CCalibratedViewBase.h.
|
inlineoverridevirtual |
Check if grid is visible.
Implements iview::IVisualCalibrationInfo.
Definition at line 216 of file CCalibratedViewBase.h.
|
inlineoverridevirtual |
Check if the point measuring is active.
Implements iview::IToolsLayerInfo.
Definition at line 254 of file CCalibratedViewBase.h.
|
virtual |
Called if found that display area was resized.
Reimplemented in iview::CViewport.
|
overridevirtual |
Remove layer from view.
Reimplemented from iview::CViewBase.
| void iview::CCalibratedViewBase::SetBackgroundBufferActive | ( | bool | state = true | ) |
| void iview::CCalibratedViewBase::SetDefaultColorSchema | ( | const IColorSchema * | colorSchemaPtr, |
| bool | releaseFlag = false |
||
| ) |
Set default color schema object.
| colorSchemaPtr | pointer to color schema object. |
| releaseFlag | if its true, object will be automatically removed. |
| void iview::CCalibratedViewBase::SetDisplayCalibration | ( | const i2d::ICalibration2d * | calibrationPtr | ) |
Set calibration using to display logical coordinates.
|
inlinevirtual |
Set distance measure tool active.
Definition at line 240 of file CCalibratedViewBase.h.
References InvalidateBackground().
| void iview::CCalibratedViewBase::SetDoubleBufferActive | ( | bool | state = true | ) |
|
inline |
Set if grid should be shown in milimeter.
Definition at line 195 of file CCalibratedViewBase.h.
References iview::CViewBase::SetBackgroundBufferValid().
|
inlinevirtual |
Set grid visibility state.
Definition at line 175 of file CCalibratedViewBase.h.
References InvalidateBackground().
|
inline |
Set minimal grid size.
It determines minimal distance between grid lines.
Definition at line 184 of file CCalibratedViewBase.h.
References iview::CViewBase::SetBackgroundBufferValid().
|
inlinevirtual |
Set point measure tool active.
Definition at line 260 of file CCalibratedViewBase.h.
References InvalidateBackground().
|
overridevirtual |
Reimplemented from iview::CViewBase.