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 ::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 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, Mutex, UnambiguousBase > >
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, Mutex, UnambiguousBase >
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, Mutex, UnambiguousBase >
 CanvasBase ()
 Create CanvasBase. More...
 
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
 
- Public Member Functions inherited from Base
 Base (uno_Environment *pEnv, cppu::Enterable *pEnterable)
 
void acquireWeak ()
 
void releaseWeak ()
 
void harden (uno_Environment **ppHardEnv)
 
void acquire ()
 
void release ()
 
void registerProxyInterface (void **ppProxy, uno_freeProxyFunc freeProxy, OUString const &oid, typelib_InterfaceTypeDescription *pTypeDescr)
 
void revokeInterface (void *pInterface)
 
void getObjectIdentifier (void *pInterface, OUString *pOid)
 
void getRegisteredInterface (void **, OUString const &oid, typelib_InterfaceTypeDescription *)
 
void getRegisteredInterfaces (void ***, sal_Int32 *pnLen, uno_memAlloc memAlloc)
 
void computeObjectIdentifier (void *pInterface, OUString *pOid)
 
void acquireInterface (void *pInterface)
 
void releaseInterface (void *pInterface)
 
virtual void v_enter () override
 
virtual void v_leave () override
 
virtual void v_callInto_v (uno_EnvCallee *pCallee, va_list *pParam) override
 
virtual void v_callOut_v (uno_EnvCallee *pCallee, va_list *pParam) override
 
virtual bool v_isValid (OUString *pReason) override
 
- Public Member Functions inherited from cppu::Enterable
virtual bool v_isValid (rtl::OUString *pReason)=0
 
virtual ~Enterable ()
 
 Enterable ()
 
void enter ()
 
void leave ()
 
void callInto_v (uno_EnvCallee *pCallee, va_list *pParam)
 
void callOut_v (uno_EnvCallee *pCallee, va_list *pParam)
 
void callInto (uno_EnvCallee *pCallee,...)
 
void callOut (uno_EnvCallee *pCallee,...)
 
int isValid (rtl::OUString *pReason)
 
- Public Member Functions inherited from cairocanvas::RepaintTarget
virtual ~RepaintTarget ()
 

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, Mutex, UnambiguousBase >
typedef CanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase > BaseType
 
- Public Types inherited from canvas::CanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >
typedef Base BaseType
 
typedef Mutex MutexType
 
typedef UnambiguousBase UnambiguousBaseType
 
- Protected Member Functions inherited from canvas::CanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >
 ~CanvasBase ()
 
- Protected Member Functions inherited from Base
virtual ~Base () override
 
- Protected Attributes inherited from canvas::SpriteCanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >
SpriteRedrawManager maRedrawManager
 
- Protected Attributes inherited from canvas::CanvasBase< Base, CanvasHelper, Mutex, UnambiguousBase >
CanvasHelper maCanvasHelper
 
bool mbSurfaceDirty
 
- Protected Attributes inherited from Base
oslInterlockedCount m_nRef
 
uno_Environmentm_pEnv
 
std::unique_ptr< cppu::Enterablem_pEnterable
 
EnvFun_Pm_env_acquire
 
EnvFun_Pm_env_release
 
EnvFun_PP_Pm_env_harden
 
EnvFun_Pm_env_acquireWeak
 
EnvFun_Pm_env_releaseWeak
 
ExtEnv_registerProxyInterfacem_env_registerProxyInterface
 
ExtEnv_revokeInterfacem_env_revokeInterface
 
ExtEnv_getObjectIdentifierm_env_getObjectIdentifier
 
ExtEnv_getRegisteredInterfacem_env_getRegisteredInterface
 
ExtEnv_getRegisteredInterfacesm_env_getRegisteredInterfaces
 
ExtEnv_computeObjectIdentifierm_env_computeObjectIdentifier
 
ExtEnv_acquireInterfacem_env_acquireInterface
 
ExtEnv_releaseInterfacem_env_releaseInterface
 

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 105 of file cairo_spritecanvas.hxx.

Constructor & Destructor Documentation

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

Member Function Documentation

SurfaceSharedPtr cairocanvas::SpriteCanvas::changeSurface ( )
override

Definition at line 168 of file cairo_spritecanvas.cxx.

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

Definition at line 151 of file cairo_spritecanvas.cxx.

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

Definition at line 156 of file cairo_spritecanvas.cxx.

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

void cairocanvas::SpriteCanvas::disposeThis ( )
overridevirtual
void cairocanvas::SpriteCanvas::flush ( )
SurfaceSharedPtr const & cairocanvas::SpriteCanvas::getBufferSurface ( ) const
OutputDevice * cairocanvas::SpriteCanvas::getOutputDevice ( )
overridevirtual

Definition at line 174 of file cairo_spritecanvas.cxx.

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

Definition at line 141 of file cairo_spritecanvas.cxx.

References SPRITECANVAS_SERVICE_NAME.

const ::basegfx::B2ISize & cairocanvas::SpriteCanvas::getSizePixel ( ) const
SurfaceSharedPtr cairocanvas::SpriteCanvas::getSurface ( )
override

Definition at line 146 of file cairo_spritecanvas.cxx.

SurfaceSharedPtr const & cairocanvas::SpriteCanvas::getWindowSurface ( ) const
void cairocanvas::SpriteCanvas::initialize ( )
virtual bool cairocanvas::SpriteCanvas::repaint ( const ::cairo::SurfaceSharedPtr pSurface,
const css::rendering::ViewState viewState,
const css::rendering::RenderState &  renderState 
)
overridevirtual
void cairocanvas::SpriteCanvas::setSizePixel ( const ::basegfx::B2ISize rSize)
sal_Bool SAL_CALL cairocanvas::SpriteCanvas::showBuffer ( sal_Bool  bUpdateAll)
overridevirtual

Definition at line 118 of file cairo_spritecanvas.cxx.

References updateScreen().

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

Definition at line 123 of file cairo_spritecanvas.cxx.

References updateScreen().

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

Member Data Documentation

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

Definition at line 154 of file cairo_spritecanvas.hxx.

Referenced by initialize().


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