LibreOffice Module sd (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
sd::presenter::PresenterCanvas Class Reference

Wrapper around a shared canvas that forwards most of its methods to the shared canvas. More...

#include <PresenterCanvas.hxx>

Inheritance diagram for sd::presenter::PresenterCanvas:
[legend]
Collaboration diagram for sd::presenter::PresenterCanvas:
[legend]

Public Member Functions

 PresenterCanvas (const css::uno::Reference< css::rendering::XSpriteCanvas > &rxUpdateCanvas, const css::uno::Reference< css::awt::XWindow > &rxUpdateWindow, const css::uno::Reference< css::rendering::XCanvas > &rxSharedCanvas, const css::uno::Reference< css::awt::XWindow > &rxSharedWindow, const css::uno::Reference< css::awt::XWindow > &rxWindow)
 This constructor is used when a PresenterCanvas object is created directly, typically by the PresenterCanvasFactory. More...
 
virtual ~PresenterCanvas () override
 
 PresenterCanvas (const PresenterCanvas &)=delete
 
PresenterCanvasoperator= (const PresenterCanvas &)=delete
 
virtual void disposing (std::unique_lock< std::mutex > &) override
 
css::awt::Point GetOffset (const css::uno::Reference< css::awt::XWindow > &rxBaseWindow)
 
css::rendering::ViewState MergeViewState (const css::rendering::ViewState &rViewState, const css::awt::Point &raOffset)
 Merge the given view state with the view state that translates the (virtual) child canvas to the shared canvas. More...
 
css::uno::Reference< css::rendering::XPolyPolygon2D > UpdateSpriteClip (const css::uno::Reference< css::rendering::XPolyPolygon2D > &rxOriginalClip, const css::geometry::RealPoint2D &rLocation)
 Called by custom sprites to update their clip polygon so that they are clipped at the borders of the canvas. More...
 
virtual void SAL_CALL clear () override
 
virtual void SAL_CALL drawPoint (const css::geometry::RealPoint2D &aPoint, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState) override
 
virtual void SAL_CALL drawLine (const css::geometry::RealPoint2D &aStartPoint, const css::geometry::RealPoint2D &aEndPoint, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState) override
 
virtual void SAL_CALL drawBezier (const css::geometry::RealBezierSegment2D &aBezierSegment, const css::geometry::RealPoint2D &aEndPoint, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL drawPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL strokePolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState, const css::rendering::StrokeAttributes &aStrokeAttributes) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL strokeTexturedPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState, const css::uno::Sequence< css::rendering::Texture > &aTextures, const css::rendering::StrokeAttributes &aStrokeAttributes) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL strokeTextureMappedPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState, const css::uno::Sequence< css::rendering::Texture > &aTextures, const css::uno::Reference< css::geometry::XMapping2D > &xMapping, const css::rendering::StrokeAttributes &aStrokeAttributes) override
 
virtual css::uno::Reference< css::rendering::XPolyPolygon2D > SAL_CALL queryStrokeShapes (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState, const css::rendering::StrokeAttributes &aStrokeAttributes) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL fillPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL fillTexturedPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState, const css::uno::Sequence< css::rendering::Texture > &xTextures) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL fillTextureMappedPolyPolygon (const css::uno::Reference< css::rendering::XPolyPolygon2D > &xPolyPolygon, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState, const css::uno::Sequence< css::rendering::Texture > &xTextures, const css::uno::Reference< css::geometry::XMapping2D > &xMapping) override
 
