LibreOffice Module slideshow (master) 1
Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
slideshow::internal::WaitSymbol Class Reference

On-screen 'hour glass' for when slideshow is unresponsive. More...

#include <waitsymbol.hxx>

Inheritance diagram for slideshow::internal::WaitSymbol:
[legend]
Collaboration diagram for slideshow::internal::WaitSymbol:
[legend]

Public Member Functions

 WaitSymbol (const WaitSymbol &)=delete
 
WaitSymboloperator= (const WaitSymbol &)=delete
 
void show ()
 Shows the wait symbol. More...
 
void hide ()
 Hides the wait symbol. More...
 
virtual void viewAdded (const UnoViewSharedPtr &rView)=0
 Notify new view. More...
 
virtual void viewRemoved (const UnoViewSharedPtr &rView)=0
 Notify removed view. More...
 
virtual void viewChanged (const UnoViewSharedPtr &rView)=0
 Notify changed view. More...
 
virtual void viewsChanged ()=0
 Notify that all views changed. More...
 
- Public Member Functions inherited from slideshow::internal::SharedPtrAble
virtual ~SharedPtrAble ()
 

Static Public Member Functions

static WaitSymbolSharedPtr create (const css::uno::Reference< css::rendering::XBitmap > &xBitmap, ScreenUpdater &rScreenUpdater, EventMultiplexer &rEventMultiplexer, const UnoViewContainer &rViewContainer)
 

Private Types

typedef ::std::vector< ::std::pair< UnoViewSharedPtr, cppcanvas::CustomSpriteSharedPtr > > ViewsVecT
 

Private Member Functions

 WaitSymbol (css::uno::Reference< css::rendering::XBitmap > xBitmap, ScreenUpdater &rScreenUpdater, const UnoViewContainer &rViewContainer)
 
virtual void viewAdded (const UnoViewSharedPtr &rView) override
 Notify new view. More...
 
virtual void viewRemoved (const UnoViewSharedPtr &rView) override
 Notify removed view. More...
 
virtual void viewChanged (const UnoViewSharedPtr &rView) override
 Notify changed view. More...
 
virtual void viewsChanged () override
 Notify that all views changed. More...
 
void setVisible (const bool bVisible)
 
::basegfx::B2DPoint calcSpritePos (UnoViewSharedPtr const &rView) const
 

Private Attributes

css::uno::Reference< css::rendering::XBitmap > mxBitmap
 
ViewsVecT maViews
 
ScreenUpdatermrScreenUpdater
 
bool mbVisible
 

Detailed Description

On-screen 'hour glass' for when slideshow is unresponsive.

Definition at line 40 of file waitsymbol.hxx.

Member Typedef Documentation

◆ ViewsVecT

Definition at line 75 of file waitsymbol.hxx.

Constructor & Destructor Documentation

◆ WaitSymbol() [1/2]

slideshow::internal::WaitSymbol::WaitSymbol ( const WaitSymbol )
delete

Referenced by create().

◆ WaitSymbol() [2/2]

slideshow::internal::WaitSymbol::WaitSymbol ( css::uno::Reference< css::rendering::XBitmap >  xBitmap,
ScreenUpdater rScreenUpdater,
const UnoViewContainer rViewContainer 
)
private

Member Function Documentation

◆ calcSpritePos()

basegfx::B2DPoint slideshow::internal::WaitSymbol::calcSpritePos ( UnoViewSharedPtr const &  rView) const
private

◆ create()

WaitSymbolSharedPtr slideshow::internal::WaitSymbol::create ( const css::uno::Reference< css::rendering::XBitmap > &  xBitmap,
ScreenUpdater rScreenUpdater,
EventMultiplexer rEventMultiplexer,
const UnoViewContainer rViewContainer 
)
static

◆ hide()

void slideshow::internal::WaitSymbol::hide ( )
inline

Hides the wait symbol.

Definition at line 57 of file waitsymbol.hxx.

References setVisible().

◆ operator=()

WaitSymbol & slideshow::internal::WaitSymbol::operator= ( const WaitSymbol )
delete

◆ setVisible()

void slideshow::internal::WaitSymbol::setVisible ( const bool  bVisible)
private

◆ show()

void slideshow::internal::WaitSymbol::show ( )
inline

Shows the wait symbol.

Definition at line 53 of file waitsymbol.hxx.

References setVisible().

◆ viewAdded()

void slideshow::internal::WaitSymbol::viewAdded ( const UnoViewSharedPtr rView)
overrideprivatevirtual

Notify new view.

Parameters
rViewThe newly added view

Implements slideshow::internal::ViewEventHandler.

Definition at line 107 of file waitsymbol.cxx.

References calcSpritePos(), canvas::tools::initRenderState(), canvas::tools::initViewState(), maViews, mbVisible, mxBitmap, and TOOLS_WARN_EXCEPTION.

◆ viewChanged()

void slideshow::internal::WaitSymbol::viewChanged ( const UnoViewSharedPtr rView)
overrideprivatevirtual

Notify changed view.

Reasons for a viewChanged notification can be different view size, transformation, or other device properties (color resolution or profile, etc.)

Parameters
rViewThe changed view

Implements slideshow::internal::ViewEventHandler.

Definition at line 149 of file waitsymbol.cxx.

References calcSpritePos(), and maViews.

◆ viewRemoved()

void slideshow::internal::WaitSymbol::viewRemoved ( const UnoViewSharedPtr rView)
overrideprivatevirtual

Notify removed view.

Parameters
rViewThe removed view

Implements slideshow::internal::ViewEventHandler.

Definition at line 138 of file waitsymbol.cxx.

References maViews.

◆ viewsChanged()

void slideshow::internal::WaitSymbol::viewsChanged ( )
overrideprivatevirtual

Notify that all views changed.

Reasons for a viewChanged notification can be different view size, transformation, or other device properties (color resolution or profile, etc.)

Note that this method avoids hidden inefficiencies (O(n^2) behaviour when viewChanged() needs to perform linear searches)

Implements slideshow::internal::ViewEventHandler.

Definition at line 169 of file waitsymbol.cxx.

References calcSpritePos(), and maViews.

Member Data Documentation

◆ maViews

ViewsVecT slideshow::internal::WaitSymbol::maViews
private

Definition at line 79 of file waitsymbol.hxx.

Referenced by setVisible(), viewAdded(), viewChanged(), viewRemoved(), and viewsChanged().

◆ mbVisible

bool slideshow::internal::WaitSymbol::mbVisible
private

Definition at line 81 of file waitsymbol.hxx.

Referenced by setVisible(), and viewAdded().

◆ mrScreenUpdater

ScreenUpdater& slideshow::internal::WaitSymbol::mrScreenUpdater
private

Definition at line 80 of file waitsymbol.hxx.

Referenced by setVisible().

◆ mxBitmap

css::uno::Reference<css::rendering::XBitmap> slideshow::internal::WaitSymbol::mxBitmap
private

Definition at line 77 of file waitsymbol.hxx.

Referenced by calcSpritePos(), and viewAdded().


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