LibreOffice Module canvas (master) 1
Public Member Functions | Private Attributes | List of all members
cairocanvas::SpriteCanvas Class Reference

Product of this component's factory. More...

#include <cairo_spritecanvas.hxx>

Inheritance diagram for cairocanvas::SpriteCanvas:
[legend]
Collaboration diagram for cairocanvas::SpriteCanvas:
[legend]

Public Member Functions

 SpriteCanvas (const css::uno::Sequence< css::uno::Any > &aArguments, const css::uno::Reference< css::uno::XComponentContext > &rxContext)
 
void initialize ()
 
virtual void disposeThis () override
 Dispose all internal references. More...
 
virtual sal_Bool SAL_CALL showBuffer (sal_Bool bUpdateAll) override
 
virtual sal_Bool SAL_CALL switchBuffer (sal_Bool bUpdateAll) override
 
virtual sal_Bool SAL_CALL updateScreen (sal_Bool bUpdateAll) override
 
virtual OUString SAL_CALL getServiceName () override
 
virtual sal_Bool SAL_CALL supportsService (const OUString &sServiceName) override
 
virtual OUString SAL_CALL getImplementationName () override
 
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override
 
virtual ::cairo::SurfaceSharedPtr getSurface () override
 
virtual ::cairo::SurfaceSharedPtr createSurface (const ::basegfx::B2ISize &rSize, int aContent) override
 
virtual ::cairo::SurfaceSharedPtr createSurface (::Bitmap &rBitmap) override
 
virtual ::cairo::SurfaceSharedPtr changeSurface () override
 
virtual OutputDevicegetOutputDevice () override
 
virtual bool repaint (const ::cairo::SurfaceSharedPtr &pSurface, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) override
 
::cairo::SurfaceSharedPtr const & getWindowSurface () const
 
::cairo::SurfaceSharedPtr const & getBufferSurface () const
 
const ::basegfx::B2ISizegetSizePixel () const
 
void setSizePixel (const ::basegfx::B2ISize &rSize)
 
void flush ()
 
- Public Member Functions inherited from canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >
 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
 

Private Attributes

css::uno::Sequence< css::uno::Any > maArguments
 

Additional Inherited Members

- Public Types inherited from canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >
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
 
- Protected Member Functions inherited from canvas::CanvasBase< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface >
 ~CanvasBase ()
 
- Protected Attributes inherited from canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >
SpriteRedrawManager maRedrawManager
 
- Protected Attributes inherited from canvas::CanvasBase< Base, CanvasHelper, ::osl::MutexGuard, css::uno::XInterface >
CanvasHelper maCanvasHelper
 
bool mbSurfaceDirty
 

Detailed Description

Product of this component's factory.

The SpriteCanvas object combines the actual Window canvas with the XGraphicDevice interface. This is because there's a one-to-one relation between them, anyway, since each window can have exactly one canvas and one associated XGraphicDevice. And to avoid messing around with circular references, this is implemented as one single object.

Definition at line 99 of file cairo_spritecanvas.hxx.

Constructor & Destructor Documentation

◆ SpriteCanvas()

cairocanvas::SpriteCanvas::SpriteCanvas ( const css::uno::Sequence< css::uno::Any > &  aArguments,
const css::uno::Reference< css::uno::XComponentContext > &  rxContext 
)

Member Function Documentation

◆ changeSurface()

SurfaceSharedPtr cairocanvas::SpriteCanvas::changeSurface ( )
override

Definition at line 176 of file cairo_spritecanvas.cxx.

◆ createSurface() [1/2]

SurfaceSharedPtr cairocanvas::SpriteCanvas::createSurface ( ::Bitmap rBitmap)
override

Definition at line 164 of file cairo_spritecanvas.cxx.

References aData, Bitmap::GetSizePixel(), and Bitmap::GetSystemData().

◆ createSurface() [2/2]

SurfaceSharedPtr cairocanvas::SpriteCanvas::createSurface ( const ::basegfx::B2ISize rSize,
int  aContent 
)
override

Definition at line 159 of file cairo_spritecanvas.cxx.

◆ disposeThis()

void cairocanvas::SpriteCanvas::disposeThis ( )
overridevirtual

Dispose all internal references.

Reimplemented from canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >.

Definition at line 103 of file cairo_spritecanvas.cxx.

References m_aMutex.

◆ flush()

void cairocanvas::SpriteCanvas::flush ( )

◆ getBufferSurface()

SurfaceSharedPtr const & cairocanvas::SpriteCanvas::getBufferSurface ( ) const

◆ getImplementationName()

OUString cairocanvas::SpriteCanvas::getImplementationName ( )
overridevirtual

Definition at line 145 of file cairo_spritecanvas.cxx.

◆ getOutputDevice()

OutputDevice * cairocanvas::SpriteCanvas::getOutputDevice ( )
overridevirtual

Definition at line 182 of file cairo_spritecanvas.cxx.

◆ getServiceName()

OUString SAL_CALL cairocanvas::SpriteCanvas::getServiceName ( )
overridevirtual

Definition at line 134 of file cairo_spritecanvas.cxx.

◆ getSizePixel()

const ::basegfx::B2ISize & cairocanvas::SpriteCanvas::getSizePixel ( ) const

◆ getSupportedServiceNames()

css::uno::Sequence< OUString > cairocanvas::SpriteCanvas::getSupportedServiceNames ( )
overridevirtual

Definition at line 149 of file cairo_spritecanvas.cxx.

◆ getSurface()

SurfaceSharedPtr cairocanvas::SpriteCanvas::getSurface ( )
override

Definition at line 154 of file cairo_spritecanvas.cxx.

◆ getWindowSurface()

SurfaceSharedPtr const & cairocanvas::SpriteCanvas::getWindowSurface ( ) const

◆ initialize()

void cairocanvas::SpriteCanvas::initialize ( )

◆ repaint()

virtual bool cairocanvas::SpriteCanvas::repaint ( const ::cairo::SurfaceSharedPtr pSurface,
const css::rendering::ViewState viewState,
const css::rendering::RenderState &  renderState 
)
overridevirtual

◆ setSizePixel()

void cairocanvas::SpriteCanvas::setSizePixel ( const ::basegfx::B2ISize rSize)

Definition at line 202 of file cairo_spritecanvas.cxx.

Referenced by cairocanvas::SpriteDeviceHelper::setSize().

◆ showBuffer()

sal_Bool SAL_CALL cairocanvas::SpriteCanvas::showBuffer ( sal_Bool  bUpdateAll)
overridevirtual

Definition at line 111 of file cairo_spritecanvas.cxx.

◆ supportsService()

sal_Bool cairocanvas::SpriteCanvas::supportsService ( const OUString &  sServiceName)
overridevirtual

Definition at line 140 of file cairo_spritecanvas.cxx.

References sServiceName, and cppu::supportsService().

◆ switchBuffer()

sal_Bool SAL_CALL cairocanvas::SpriteCanvas::switchBuffer ( sal_Bool  bUpdateAll)
overridevirtual

Definition at line 116 of file cairo_spritecanvas.cxx.

◆ updateScreen()

sal_Bool SAL_CALL cairocanvas::SpriteCanvas::updateScreen ( sal_Bool  bUpdateAll)
overridevirtual

Definition at line 121 of file cairo_spritecanvas.cxx.

References m_aMutex, and maBounds.

Member Data Documentation

◆ maArguments

css::uno::Sequence< css::uno::Any > cairocanvas::SpriteCanvas::maArguments
private

Definition at line 153 of file cairo_spritecanvas.hxx.


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