virtual css::uno::Reference< css::rendering::XCanvasFont > SAL_CALL createFont (const css::rendering::FontRequest &aFontRequest, const css::uno::Sequence< css::beans::PropertyValue > &aExtraFontProperties, const css::geometry::Matrix2D &aFontMatrix) 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 &aText, const css::uno::Reference< css::rendering::XCanvasFont > &xFont, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState, ::sal_Int8 nTextDirection) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL drawTextLayout (const css::uno::Reference< css::rendering::XTextLayout > &xLayoutetText, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL drawBitmap (const css::uno::Reference< css::rendering::XBitmap > &xBitmap, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState) override
 
virtual css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL drawBitmapModulated (const css::uno::Reference< css::rendering::XBitmap > &xBitmap, const css::rendering::ViewState &aViewState, const css::rendering::RenderState &aRenderState) override
 
virtual css::uno::Reference< css::rendering::XGraphicDevice > SAL_CALL getDevice () override
 
css::uno::Reference< css::rendering::XAnimatedSprite > SAL_CALL createSpriteFromAnimation (const css::uno::Reference< css::rendering::XAnimation > &animation) override
 
css::uno::Reference< css::rendering::XAnimatedSprite > SAL_CALL createSpriteFromBitmaps (const css::uno::Sequence< css::uno::Reference< css::rendering::XBitmap > > &animationBitmaps, ::sal_Int8 interpolationMode) override
 
css::uno::Reference< css::rendering::XCustomSprite > SAL_CALL createCustomSprite (const css::geometry::RealSize2D &spriteSize) override
 
css::uno::Reference< css::rendering::XSprite > SAL_CALL createClonedSprite (const css::uno::Reference< css::rendering::XSprite > &original) override
 
sal_Bool SAL_CALL updateScreen (sal_Bool bUpdateAll) override
 
virtual void SAL_CALL disposing (const css::lang::EventObject &rEvent) override
 
virtual void SAL_CALL windowResized (const css::awt::WindowEvent &rEvent) override
 
virtual void SAL_CALL windowMoved (const css::awt::WindowEvent &rEvent) override
 
virtual void SAL_CALL windowShown (const css::lang::EventObject &rEvent) override
 
virtual void SAL_CALL windowHidden (const css::lang::EventObject &rEvent) override
 
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 &rNewSize, sal_Bool bFast) override
 
- Public Member Functions inherited from comphelper::WeakComponentImplHelper< typename... Ifc >
virtual void SAL_CALL acquire () noexcept override
 
virtual void SAL_CALL release () noexcept override
 
virtual void SAL_CALL dispose () noexcept final override
 
virtual void SAL_CALL addEventListener (css::uno::Reference< css::lang::XEventListener > const &rxListener) final override
 
virtual void SAL_CALL removeEventListener (css::uno::Reference< css::lang::XEventListener > const &rxListener) final override
 
virtual css::uno::Any SAL_CALL queryInterface (css::uno::Type const &rType) override
 
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes () override
 
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId () override
 
- Public Member Functions inherited from comphelper::WeakComponentImplHelperBase
virtual ~WeakComponentImplHelperBase () override
 
virtual void SAL_CALL dispose () override
 
virtual void SAL_CALL addEventListener (css::uno::Reference< css::lang::XEventListener > const &rxListener) override
 
virtual void SAL_CALL removeEventListener (css::uno::Reference< css::lang::XEventListener > const &rxListener) override
 
virtual css::uno::Any SAL_CALL queryInterface (css::uno::Type const &rType) override
 
virtual void disposing (std::unique_lock< std::mutex > &)
 
- Public Member Functions inherited from comphelper::UnoImplBase
virtual ~UnoImplBase ()
 

Private Member Functions

::basegfx::B2DRectangle GetClipRectangle (const css::geometry::AffineMatrix2D &rViewTransform, const css::awt::Point &rOffset)
 
css::rendering::ViewState MergeViewState (const css::rendering::ViewState &rViewState)
 
void ThrowIfDisposed ()
 

Private Attributes

css::uno::Reference< css::rendering::XSpriteCanvas > mxUpdateCanvas
 
css::uno::Reference< css::awt::XWindow > mxUpdateWindow
 
css::uno::Reference< css::rendering::XCanvas > mxSharedCanvas
 
css::uno::Reference< css::awt::XWindow > mxSharedWindow
 
css::uno::Reference< css::awt::XWindow > mxWindow
 The window for which a canvas is emulated. More...
 
css::awt::Point maOffset
 Offset of the emulated canvas with respect to the shared canvas. More...
 
std::shared_ptr< CanvasUpdateRequesterm_pUpdateRequester
 The UpdateRequester is used by updateScreen() to schedule updateScreen() calls at the shared canvas. More...
 
bool mbOffsetUpdatePending
 When this flag is true (it is set to true after every call to updateScreen()) then the next call to MergeViewState updates the maOffset member. More...
 

Additional Inherited Members

- Protected Member Functions inherited from comphelper::WeakComponentImplHelperBase
void throwIfDisposed (std::unique_lock< std::mutex > &)
 
