LibreOffice Module canvas (master) 1
Public Types | Public Member Functions | Protected Attributes | List of all members
canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase > Class Template Reference

Helper template to handle XCustomSprite method forwarding to CanvasCustomSpriteHelper. More...

#include <canvascustomspritebase.hxx>

Inheritance diagram for canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >:
[legend]
Collaboration diagram for canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >:
[legend]

Public Types

typedef IntegerBitmapBase< BitmapCanvasBase2< Base, CanvasHelper, Mutex, UnambiguousBase > > BaseType
 
- Public Types inherited from canvas::BitmapCanvasBase< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface >
typedef CanvasBase< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface > BaseType
 
- Public Types inherited from canvas::CanvasBase< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface >
typedef Base BaseType
 
typedef ::osl::MutexGuard MutexType
 
typedef css::uno::XInterface UnambiguousBaseType
 

Public Member Functions

 CanvasCustomSpriteBase ()
 
virtual void disposeThis () override
 Object is being disposed. More...
 
virtual void SAL_CALL clear () override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL drawBitmap (const css::uno::Reference< css::rendering::XBitmap > &xBitmap, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) override
 
virtual void SAL_CALL setAlpha (double alpha) override
 
virtual void SAL_CALL move (const css::geometry::RealPoint2D &aNewPos, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) override
 
virtual void SAL_CALL transform (const css::geometry::AffineMatrix2D &aTransformation) override
 
virtual void SAL_CALL clip (const css::uno::Reference< css::rendering::XPolyPolygon2D > &aClip) override
 
virtual void SAL_CALL setPriority (double nPriority) override
 
virtual void SAL_CALL show () override
 
virtual void SAL_CALL hide () override
 
virtual css::uno::Reference< css::rendering::XCanvas > SAL_CALL getContentCanvas () override
 
virtual bool isAreaUpdateOpaque (const ::basegfx::B2DRange &rUpdateArea) const override
 
virtual bool isContentChanged () const override
 
virtual ::basegfx::B2DPoint getPosPixel () const override
 
virtual ::basegfx::B2DVector getSizePixel () const override
 
virtual ::basegfx::B2DRange getUpdateArea () const override
 
virtual double getPriority () const override
 
- Public Member Functions inherited from canvas::IntegerBitmapBase< BitmapCanvasBase2< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface > >
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getData (css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerRectangle2D &rect) override
 
virtual void SAL_CALL setData (const css::uno::Sequence< sal_Int8 > &, const css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerRectangle2D &rect) override
 
virtual void SAL_CALL setPixel (const css::uno::Sequence< sal_Int8 > &, const css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerPoint2D &pos) override
 
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getPixel (css::rendering::IntegerBitmapLayout &bitmapLayout, const css::geometry::IntegerPoint2D &pos) override
 
virtual css::rendering::IntegerBitmapLayout SAL_CALL getMemoryLayout () override
 
- Public Member Functions inherited from canvas::BitmapCanvasBase2< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface >
virtual void SAL_CALL copyRect (const css::uno::Reference< css::rendering::XBitmapCanvas > &sourceCanvas, const css::geometry::RealRectangle2D &sourceRect, const css::rendering::ViewState &sourceViewState, const css::rendering::RenderState &sourceRenderState, const css::geometry::RealRectangle2D &destRect, const css::rendering::ViewState &destViewState, const css::rendering::RenderState &destRenderState) override
 
- Public Member Functions inherited from canvas::BitmapCanvasBase< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface >
virtual css::geometry::IntegerSize2D SAL_CALL getSize () override
 
virtual sal_Bool SAL_CALL hasAlpha () override
 
virtual css::uno::Reference< css::rendering::XBitmap > SAL_CALL getScaledBitmap (const css::geometry::RealSize2D &newSize, sal_Bool beFast) override
 
- Public Member Functions inherited from canvas::CanvasBase< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface >
 CanvasBase ()
 Create CanvasBase. More...
 
virtual void disposeThis () override
 
virtual void SAL_CALL clear () override
 
virtual void SAL_CALL drawPoint (const css::geometry::RealPoint2D &aPoint, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) override
 
virtual void SAL_CALL drawLine (const css::geometry::RealPoint2D &aStartPoint, const css::geometry::RealPoint2D &aEndPoint, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) override
 
