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

Life view in a secondary window of a full screen slide show. More...

#include <PresenterSlideShowView.hxx>

Inheritance diagram for sdext::presenter::PresenterSlideShowView:
[legend]
Collaboration diagram for sdext::presenter::PresenterSlideShowView:
[legend]

Public Member Functions

 PresenterSlideShowView (css::uno::Reference< css::uno::XComponentContext > xContext, css::uno::Reference< css::drawing::framework::XResourceId > xViewId, const css::uno::Reference< css::frame::XController > &rxController, ::rtl::Reference< PresenterController > xPresenterController)
 
virtual ~PresenterSlideShowView () override
 
 PresenterSlideShowView (const PresenterSlideShowView &)=delete
 
PresenterSlideShowViewoperator= (const PresenterSlideShowView &)=delete
 
void LateInit ()
 
virtual void SAL_CALL disposing () override
 
virtual void ReleaseView () override
 Called before the view is disposed. More...
 
virtual css::uno::Reference< css::rendering::XSpriteCanvas > SAL_CALL getCanvas () override
 
virtual void SAL_CALL clear () override
 
virtual css::geometry::AffineMatrix2D SAL_CALL getTransformation () override
 
virtual css::geometry::IntegerSize2D SAL_CALL getTranslationOffset () override
 
virtual void SAL_CALL addTransformationChangedListener (const css::uno::Reference< css::util::XModifyListener > &xListener) override
 
virtual void SAL_CALL removeTransformationChangedListener (const css::uno::Reference< css::util::XModifyListener > &xListener) override
 
virtual void SAL_CALL addPaintListener (const css::uno::Reference< css::awt::XPaintListener > &xListener) override
 
virtual void SAL_CALL removePaintListener (const css::uno::Reference< css::awt::XPaintListener > &xListener) override
 
virtual void SAL_CALL addMouseListener (const css::uno::Reference< css::awt::XMouseListener > &xListener) override
 
virtual void SAL_CALL removeMouseListener (const css::uno::Reference< css::awt::XMouseListener > &xListener) override
 
virtual void SAL_CALL addMouseMotionListener (const css::uno::Reference< css::awt::XMouseMotionListener > &xListener) override
 
virtual void SAL_CALL removeMouseMotionListener (const css::uno::Reference< css::awt::XMouseMotionListener > &xListener) override
 
virtual void SAL_CALL setMouseCursor (::sal_Int16 nPointerShape) override
 
virtual css::awt::Rectangle SAL_CALL getCanvasArea () override
 
virtual void SAL_CALL disposing (const css::lang::EventObject &rEvent) override
 
virtual void SAL_CALL windowPaint (const css::awt::PaintEvent &rEvent) override
 
virtual void SAL_CALL mousePressed (const css::awt::MouseEvent &rEvent) override
 
virtual void SAL_CALL mouseReleased (const css::awt::MouseEvent &rEvent) override
 
virtual void SAL_CALL mouseEntered (const css::awt::MouseEvent &rEvent) override
 
virtual void SAL_CALL mouseExited (const css::awt::MouseEvent &rEvent) override
 
virtual void SAL_CALL mouseDragged (const css::awt::MouseEvent &rEvent) override
 