- Protected Attributes inherited from comphelper::WeakComponentImplHelperBase
comphelper::OInterfaceContainerHelper4< css::lang::XEventListener > maEventListeners
 
- Protected Attributes inherited from comphelper::UnoImplBase
std::mutex m_aMutex
 
bool m_bDisposed
 

Detailed Description

Wrapper around a shared canvas that forwards most of its methods to the shared canvas.

Most notable differences are:

  1. The transformation of the ViewState of forwarded calls is modified by adding an offset.
  2. The clip polygon of the ViewState of forwarded calls is intersected with a clip rectangle that can be set via SetClip().
  3. Calls to updateScreen() are collected. One call to the updateScreen() method of the shared canvas is made asynchronously.

The canvas can use different canvases for sharing and for sprite construction. This allows the shared canvas to be a canvas of sprite itself.

Definition at line 54 of file PresenterCanvas.hxx.

Constructor & Destructor Documentation

◆ PresenterCanvas() [1/2]

sd::presenter::PresenterCanvas::PresenterCanvas ( const css::uno::Reference< css::rendering::XSpriteCanvas > &  rxUpdateCanvas,
const css::uno::Reference< css::awt::XWindow > &  rxUpdateWindow,
const css::uno::Reference< css::rendering::XCanvas > &  rxSharedCanvas,
const css::uno::Reference< css::awt::XWindow > &  rxSharedWindow,
const css::uno::Reference< css::awt::XWindow > &  rxWindow 
)

This constructor is used when a PresenterCanvas object is created directly, typically by the PresenterCanvasFactory.

Parameters
rxUpdateCanvasThis canvas is used to call updateScreen() at and to create sprites. In the typical case this canvas is identical to the rxSharedCanvas argument.
rxUpdateWindowThe window that belongs to the canvas given by the rxUpdateCanvas argument.
rxSharedCanvasThe canvas that is wrapped by the new instance of this class. Typically this is a regular XSpriteCanvas and then is identical to the one given by the rxUpdateCanvas argument. It may be the canvas of a sprite which does not support the XSpriteCanvas interface. In that case the canvas that created the sprite can be given as rxUpdateCanvas argument to allow to create further sprites and to have proper calls to updateScreen().
rxSharedWindowThe window that belongs to the canvas given by the rxSharedCanvas argument.
rxWindowThe window that is represented by the new PresenterCanvas object. It is expected to be a direct descendant of rxSharedWindow. Its position inside rxSharedWindow defines the offset of the canvas implemented by the new PresenterCanvas object and rxSharedCanvas.

◆ ~PresenterCanvas()

sd::presenter::PresenterCanvas::~PresenterCanvas ( )
overridevirtual

Definition at line 120 of file PresenterCanvas.cxx.

◆ PresenterCanvas() [2/2]

sd::presenter::PresenterCanvas::PresenterCanvas ( const PresenterCanvas )
delete

Member Function Documentation

◆ clear()

void SAL_CALL sd::presenter::PresenterCanvas::clear ( )
overridevirtual

Definition at line 135 of file PresenterCanvas.cxx.

◆ createClonedSprite()

Reference< rendering::XSprite > SAL_CALL sd::presenter::PresenterCanvas::createClonedSprite ( const css::uno::Reference< css::rendering::XSprite > &  original)
override

Definition at line 397 of file PresenterCanvas.cxx.

◆ createCustomSprite()

Reference< rendering::XCustomSprite > SAL_CALL sd::presenter::PresenterCanvas::createCustomSprite ( const css::geometry::RealSize2D &  spriteSize)
override

Definition at line 376 of file PresenterCanvas.cxx.

◆ createFont()

css::uno::Reference< css::rendering::XCanvasFont > SAL_CALL sd::presenter::PresenterCanvas::createFont ( const css::rendering::FontRequest &  aFontRequest,
const css::uno::Sequence< css::beans::PropertyValue > &  aExtraFontProperties,
const css::geometry::Matrix2D &  aFontMatrix 
)
overridevirtual

Definition at line 273 of file PresenterCanvas.cxx.

◆ createSpriteFromAnimation()

Reference< rendering::XAnimatedSprite > SAL_CALL sd::presenter::PresenterCanvas::createSpriteFromAnimation ( const css::uno::Reference< css::rendering::XAnimation > &  animation)
override

Definition at line 348 of file PresenterCanvas.cxx.