virtual void SAL_CALL drawBezier (const css::geometry::RealBezierSegment2D &aBezierSegment, const css::geometry::RealPoint2D &aEndPoint, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL drawPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL strokePolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState, const css::rendering::StrokeAttributes &strokeAttributes) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL strokeTexturedPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState, const css::uno::Sequence< css::rendering::Texture > &textures, const css::rendering::StrokeAttributes &strokeAttributes) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL strokeTextureMappedPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState, const css::uno::Sequence< css::rendering::Texture > &textures, const css::uno::Reference< css::geometry::XMapping2D > &xMapping, const css::rendering::StrokeAttributes &strokeAttributes) override
 
virtual css::uno::Reference< css::rendering::XPolyPolygon2D > SAL_CALL queryStrokeShapes (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState, const css::rendering::StrokeAttributes &strokeAttributes) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL fillPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL fillTexturedPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState, const css::uno::Sequence< css::rendering::Texture > &textures) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL fillTextureMappedPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState, const css::uno::Sequence< css::rendering::Texture > &textures, const css::uno::Reference< css::geometry::XMapping2D > &xMapping) override
 
virtual css::uno::Reference< css::rendering::XCanvasFont > SAL_CALL createFont (const css::rendering::FontRequest &fontRequest, const css::uno::Sequence< css::beans::PropertyValue > &extraFontProperties, const css::geometry::Matrix2D &fontMatrix) override
 