virtual void SAL_CALL mouseMoved (const css::awt::MouseEvent &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::uno::Reference< css::drawing::framework::XResourceId > SAL_CALL getResourceId () override
 
virtual sal_Bool SAL_CALL isAnchorOnly () override
 
virtual void SAL_CALL setCurrentPage (const css::uno::Reference< css::drawing::XDrawPage > &rxSlide) override
 
virtual css::uno::Reference< css::drawing::XDrawPage > SAL_CALL getCurrentPage () override
 
virtual void ActivatePresenterView () override
 
virtual void DeactivatePresenterView () override
 Called when the view is put into a cache. More...
 
virtual void ActivatePresenterView ()
 
virtual void DeactivatePresenterView ()
 Called when the view is put into a cache. More...
 
virtual void ReleaseView ()
 Called before the view is disposed. More...
 

Private Member Functions

css::uno::Reference< css::awt::XWindow > CreateViewWindow (const css::uno::Reference< css::awt::XWindow > &rxParentWindow) const
 Create the window into which the slide show will render its content. More...
 
css::uno::Reference< css::rendering::XCanvas > CreateViewCanvas (const css::uno::Reference< css::awt::XWindow > &rxWindow) const
 
void Resize ()
 
void PaintOuterWindow (const css::awt::Rectangle &rRepaintBox)
 
void PaintInnerWindow (const css::awt::PaintEvent &rEvent)
 
void PaintEndSlide (const css::awt::Rectangle &rRepaintBox)
 
void CreateBackgroundPolygons ()
 
void ThrowIfDisposed ()
 
void impl_addAndConfigureView ()
 

Private Attributes

css::uno::Reference< css::uno::XComponentContext > mxComponentContext
 
::rtl::Reference< PresenterControllermpPresenterController
 
css::uno::Reference< css::drawing::framework::XResourceId > mxViewId
 
css::uno::Reference< css::frame::XController > mxController
 
css::uno::Reference< css::presentation::XSlideShowController > mxSlideShowController
 
css::uno::Reference< css::presentation::XSlideShow > mxSlideShow
 
css::uno::Reference< css::rendering::XCanvas > mxCanvas
 
css::uno::Reference< css::rendering::XCanvas > mxViewCanvas
 
css::uno::Reference< css::awt::XPointer > mxPointer
 
css::uno::Reference< css::awt::XWindow > mxWindow
 
css::uno::Reference< css::awt::XWindow > mxViewWindow
 
css::uno::Reference< css::drawing::framework::XPane > mxTopPane
 
css::uno::Reference< css::drawing::XPresenterHelper > mxPresenterHelper
 
css::uno::Reference< css::rendering::XPolyPolygon2D > mxBackgroundPolygon1
 
css::uno::Reference< css::rendering::XPolyPolygon2D > mxBackgroundPolygon2
 
bool mbIsViewAdded
 
double mnPageAspectRatio
 Aspect ratio of the current slide. More...
 
::cppu::OBroadcastHelper maBroadcaster
 This broadcast helper is used to notify listeners registered to a SlideShowView object. More...
 
SharedBitmapDescriptor mpBackground
 
bool mbIsForcedPaintPending
 
bool mbIsPaintPending
 
OUString msClickToExitPresentationText
 
OUString msClickToExitPresentationTitle
 
OUString msTitleTemplate
 
bool mbIsEndSlideVisible
 
css::uno::Reference< css::drawing::XDrawPage > mxCurrentSlide
 

Additional Inherited Members

- Protected Member Functions inherited from sdext::presenter::CachablePresenterView
 CachablePresenterView ()
 
 ~CachablePresenterView ()
 
virtual void ActivatePresenterView ()
 
virtual void DeactivatePresenterView ()
 Called when the view is put into a cache. More...
 
virtual void ReleaseView ()
 Called before the view is disposed. More...
 
- Protected Attributes inherited from cppu::BaseMutex
mutable::osl::Mutex m_aMutex
 
- Protected Attributes inherited from sdext::presenter::CachablePresenterView
bool mbIsPresenterViewActive
 

Detailed Description

Life view in a secondary window of a full screen slide show.

Definition at line 55 of file PresenterSlideShowView.hxx.

Constructor & Destructor Documentation

◆ PresenterSlideShowView() [1/2]

sdext::presenter::PresenterSlideShowView::PresenterSlideShowView ( css::uno::Reference< css::uno::XComponentContext >  xContext,
css::uno::Reference< css::drawing::framework::XResourceId >  xViewId,
const css::uno::Reference< css::frame::XController > &  rxController,
::rtl::Reference< PresenterController xPresenterController 
)

◆ ~PresenterSlideShowView()

sdext::presenter::PresenterSlideShowView::~PresenterSlideShowView ( )
overridevirtual

Definition at line 157 of file PresenterSlideShowView.cxx.

◆ PresenterSlideShowView() [2/2]

sdext::presenter::PresenterSlideShowView::PresenterSlideShowView ( const PresenterSlideShowView )
delete

Member Function Documentation

◆ ActivatePresenterView()

void sdext::presenter::PresenterSlideShowView::ActivatePresenterView ( )
overridevirtual

◆ addMouseListener()

void SAL_CALL sdext::presenter::PresenterSlideShowView::addMouseListener ( const css::uno::Reference< css::awt::XMouseListener > &  xListener)
overridevirtual

◆ addMouseMotionListener()

void SAL_CALL sdext::presenter::PresenterSlideShowView::addMouseMotionListener ( const css::uno::Reference< css::awt::XMouseMotionListener > &  xListener)
overridevirtual

◆ addPaintListener()

void SAL_CALL sdext::presenter::PresenterSlideShowView::addPaintListener ( const css::uno::Reference< css::awt::XPaintListener > &  xListener)
overridevirtual

◆ addTransformationChangedListener()

void SAL_CALL sdext::presenter::PresenterSlideShowView::addTransformationChangedListener ( const css::uno::Reference< css::util::XModifyListener > &  xListener)
overridevirtual

◆ clear()

void SAL_CALL sdext::presenter::PresenterSlideShowView::clear ( )
overridevirtual

◆ CreateBackgroundPolygons()

void sdext::presenter::PresenterSlideShowView::CreateBackgroundPolygons ( )
private

◆ CreateViewCanvas()

Reference< rendering::XCanvas > sdext::presenter::PresenterSlideShowView::CreateViewCanvas ( const css::uno::Reference< css::awt::XWindow > &  rxWindow) const
private

Definition at line 814 of file PresenterSlideShowView.cxx.

References mxPresenterHelper, and mxTopPane.

Referenced by LateInit().

◆ CreateViewWindow()

Reference< awt::XWindow > sdext::presenter::PresenterSlideShowView::CreateViewWindow ( const css::uno::Reference< css::awt::XWindow > &  rxParentWindow) const
private

Create the window into which the slide show will render its content.

This window has the correct aspect ratio and is displayed centered and as large as possible in its parent window.

Definition at line 780 of file PresenterSlideShowView.cxx.

References mxComponentContext, and xFactory.

Referenced by LateInit().

◆ DeactivatePresenterView()

void sdext::presenter::PresenterSlideShowView::DeactivatePresenterView ( )
overridevirtual

Called when the view is put into a cache.

The view must not paint itself while being deactivated.

Reimplemented from sdext::presenter::CachablePresenterView.

Definition at line 624 of file PresenterSlideShowView.cxx.

References mbIsViewAdded, and mxSlideShow.

◆ disposing() [1/2]

void sdext::presenter::PresenterSlideShowView::disposing ( )
overridevirtual

◆ disposing() [2/2]

virtual void SAL_CALL sdext::presenter::PresenterSlideShowView::disposing ( const css::lang::EventObject &  rEvent)
overridevirtual

◆ getCanvas()

Reference< rendering::XSpriteCanvas > SAL_CALL sdext::presenter::PresenterSlideShowView::getCanvas ( )
overridevirtual

Definition at line 295 of file PresenterSlideShowView.cxx.

References mxViewCanvas, and ThrowIfDisposed().

◆ getCanvasArea()

awt::Rectangle SAL_CALL sdext::presenter::PresenterSlideShowView::getCanvasArea ( )
overridevirtual

Definition at line 453 of file PresenterSlideShowView.cxx.

References mxPresenterHelper, mxTopPane, and mxViewWindow.

◆ getCurrentPage()

css::uno::Reference< css::drawing::XDrawPage > SAL_CALL sdext::presenter::PresenterSlideShowView::getCurrentPage ( )
overridevirtual

Definition at line 277 of file PresenterSlideShowView.cxx.

References mxCurrentSlide.

◆ getResourceId()

Reference< XResourceId > SAL_CALL sdext::presenter::PresenterSlideShowView::getResourceId ( )
overridevirtual

Definition at line 603 of file PresenterSlideShowView.cxx.

References mxViewId.

◆ getTransformation()

geometry::AffineMatrix2D SAL_CALL sdext::presenter::PresenterSlideShowView::getTransformation ( )
overridevirtual

Definition at line 329 of file PresenterSlideShowView.cxx.

References mxViewWindow, and ThrowIfDisposed().

◆ getTranslationOffset()

geometry::IntegerSize2D SAL_CALL sdext::presenter::PresenterSlideShowView::getTranslationOffset ( )
overridevirtual

Definition at line 355 of file PresenterSlideShowView.cxx.

References ThrowIfDisposed().

◆ impl_addAndConfigureView()

void sdext::presenter::PresenterSlideShowView::impl_addAndConfigureView ( )
private

Definition at line 939 of file PresenterSlideShowView.cxx.

References Any, and mxSlideShow.

Referenced by ActivatePresenterView(), LateInit(), and PaintInnerWindow().

◆ isAnchorOnly()

sal_Bool SAL_CALL sdext::presenter::PresenterSlideShowView::isAnchorOnly ( )
overridevirtual

Definition at line 608 of file PresenterSlideShowView.cxx.

◆ LateInit()

void sdext::presenter::PresenterSlideShowView::LateInit ( )

◆ mouseDragged()

void SAL_CALL sdext::presenter::PresenterSlideShowView::mouseDragged ( const css::awt::MouseEvent &  rEvent)
overridevirtual

◆ mouseEntered()

void SAL_CALL sdext::presenter::PresenterSlideShowView::mouseEntered ( const css::awt::MouseEvent &  rEvent)
overridevirtual

◆ mouseExited()

void SAL_CALL sdext::presenter::PresenterSlideShowView::mouseExited ( const css::awt::MouseEvent &  rEvent)
overridevirtual

◆ mouseMoved()

void SAL_CALL sdext::presenter::PresenterSlideShowView::mouseMoved ( const css::awt::MouseEvent &  rEvent)
overridevirtual

◆ mousePressed()

void SAL_CALL sdext::presenter::PresenterSlideShowView::mousePressed ( const css::awt::MouseEvent &  rEvent)
overridevirtual

◆ mouseReleased()

void SAL_CALL sdext::presenter::PresenterSlideShowView::mouseReleased ( const css::awt::MouseEvent &  rEvent)
overridevirtual

◆ operator=()

PresenterSlideShowView & sdext::presenter::PresenterSlideShowView::operator= ( const PresenterSlideShowView )
delete

◆ PaintEndSlide()

void sdext::presenter::PresenterSlideShowView::PaintEndSlide ( const css::awt::Rectangle &  rRepaintBox)
private

◆ PaintInnerWindow()

void sdext::presenter::PresenterSlideShowView::PaintInnerWindow ( const css::awt::PaintEvent &  rEvent)
private

The slide show relies on the back buffer of the canvas not being modified. With a shared canvas there are times when that can not be guaranteed.

Definition at line 751 of file PresenterSlideShowView.cxx.

References aEvent, cppu::OBroadcastHelperVar< class container, class keyType >::getContainer(), impl_addAndConfigureView(), maBroadcaster, mbIsForcedPaintPending, mbIsViewAdded, mxCanvas, mxSlideShow, and cppu::OInterfaceContainerHelper::notifyEach().

Referenced by windowPaint().

◆ PaintOuterWindow()

void sdext::presenter::PresenterSlideShowView::PaintOuterWindow ( const css::awt::Rectangle &  rRepaintBox)
private

◆ ReleaseView()

void sdext::presenter::PresenterSlideShowView::ReleaseView ( )
overridevirtual

Called before the view is disposed.

This gives the view the opportunity to trigger actions that may lead to (synchronous) callbacks that do not result in DisposedExceptions.

Reimplemented from sdext::presenter::CachablePresenterView.

Definition at line 284 of file PresenterSlideShowView.cxx.

References mbIsViewAdded, and mxSlideShow.

◆ removeMouseListener()

void SAL_CALL sdext::presenter::PresenterSlideShowView::removeMouseListener ( const css::uno::Reference< css::awt::XMouseListener > &  xListener)
overridevirtual

◆ removeMouseMotionListener()

void SAL_CALL sdext::presenter::PresenterSlideShowView::removeMouseMotionListener ( const css::uno::Reference< css::awt::XMouseMotionListener > &  xListener)
overridevirtual

◆ removePaintListener()

void SAL_CALL sdext::presenter::PresenterSlideShowView::removePaintListener ( const css::uno::Reference< css::awt::XPaintListener > &  xListener)
overridevirtual

◆ removeTransformationChangedListener()

void SAL_CALL sdext::presenter::PresenterSlideShowView::removeTransformationChangedListener ( const css::uno::Reference< css::util::XModifyListener > &  xListener)
overridevirtual

◆ Resize()

void sdext::presenter::PresenterSlideShowView::Resize ( )
private

◆ setCurrentPage()

void SAL_CALL sdext::presenter::PresenterSlideShowView::setCurrentPage ( const css::uno::Reference< css::drawing::XDrawPage > &  rxSlide)
overridevirtual

◆ setMouseCursor()

void SAL_CALL sdext::presenter::PresenterSlideShowView::setMouseCursor ( ::sal_Int16  nPointerShape)
overridevirtual

◆ ThrowIfDisposed()

void sdext::presenter::PresenterSlideShowView::ThrowIfDisposed ( )
private

◆ windowHidden()

void SAL_CALL sdext::presenter::PresenterSlideShowView::windowHidden ( const css::lang::EventObject &  rEvent)
overridevirtual

Definition at line 599 of file PresenterSlideShowView.cxx.

◆ windowMoved()

void SAL_CALL sdext::presenter::PresenterSlideShowView::windowMoved ( const css::awt::WindowEvent &  rEvent)
overridevirtual

Definition at line 588 of file PresenterSlideShowView.cxx.

References mbIsForcedPaintPending, and mbIsPaintPending.

◆ windowPaint()

void SAL_CALL sdext::presenter::PresenterSlideShowView::windowPaint ( const css::awt::PaintEvent &  rEvent)
overridevirtual

◆ windowResized()

void SAL_CALL sdext::presenter::PresenterSlideShowView::windowResized ( const css::awt::WindowEvent &  rEvent)
overridevirtual

Definition at line 580 of file PresenterSlideShowView.cxx.

References Resize(), and ThrowIfDisposed().

◆ windowShown()

void SAL_CALL sdext::presenter::PresenterSlideShowView::windowShown ( const css::lang::EventObject &  rEvent)
overridevirtual

Definition at line 594 of file PresenterSlideShowView.cxx.

References Resize().

Member Data Documentation

◆ maBroadcaster

::cppu::OBroadcastHelper sdext::presenter::PresenterSlideShowView::maBroadcaster
private

◆ mbIsEndSlideVisible

bool sdext::presenter::PresenterSlideShowView::mbIsEndSlideVisible
private

Definition at line 209 of file PresenterSlideShowView.hxx.

Referenced by mousePressed(), setCurrentPage(), and windowPaint().

◆ mbIsForcedPaintPending

bool sdext::presenter::PresenterSlideShowView::mbIsForcedPaintPending
private

Definition at line 204 of file PresenterSlideShowView.hxx.

Referenced by clear(), PaintInnerWindow(), Resize(), and windowMoved().

◆ mbIsPaintPending

bool sdext::presenter::PresenterSlideShowView::mbIsPaintPending
private

Definition at line 205 of file PresenterSlideShowView.hxx.

Referenced by clear(), Resize(), and windowMoved().

◆ mbIsViewAdded

bool sdext::presenter::PresenterSlideShowView::mbIsViewAdded
private

◆ mnPageAspectRatio

double sdext::presenter::PresenterSlideShowView::mnPageAspectRatio
private

Aspect ratio of the current slide.

Definition at line 195 of file PresenterSlideShowView.hxx.

Referenced by PresenterSlideShowView(), and Resize().

◆ mpBackground

SharedBitmapDescriptor sdext::presenter::PresenterSlideShowView::mpBackground
private

Definition at line 202 of file PresenterSlideShowView.hxx.

Referenced by disposing(), PaintOuterWindow(), and PresenterSlideShowView().

◆ mpPresenterController

::rtl::Reference<PresenterController> sdext::presenter::PresenterSlideShowView::mpPresenterController
private

◆ msClickToExitPresentationText

OUString sdext::presenter::PresenterSlideShowView::msClickToExitPresentationText
private

Definition at line 206 of file PresenterSlideShowView.hxx.

Referenced by disposing(), LateInit(), and PaintEndSlide().

◆ msClickToExitPresentationTitle

OUString sdext::presenter::PresenterSlideShowView::msClickToExitPresentationTitle
private

Definition at line 207 of file PresenterSlideShowView.hxx.

Referenced by disposing(), LateInit(), and setCurrentPage().

◆ msTitleTemplate

OUString sdext::presenter::PresenterSlideShowView::msTitleTemplate
private

Definition at line 208 of file PresenterSlideShowView.hxx.

Referenced by disposing(), and setCurrentPage().

◆ mxBackgroundPolygon1

css::uno::Reference<css::rendering::XPolyPolygon2D> sdext::presenter::PresenterSlideShowView::mxBackgroundPolygon1
private

◆ mxBackgroundPolygon2

css::uno::Reference<css::rendering::XPolyPolygon2D> sdext::presenter::PresenterSlideShowView::mxBackgroundPolygon2
private

◆ mxCanvas

css::uno::Reference<css::rendering::XCanvas> sdext::presenter::PresenterSlideShowView::mxCanvas
private

◆ mxComponentContext

css::uno::Reference<css::uno::XComponentContext> sdext::presenter::PresenterSlideShowView::mxComponentContext
private

Definition at line 176 of file PresenterSlideShowView.hxx.

Referenced by CreateViewWindow(), disposing(), LateInit(), and setMouseCursor().

◆ mxController

css::uno::Reference<css::frame::XController> sdext::presenter::PresenterSlideShowView::mxController
private

Definition at line 179 of file PresenterSlideShowView.hxx.

Referenced by disposing(), and LateInit().

◆ mxCurrentSlide

css::uno::Reference<css::drawing::XDrawPage> sdext::presenter::PresenterSlideShowView::mxCurrentSlide
private

Definition at line 210 of file PresenterSlideShowView.hxx.

Referenced by disposing(), getCurrentPage(), and setCurrentPage().

◆ mxPointer

css::uno::Reference<css::awt::XPointer> sdext::presenter::PresenterSlideShowView::mxPointer
private

Definition at line 184 of file PresenterSlideShowView.hxx.

Referenced by disposing(), and setMouseCursor().

◆ mxPresenterHelper

css::uno::Reference<css::drawing::XPresenterHelper> sdext::presenter::PresenterSlideShowView::mxPresenterHelper
private

Definition at line 188 of file PresenterSlideShowView.hxx.

Referenced by CreateViewCanvas(), getCanvasArea(), and LateInit().

◆ mxSlideShow

css::uno::Reference<css::presentation::XSlideShow> sdext::presenter::PresenterSlideShowView::mxSlideShow
private

◆ mxSlideShowController

css::uno::Reference<css::presentation::XSlideShowController> sdext::presenter::PresenterSlideShowView::mxSlideShowController
private

Definition at line 180 of file PresenterSlideShowView.hxx.

Referenced by disposing(), LateInit(), and setCurrentPage().

◆ mxTopPane

css::uno::Reference<css::drawing::framework::XPane> sdext::presenter::PresenterSlideShowView::mxTopPane
private

Definition at line 187 of file PresenterSlideShowView.hxx.

Referenced by CreateViewCanvas(), getCanvasArea(), and LateInit().

◆ mxViewCanvas

css::uno::Reference<css::rendering::XCanvas> sdext::presenter::PresenterSlideShowView::mxViewCanvas
private

Definition at line 183 of file PresenterSlideShowView.hxx.

Referenced by clear(), disposing(), getCanvas(), and LateInit().

◆ mxViewId

css::uno::Reference<css::drawing::framework::XResourceId> sdext::presenter::PresenterSlideShowView::mxViewId
private

◆ mxViewWindow

css::uno::Reference<css::awt::XWindow> sdext::presenter::PresenterSlideShowView::mxViewWindow
private

◆ mxWindow

css::uno::Reference<css::awt::XWindow> sdext::presenter::PresenterSlideShowView::mxWindow
private

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