◆ createSpriteFromBitmaps()

Reference< rendering::XAnimatedSprite > SAL_CALL sd::presenter::PresenterCanvas::createSpriteFromBitmaps ( const css::uno::Sequence< css::uno::Reference< css::rendering::XBitmap > > &  animationBitmaps,
::sal_Int8  interpolationMode 
)
override

Definition at line 361 of file PresenterCanvas.cxx.

◆ disposing() [1/2]

void SAL_CALL sd::presenter::PresenterCanvas::disposing ( const css::lang::EventObject &  rEvent)
overridevirtual

Definition at line 428 of file PresenterCanvas.cxx.

◆ disposing() [2/2]

void sd::presenter::PresenterCanvas::disposing ( std::unique_lock< std::mutex > &  )
overridevirtual

Reimplemented from comphelper::WeakComponentImplHelperBase.

Definition at line 124 of file PresenterCanvas.cxx.

◆ drawBezier()

void SAL_CALL sd::presenter::PresenterCanvas::drawBezier ( const css::geometry::RealBezierSegment2D &  aBezierSegment,
const css::geometry::RealPoint2D &  aEndPoint,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState 
)
overridevirtual

Definition at line 161 of file PresenterCanvas.cxx.

◆ drawBitmap()

css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL sd::presenter::PresenterCanvas::drawBitmap ( const css::uno::Reference< css::rendering::XBitmap > &  xBitmap,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState 
)
overridevirtual

Definition at line 317 of file PresenterCanvas.cxx.

◆ drawBitmapModulated()

css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL sd::presenter::PresenterCanvas::drawBitmapModulated ( const css::uno::Reference< css::rendering::XBitmap > &  xBitmap,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState 
)
overridevirtual

Definition at line 328 of file PresenterCanvas.cxx.

◆ drawLine()

void SAL_CALL sd::presenter::PresenterCanvas::drawLine ( const css::geometry::RealPoint2D &  aStartPoint,
const css::geometry::RealPoint2D &  aEndPoint,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState 
)
overridevirtual

Definition at line 151 of file PresenterCanvas.cxx.

◆ drawPoint()

void SAL_CALL sd::presenter::PresenterCanvas::drawPoint ( const css::geometry::RealPoint2D &  aPoint,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState 
)
overridevirtual

Definition at line 142 of file PresenterCanvas.cxx.

◆ drawPolyPolygon()

css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL sd::presenter::PresenterCanvas::drawPolyPolygon ( const css::uno::Reference< css::rendering::XPolyPolygon2D > &  xPolyPolygon,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState 
)
overridevirtual

Definition at line 171 of file PresenterCanvas.cxx.

◆ drawText()

css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL sd::presenter::PresenterCanvas::drawText ( const css::rendering::StringContext &  aText,
const css::uno::Reference< css::rendering::XCanvasFont > &  xFont,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState,
::sal_Int8  nTextDirection 
)
overridevirtual

Definition at line 293 of file PresenterCanvas.cxx.

◆ drawTextLayout()

css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL sd::presenter::PresenterCanvas::drawTextLayout ( const css::uno::Reference< css::rendering::XTextLayout > &  xLayoutetText,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState 
)
overridevirtual

Definition at line 306 of file PresenterCanvas.cxx.

◆ fillPolyPolygon()

css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL sd::presenter::PresenterCanvas::fillPolyPolygon ( const css::uno::Reference< css::rendering::XPolyPolygon2D > &  xPolyPolygon,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState 
)
overridevirtual

Definition at line 237 of file PresenterCanvas.cxx.

◆ fillTexturedPolyPolygon()

css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL sd::presenter::PresenterCanvas::fillTexturedPolyPolygon ( const css::uno::Reference< css::rendering::XPolyPolygon2D > &  xPolyPolygon,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState,
const css::uno::Sequence< css::rendering::Texture > &  xTextures 
)
overridevirtual

Definition at line 248 of file PresenterCanvas.cxx.

◆ fillTextureMappedPolyPolygon()

css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL sd::presenter::PresenterCanvas::fillTextureMappedPolyPolygon ( const css::uno::Reference< css::rendering::XPolyPolygon2D > &  xPolyPolygon,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState,
const css::uno::Sequence< css::rendering::Texture > &  xTextures,
const css::uno::Reference< css::geometry::XMapping2D > &  xMapping 
)
overridevirtual

