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

Helper template to handle XIntegerBitmap method forwarding to BitmapCanvasHelper. More...

#include <spritecanvasbase.hxx>

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

Public Types

typedef IntegerBitmapBase< BitmapCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase > > BaseType
 
typedef ::rtl::Reference< SpriteCanvasBaseReference
 
- 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

 SpriteCanvasBase ()
 
virtual void disposeThis () override
 
virtual css::uno::Reference< css::rendering::XAnimatedSprite > SAL_CALL createSpriteFromAnimation (const css::uno::Reference< css::rendering::XAnimation > &animation) override
 
virtual css::uno::Reference< css::rendering::XAnimatedSprite > SAL_CALL createSpriteFromBitmaps (const css::uno::Sequence< css::uno::Reference< css::rendering::XBitmap > > &animationBitmaps, sal_Int8 interpolationMode) override
 
virtual css::uno::Reference< css::rendering::XCustomSprite > SAL_CALL createCustomSprite (const css::geometry::RealSize2D &spriteSize) override
 
virtual css::uno::Reference< css::rendering::XSprite > SAL_CALL createClonedSprite (const css::uno::Reference< css::rendering::XSprite > &original) override
 
virtual void showSprite (const Sprite::Reference &rSprite) override
 
virtual void hideSprite (const Sprite::Reference &rSprite) override
 
virtual void moveSprite (const Sprite::Reference &rSprite, const ::basegfx::B2DPoint &rOldPos, const ::basegfx::B2DPoint &rNewPos, const ::basegfx::B2DVector &rSpriteSize) override
 
virtual void updateSprite (const Sprite::Reference &rSprite, const ::basegfx::B2DPoint &rPos, const ::basegfx::B2DRange &rUpdateArea) override
 
- Public Member Functions inherited from canvas::IntegerBitmapBase< BitmapCanvasBase< 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::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

SpriteRedrawManager maRedrawManager
 
- 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 CanvasHelper, class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
class canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >

Helper template to handle XIntegerBitmap method forwarding to BitmapCanvasHelper.

Use this helper to handle the XIntegerBitmap 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 XSpriteCanvas and SpriteSurface 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 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
CanvasBase for further contractual requirements towards the CanvasHelper type, and some examples.

Definition at line 72 of file spritecanvasbase.hxx.

Member Typedef Documentation

◆ BaseType

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

Definition at line 76 of file spritecanvasbase.hxx.

◆ Reference

template<class Base , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
typedef ::rtl::Reference< SpriteCanvasBase > canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >::Reference

Definition at line 77 of file spritecanvasbase.hxx.

Constructor & Destructor Documentation

◆ SpriteCanvasBase()

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

Definition at line 79 of file spritecanvasbase.hxx.

Member Function Documentation

◆ createClonedSprite()

template<class Base , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual css::uno::Reference< css::rendering::XSprite > SAL_CALL canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >::createClonedSprite ( const css::uno::Reference< css::rendering::XSprite > &  original)
inlineoverridevirtual

Definition at line 132 of file spritecanvasbase.hxx.

References canvas::tools::verifyArgs().

◆ createCustomSprite()

template<class Base , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual css::uno::Reference< css::rendering::XCustomSprite > SAL_CALL canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >::createCustomSprite ( const css::geometry::RealSize2D &  spriteSize)
inlineoverridevirtual

Definition at line 121 of file spritecanvasbase.hxx.

References canvas::tools::verifySpriteSize().

◆ createSpriteFromAnimation()

template<class Base , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual css::uno::Reference< css::rendering::XAnimatedSprite > SAL_CALL canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >::createSpriteFromAnimation ( const css::uno::Reference< css::rendering::XAnimation > &  animation)
inlineoverridevirtual

Definition at line 95 of file spritecanvasbase.hxx.

References canvas::tools::verifyArgs().

◆ createSpriteFromBitmaps()

template<class Base , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual css::uno::Reference< css::rendering::XAnimatedSprite > SAL_CALL canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >::createSpriteFromBitmaps ( const css::uno::Sequence< css::uno::Reference< css::rendering::XBitmap > > &  animationBitmaps,
sal_Int8  interpolationMode 
)
inlineoverridevirtual

◆ disposeThis()

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

◆ hideSprite()

template<class Base , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >::hideSprite ( const Sprite::Reference rSprite)
inlineoverridevirtual

◆ moveSprite()

template<class Base , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >::moveSprite ( const Sprite::Reference rSprite,
const ::basegfx::B2DPoint rOldPos,
const ::basegfx::B2DPoint rNewPos,
const ::basegfx::B2DVector rSpriteSize 
)
inlineoverridevirtual

◆ showSprite()

template<class Base , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >::showSprite ( const Sprite::Reference rSprite)
inlineoverridevirtual

◆ updateSprite()

template<class Base , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
virtual void canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >::updateSprite ( const Sprite::Reference rSprite,
const ::basegfx::B2DPoint rPos,
const ::basegfx::B2DRange rUpdateArea 
)
inlineoverridevirtual

Member Data Documentation

◆ maRedrawManager

template<class Base , class CanvasHelper , class Mutex = ::osl::MutexGuard, class UnambiguousBase = css::uno::XInterface>
SpriteRedrawManager canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >::maRedrawManager
protected

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