virtual css::uno::Sequence< css::rendering::FontInfo > SAL_CALL queryAvailableFonts (const css::rendering::FontInfo &aFilter, const css::uno::Sequence< css::beans::PropertyValue > &aFontProperties) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL drawText (const css::rendering::StringContext &text, const css::uno::Reference< css::rendering::XCanvasFont > &xFont, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState, sal_Int8 textDirection) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL drawTextLayout (const css::uno::Reference< css::rendering::XTextLayout > &laidOutText, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL drawBitmap (const css::uno::Reference< css::rendering::XBitmap > &xBitmap, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL drawBitmapModulated (const css::uno::Reference< css::rendering::XBitmap > &xBitmap, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) override
 
virtual css::uno::Reference< css::rendering::XGraphicDevice > SAL_CALL getDevice () override
 

Protected Attributes

SpriteHelper maSpriteHelper
 
- Protected Attributes inherited from canvas::CanvasBase< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface >
CanvasHelper maCanvasHelper
 
bool mbSurfaceDirty
 

Additional Inherited Members

- Protected Member Functions inherited from canvas::CanvasBase< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface >
 ~CanvasBase ()
 

Detailed Description

template<class Base, class SpriteHelper, class CanvasHelper, class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
class canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >

Helper template to handle XCustomSprite method forwarding to CanvasCustomSpriteHelper.

Use this helper to handle the XCustomSprite part of your implementation.

Template parameter: \n Base
Base class to use, most probably one of the WeakComponentImplHelperN templates with the appropriate interfaces. At least XCustomSprite and Sprite should be among them (why else would you use this template, then?). Base class must have a Base( const Mutex& ) constructor (like the WeakComponentImplHelperN templates have).
Template parameter: \n SpriteHelper
Sprite helper implementation for the backend in question
Template parameter: \n CanvasHelper
Canvas helper implementation for the backend in question
Template parameter: \n Mutex
Lock strategy to use. Defaults to using the BaseMutex-provided lock. Every time one of the methods is entered, an object of type Mutex is created with m_aMutex as the sole parameter, and destroyed again when the method scope is left.
Template parameter: \n UnambiguousBase
Optional unambiguous base class for XInterface of Base. It's sometimes necessary to specify this parameter, e.g. if Base derives from multiple UNO interface (were each provides its own version of XInterface, making the conversion ambiguous)
See also
CanvasCustomSpriteHelper for further contractual requirements towards the SpriteHelper type, and some examples.

Definition at line 74 of file canvascustomspritebase.hxx.

Member Typedef Documentation

◆ BaseType

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
typedef IntegerBitmapBase< BitmapCanvasBase2<Base, CanvasHelper, Mutex, UnambiguousBase> > canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::BaseType

Definition at line 78 of file canvascustomspritebase.hxx.

Constructor & Destructor Documentation

◆ CanvasCustomSpriteBase()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::CanvasCustomSpriteBase ( )
inline

Definition at line 80 of file canvascustomspritebase.hxx.

Member Function Documentation

◆ clear()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void SAL_CALL canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::clear ( )
inlineoverridevirtual

◆ clip()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void SAL_CALL canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::clip ( const css::uno::Reference< css::rendering::XPolyPolygon2D > &  aClip)
inlineoverridevirtual

◆ disposeThis()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::disposeThis ( )
inlineoverridevirtual

Object is being disposed.

Called from the cppu helper base, to notify disposal of this object. Already releases all internal references.

Derive: \n when overriding this method in derived classes,
always call the base class' method!

Reimplemented from canvas::CanvasBase< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface >.

Reimplemented in cairocanvas::CanvasCustomSprite, and dxcanvas::CanvasCustomSprite.

Definition at line 93 of file canvascustomspritebase.hxx.

References canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::maSpriteHelper.

Referenced by cairocanvas::CanvasCustomSprite::disposeThis(), and dxcanvas::CanvasCustomSprite::disposeThis().

◆ drawBitmap()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::drawBitmap ( const css::uno::Reference< css::rendering::XBitmap > &  xBitmap,
const css::rendering::ViewState viewState,
const css::rendering::RenderState &  renderState 
)
inlineoverridevirtual

◆ getContentCanvas()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual css::uno::Reference< css::rendering::XCanvas > SAL_CALL canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::getContentCanvas ( )
inlineoverridevirtual

Definition at line 206 of file canvascustomspritebase.hxx.

◆ getPosPixel()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual ::basegfx::B2DPoint canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::getPosPixel ( ) const
inlineoverride

◆ getPriority()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual double canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::getPriority ( ) const
inlineoverridevirtual

◆ getSizePixel()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual ::basegfx::B2DVector canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::getSizePixel ( ) const
inlineoverride

◆ getUpdateArea()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual ::basegfx::B2DRange canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::getUpdateArea ( ) const
inlineoverride

◆ hide()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void SAL_CALL canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::hide ( )
inlineoverridevirtual

◆ isAreaUpdateOpaque()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual bool canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::isAreaUpdateOpaque ( const ::basegfx::B2DRange rUpdateArea) const
inlineoverridevirtual

◆ isContentChanged()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual bool canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::isContentChanged ( ) const
inlineoverridevirtual

Definition at line 221 of file canvascustomspritebase.hxx.

◆ move()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void SAL_CALL canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::move ( const css::geometry::RealPoint2D &  aNewPos,
const css::rendering::ViewState viewState,
const css::rendering::RenderState &  renderState 
)
inlineoverridevirtual

◆ setAlpha()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void SAL_CALL canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::setAlpha ( double  alpha)
inlineoverridevirtual

◆ setPriority()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void SAL_CALL canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::setPriority ( double  nPriority)
inlineoverridevirtual

◆ show()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void SAL_CALL canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::show ( )
inlineoverridevirtual

◆ transform()

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void SAL_CALL canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::transform ( const css::geometry::AffineMatrix2D &  aTransformation)
inlineoverridevirtual

Member Data Documentation

◆ maSpriteHelper

template<class Base , class SpriteHelper , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
SpriteHelper canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::maSpriteHelper
protected

Definition at line 257 of file canvascustomspritebase.hxx.

Referenced by cairocanvas::CanvasCustomSprite::CanvasCustomSprite(), dxcanvas::CanvasCustomSprite::CanvasCustomSprite(), cairocanvas::CanvasCustomSprite::changeSurface(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::clear(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::clip(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::disposeThis(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::drawBitmap(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::getPosPixel(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::getPriority(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::getSizePixel(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::getUpdateArea(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::hide(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::isAreaUpdateOpaque(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::move(), dxcanvas::CanvasCustomSprite::redraw(), vclcanvas::CanvasCustomSprite::redraw(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::setAlpha(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::setPriority(), canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::show(), and canvas::CanvasCustomSpriteBase< Base, SpriteHelper, CanvasHelper, Mutex, UnambiguousBase >::transform().


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