Definition at line 260 of file PresenterCanvas.cxx.

◆ GetClipRectangle()

basegfx::B2DRectangle sd::presenter::PresenterCanvas::GetClipRectangle ( const css::geometry::AffineMatrix2D &  rViewTransform,
const css::awt::Point &  rOffset 
)
private

◆ getDevice()

css::uno::Reference< css::rendering::XGraphicDevice > SAL_CALL sd::presenter::PresenterCanvas::getDevice ( )
overridevirtual

Definition at line 339 of file PresenterCanvas.cxx.

◆ GetOffset()

awt::Point sd::presenter::PresenterCanvas::GetOffset ( const css::uno::Reference< css::awt::XWindow > &  rxBaseWindow)

◆ getScaledBitmap()

Reference< rendering::XBitmap > SAL_CALL sd::presenter::PresenterCanvas::getScaledBitmap ( const css::geometry::RealSize2D &  rNewSize,
sal_Bool  bFast 
)
overridevirtual

Definition at line 484 of file PresenterCanvas.cxx.

◆ getSize()

geometry::IntegerSize2D SAL_CALL sd::presenter::PresenterCanvas::getSize ( )
overridevirtual

Definition at line 462 of file PresenterCanvas.cxx.

◆ hasAlpha()

sal_Bool SAL_CALL sd::presenter::PresenterCanvas::hasAlpha ( )
overridevirtual

Definition at line 475 of file PresenterCanvas.cxx.

◆ MergeViewState() [1/2]

css::rendering::ViewState sd::presenter::PresenterCanvas::MergeViewState ( const css::rendering::ViewState rViewState)
private

◆ MergeViewState() [2/2]

css::rendering::ViewState sd::presenter::PresenterCanvas::MergeViewState ( const css::rendering::ViewState rViewState,
const css::awt::Point &  raOffset 
)

Merge the given view state with the view state that translates the (virtual) child canvas to the shared canvas.

Definition at line 504 of file PresenterCanvas.cxx.

◆ operator=()

PresenterCanvas & sd::presenter::PresenterCanvas::operator= ( const PresenterCanvas )
delete

◆ queryAvailableFonts()

css::uno::Sequence< css::rendering::FontInfo > SAL_CALL sd::presenter::PresenterCanvas::queryAvailableFonts ( const css::rendering::FontInfo &  aFilter,
const css::uno::Sequence< css::beans::PropertyValue > &  aFontProperties 
)
overridevirtual

Definition at line 284 of file PresenterCanvas.cxx.

◆ queryStrokeShapes()

css::uno::Reference< css::rendering::XPolyPolygon2D > SAL_CALL sd::presenter::PresenterCanvas::queryStrokeShapes ( const css::uno::Reference< css::rendering::XPolyPolygon2D > &  xPolyPolygon,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState,
const css::rendering::StrokeAttributes &  aStrokeAttributes 
)
overridevirtual

Definition at line 225 of file PresenterCanvas.cxx.

◆ strokePolyPolygon()

css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL sd::presenter::PresenterCanvas::strokePolyPolygon ( const css::uno::Reference< css::rendering::XPolyPolygon2D > &  xPolyPolygon,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState,
const css::rendering::StrokeAttributes &  aStrokeAttributes 
)
overridevirtual

Definition at line 181 of file PresenterCanvas.cxx.

◆ strokeTexturedPolyPolygon()

css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL sd::presenter::PresenterCanvas::strokeTexturedPolyPolygon ( const css::uno::Reference< css::rendering::XPolyPolygon2D > &  xPolyPolygon,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState,
const css::uno::Sequence< css::rendering::Texture > &  aTextures,
const css::rendering::StrokeAttributes &  aStrokeAttributes 
)
overridevirtual

Definition at line 193 of file PresenterCanvas.cxx.

◆ strokeTextureMappedPolyPolygon()

css::uno::Reference< css::rendering::XCachedPrimitive > SAL_CALL sd::presenter::PresenterCanvas::strokeTextureMappedPolyPolygon ( const css::uno::Reference< css::rendering::XPolyPolygon2D > &  xPolyPolygon,
const css::rendering::ViewState aViewState,
const css::rendering::RenderState &  aRenderState,
const css::uno::Sequence< css::rendering::Texture > &  aTextures,
const css::uno::Reference< css::geometry::XMapping2D > &  xMapping,
const css::rendering::StrokeAttributes &  aStrokeAttributes 
)
overridevirtual

