LibreOffice Module drawinglayer (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
drawinglayer::primitive2d::GraphicPrimitive2D Class Referencefinal

GraphicPrimitive2D class. More...

#include <graphicprimitive2d.hxx>

Inheritance diagram for drawinglayer::primitive2d::GraphicPrimitive2D:
[legend]
Collaboration diagram for drawinglayer::primitive2d::GraphicPrimitive2D:
[legend]

Public Member Functions

 GraphicPrimitive2D (basegfx::B2DHomMatrix aTransform, const GraphicObject &rGraphicObject, const GraphicAttr &rGraphicAttr)
 constructor(s) More...
 
 GraphicPrimitive2D (basegfx::B2DHomMatrix aTransform, const GraphicObject &rGraphicObject)
 
const basegfx::B2DHomMatrixgetTransform () const
 data read access More...
 
const GraphicObjectgetGraphicObject () const
 
const GraphicAttrgetGraphicAttr () const
 
virtual bool operator== (const BasePrimitive2D &rPrimitive) const override
 compare operator More...
 
virtual basegfx::B2DRange getB2DRange (const geometry::ViewInformation2D &rViewInformation) const override
 get range More...
 
virtual sal_uInt32 getPrimitive2DID () const override
 provide unique ID More...
 
- Public Member Functions inherited from drawinglayer::primitive2d::BufferedDecompositionPrimitive2D
 BufferedDecompositionPrimitive2D ()
 
virtual void get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override
 The getDecomposition default implementation will on demand use create2DDecomposition() if maBuffered2DDecomposition is empty. More...
 
void setTransparenceForShadow (sal_uInt16 nTransparenceForShadow)
 
sal_uInt16 getTransparenceForShadow () const
 
- Public Member Functions inherited from drawinglayer::primitive2d::BasePrimitive2D
 BasePrimitive2D ()
 
virtual ~BasePrimitive2D () override
 
virtual bool operator== (const BasePrimitive2D &rPrimitive) const
 the ==operator is mainly needed to allow testing newly-created primitives against their last incarnation which buffers/holds the made decompositions. More...
 
bool operator!= (const BasePrimitive2D &rPrimitive) const
 
virtual basegfx::B2DRange getB2DRange (const geometry::ViewInformation2D &rViewInformation) const
 The default implementation will use getDecomposition results to create the range. More...
 
virtual sal_uInt32 getPrimitive2DID () const =0
 provide unique ID for fast identifying of known primitive implementations in renderers. More...
 
virtual void get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const
 The default implementation will return an empty sequence. More...
 
Primitive2DContainer getDecomposition (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters)
 The getDecomposition implementation for UNO API will use getDecomposition from this implementation. More...
 
css::geometry::RealRectangle2D getRange (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters)
 The getRange implementation for UNO API will use getRange from this implementation. More...
 
virtual sal_Int64 estimateUsage ()
 
- Public Member Functions inherited from salhelper::SimpleReferenceObject
 SimpleReferenceObject ()
 
void acquire ()
 
void release ()
 

Private Member Functions

virtual void create2DDecomposition (Primitive2DContainer &rContainer, const geometry::ViewInformation2D &rViewInformation) const override
 local decomposition More...
 

Private Attributes

basegfx::B2DHomMatrix maTransform
 the geometric definition More...
 
GraphicObject maGraphicObject
 the GraphicObject with all its content possibilities More...
 
GraphicAttr maGraphicAttr
 The GraphicAttr with all its modification possibilities. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from salhelper::SimpleReferenceObject
static void * operator new (std::size_t nSize)
 
static void * operator new (std::size_t nSize, std::nothrow_t const &rNothrow)
 
static void operator delete (void *pPtr)
 
static void operator delete (void *pPtr, std::nothrow_t const &rNothrow)
 
- Protected Member Functions inherited from drawinglayer::primitive2d::BufferedDecompositionPrimitive2D
const Primitive2DContainergetBuffered2DDecomposition () const
 access methods to maBuffered2DDecomposition. More...
 
void setBuffered2DDecomposition (Primitive2DContainer &&rNew)
 
virtual void create2DDecomposition (Primitive2DContainer &rContainer, const geometry::ViewInformation2D &rViewInformation) const =0
 method which is to be used to implement the local decomposition of a 2D primitive. More...
 
- Protected Member Functions inherited from salhelper::SimpleReferenceObject
virtual ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE
 
- Protected Attributes inherited from salhelper::SimpleReferenceObject
oslInterlockedCount m_nCount
 

Detailed Description

GraphicPrimitive2D class.

Primitive to hold graphics defined by GraphicObject and GraphicAttr combination. This includes MetaFiles and diverse pixel-oriented graphic formats. It even includes animated GIFs, Croppings and other changes defined in GraphicAttr.

This makes the decomposition contain a wide variety of possibilities, too. From a simple BitmapPrimitive over AnimatedSwitchPrimitive2D, MetafilePrimitive2D (with and without embedding in a masking when e.g. the Metafile is bigger than the geometry) and embeddings in TransformPrimitive2D and MaskPrimitive2D for croppings.

The primitive geometry area is defined by Transform.

Definition at line 45 of file graphicprimitive2d.hxx.

Constructor & Destructor Documentation

◆ GraphicPrimitive2D() [1/2]

drawinglayer::primitive2d::GraphicPrimitive2D::GraphicPrimitive2D ( basegfx::B2DHomMatrix  aTransform,
const GraphicObject rGraphicObject,
const GraphicAttr rGraphicAttr 
)

constructor(s)

Definition at line 174 of file graphicprimitive2d.cxx.

◆ GraphicPrimitive2D() [2/2]

drawinglayer::primitive2d::GraphicPrimitive2D::GraphicPrimitive2D ( basegfx::B2DHomMatrix  aTransform,
const GraphicObject rGraphicObject 
)

Definition at line 183 of file graphicprimitive2d.cxx.

Member Function Documentation

◆ create2DDecomposition()

void drawinglayer::primitive2d::GraphicPrimitive2D::create2DDecomposition ( Primitive2DContainer rContainer,
const geometry::ViewInformation2D rViewInformation 
) const
overrideprivatevirtual

◆ getB2DRange()

basegfx::B2DRange drawinglayer::primitive2d::GraphicPrimitive2D::getB2DRange ( const geometry::ViewInformation2D rViewInformation) const
overridevirtual

get range

Reimplemented from drawinglayer::primitive2d::BasePrimitive2D.

Definition at line 205 of file graphicprimitive2d.cxx.

References getTransform(), and basegfx::B2DRange::transform().

◆ getGraphicAttr()

const GraphicAttr & drawinglayer::primitive2d::GraphicPrimitive2D::getGraphicAttr ( ) const
inline

◆ getGraphicObject()

const GraphicObject & drawinglayer::primitive2d::GraphicPrimitive2D::getGraphicObject ( ) const
inline

◆ getPrimitive2DID()

sal_uInt32 drawinglayer::primitive2d::GraphicPrimitive2D::getPrimitive2DID ( ) const
overridevirtual

provide unique ID

Implements drawinglayer::primitive2d::BasePrimitive2D.

Definition at line 213 of file graphicprimitive2d.cxx.

References PRIMITIVE2D_ID_GRAPHICPRIMITIVE2D.

◆ getTransform()

const basegfx::B2DHomMatrix & drawinglayer::primitive2d::GraphicPrimitive2D::getTransform ( ) const
inline

◆ operator==()

bool drawinglayer::primitive2d::GraphicPrimitive2D::operator== ( const BasePrimitive2D rPrimitive) const
overridevirtual

compare operator

Reimplemented from drawinglayer::primitive2d::BasePrimitive2D.

Definition at line 190 of file graphicprimitive2d.cxx.

References getGraphicAttr(), getGraphicObject(), and getTransform().

Member Data Documentation

◆ maGraphicAttr

GraphicAttr drawinglayer::primitive2d::GraphicPrimitive2D::maGraphicAttr
private

The GraphicAttr with all its modification possibilities.

Definition at line 55 of file graphicprimitive2d.hxx.

◆ maGraphicObject

GraphicObject drawinglayer::primitive2d::GraphicPrimitive2D::maGraphicObject
private

the GraphicObject with all its content possibilities

Definition at line 52 of file graphicprimitive2d.hxx.

◆ maTransform

basegfx::B2DHomMatrix drawinglayer::primitive2d::GraphicPrimitive2D::maTransform
private

the geometric definition

Definition at line 49 of file graphicprimitive2d.hxx.


The documentation for this class was generated from the following files: