Class that other classes need to inherit from, in order to be inspectable.
An abstract base class for deriving all objects that can be added to a VIEW.
virtual const BOX2I ViewBBox() const =0
Return the bounding box of the item covering all its layers.
double m_forcedTransparency
Additional transparency for diff'ing items.
VIEW_ITEM_DATA * viewPrivData() const
virtual void ViewDraw(int aLayer, VIEW *aView) const
Draw the parts of the object belonging to layer aLayer.
VIEW_ITEM & operator=(const VIEW_ITEM &aOther)=delete
void SetForcedTransparency(double aForcedTransparency)
VIEW_ITEM(const VIEW_ITEM &aOther)=delete
virtual void ViewGetLayers(int aLayers[], int &aCount) const =0
Return the all the layers within the VIEW the object is painted on.
double GetForcedTransparency() const
virtual double ViewGetLOD(int aLayer, VIEW *aView) const
Return the level of detail (LOD) of the item.
VIEW_ITEM_DATA * m_viewPrivData
Hold a (potentially large) number of VIEW_ITEMs and renders them on a graphics device provided by the...
The Cairo implementation of the graphics abstraction layer.
VIEW_UPDATE_FLAGS
Define the how severely the appearance of the item has been changed.
@ COLOR
Color has changed.
@ INITIAL_ADD
Item is being added to the view.
@ NONE
No updates are required.
@ REPAINT
Item needs to be redrawn.
@ APPEARANCE
Visibility flag has changed.
@ GEOMETRY
Position or shape has changed.
@ LAYERS
Layers have changed.
@ ALL
All except INITIAL_ADD.
VIEW_VISIBILITY_FLAGS
Define the visibility of the item (temporarily hidden, invisible, etc).
@ HIDDEN
Item is temporarily hidden (e.g.
@ VISIBLE
Item is visible (in general)