Definition at line 206 of file PresenterCanvas.cxx.

◆ ThrowIfDisposed()

void sd::presenter::PresenterCanvas::ThrowIfDisposed ( )
private
Exceptions
css::lang::DisposedExceptionwhen the object has already been disposed.

Definition at line 682 of file PresenterCanvas.cxx.

References m_bDisposed.

◆ updateScreen()

sal_Bool SAL_CALL sd::presenter::PresenterCanvas::updateScreen ( sal_Bool  bUpdateAll)
override

Definition at line 410 of file PresenterCanvas.cxx.

◆ UpdateSpriteClip()

Reference< rendering::XPolyPolygon2D > sd::presenter::PresenterCanvas::UpdateSpriteClip ( const css::uno::Reference< css::rendering::XPolyPolygon2D > &  rxOriginalClip,
const css::geometry::RealPoint2D &  rLocation 
)

Called by custom sprites to update their clip polygon so that they are clipped at the borders of the canvas.

This method has to be called after each change of the sprite location so that the bounds of the canvas can be transformed into the coordinate system of the sprite.

Definition at line 621 of file PresenterCanvas.cxx.

◆ windowHidden()

void SAL_CALL sd::presenter::PresenterCanvas::windowHidden ( const css::lang::EventObject &  rEvent)
overridevirtual

Definition at line 455 of file PresenterCanvas.cxx.

◆ windowMoved()

void SAL_CALL sd::presenter::PresenterCanvas::windowMoved ( const css::awt::WindowEvent &  rEvent)
overridevirtual

Definition at line 443 of file PresenterCanvas.cxx.

◆ windowResized()

void SAL_CALL sd::presenter::PresenterCanvas::windowResized ( const css::awt::WindowEvent &  rEvent)
overridevirtual

Definition at line 437 of file PresenterCanvas.cxx.

◆ windowShown()

void SAL_CALL sd::presenter::PresenterCanvas::windowShown ( const css::lang::EventObject &  rEvent)
overridevirtual

Definition at line 449 of file PresenterCanvas.cxx.

Member Data Documentation

◆ m_pUpdateRequester

std::shared_ptr<CanvasUpdateRequester> sd::presenter::PresenterCanvas::m_pUpdateRequester
private

The UpdateRequester is used by updateScreen() to schedule updateScreen() calls at the shared canvas.

Definition at line 296 of file PresenterCanvas.hxx.

◆ maOffset

css::awt::Point sd::presenter::PresenterCanvas::maOffset
private

Offset of the emulated canvas with respect to the shared canvas.

Definition at line 291 of file PresenterCanvas.hxx.

◆ mbOffsetUpdatePending

bool sd::presenter::PresenterCanvas::mbOffsetUpdatePending
private

When this flag is true (it is set to true after every call to updateScreen()) then the next call to MergeViewState updates the maOffset member.

A possible optimization would set this flag only to true when one of the windows between mxWindow and mxSharedWindow changes its position.

Definition at line 304 of file PresenterCanvas.hxx.

◆ mxSharedCanvas

css::uno::Reference<css::rendering::XCanvas> sd::presenter::PresenterCanvas::mxSharedCanvas
private

Definition at line 282 of file PresenterCanvas.hxx.

◆ mxSharedWindow

css::uno::Reference<css::awt::XWindow> sd::presenter::PresenterCanvas::mxSharedWindow
private

Definition at line 283 of file PresenterCanvas.hxx.

◆ mxUpdateCanvas

css::uno::Reference<css::rendering::XSpriteCanvas> sd::presenter::PresenterCanvas::mxUpdateCanvas
private

Definition at line 280 of file PresenterCanvas.hxx.

◆ mxUpdateWindow

css::uno::Reference<css::awt::XWindow> sd::presenter::PresenterCanvas::mxUpdateWindow
private

Definition at line 281 of file PresenterCanvas.hxx.

◆ mxWindow

css::uno::Reference<css::awt::XWindow> sd::presenter::PresenterCanvas::mxWindow
private

The window for which a canvas is emulated.

Definition at line 287 of file PresenterCanvas.hxx.


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