LibreOffice Module slideshow (master) 1
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
slideshow::internal::EventMultiplexerImpl Struct Reference
Collaboration diagram for slideshow::internal::EventMultiplexerImpl:
[legend]

Public Types

typedef ThreadUnsafeListenerContainer< PrioritizedHandlerEntry< EventHandler >, std::vector< PrioritizedHandlerEntry< EventHandler > > > ImplNextEffectHandlers
 
typedef PrioritizedHandlerEntry< MouseEventHandlerImplMouseHandlerEntry
 
typedef ThreadUnsafeListenerContainer< ImplMouseHandlerEntry, std::vector< ImplMouseHandlerEntry > > ImplMouseHandlers
 
typedef ThreadUnsafeListenerContainer< EventHandlerSharedPtr, std::vector< EventHandlerSharedPtr > > ImplEventHandlers
 
typedef ThreadUnsafeListenerContainer< AnimationEventHandlerSharedPtr, std::vector< AnimationEventHandlerSharedPtr > > ImplAnimationHandlers
 
typedef ThreadUnsafeListenerContainer< PauseEventHandlerSharedPtr, std::vector< PauseEventHandlerSharedPtr > > ImplPauseHandlers
 
typedef ThreadUnsafeListenerContainer< ViewEventHandlerWeakPtrWrapper, std::vector< ViewEventHandlerWeakPtrWrapper > > ImplViewHandlers
 
typedef ThreadUnsafeListenerContainer< ViewRepaintHandlerSharedPtr, std::vector< ViewRepaintHandlerSharedPtr > > ImplRepaintHandlers
 
typedef ThreadUnsafeListenerContainer< ShapeListenerEventHandlerSharedPtr, std::vector< ShapeListenerEventHandlerSharedPtr > > ImplShapeListenerHandlers
 
typedef ThreadUnsafeListenerContainer< UserPaintEventHandlerSharedPtr, std::vector< UserPaintEventHandlerSharedPtr > > ImplUserPaintEventHandlers
 
typedef ThreadUnsafeListenerContainer< PrioritizedHandlerEntry< HyperlinkHandler >, std::vector< PrioritizedHandlerEntry< HyperlinkHandler > > > ImplHyperLinkHandlers
 

Public Member Functions

 EventMultiplexerImpl (EventQueue &rEventQueue, UnoViewContainer const &rViewContainer)
 
 ~EventMultiplexerImpl ()
 
void clear ()
 Remove all handlers. More...
 
void mousePressed (const awt::MouseEvent &e)
 
void mouseReleased (const awt::MouseEvent &e)
 
void mouseDragged (const awt::MouseEvent &e)
 
void mouseMoved (const awt::MouseEvent &e)
 
bool isMouseListenerRegistered () const
 
template<typename XSlideShowViewFunc >
void forEachView (XSlideShowViewFunc pViewMethod)
 
UnoViewSharedPtr findUnoView (const uno::Reference< presentation::XSlideShowView > &xView) const
 
template<typename RegisterFunction >
void addMouseHandler (ImplMouseHandlers &rHandlerContainer, const MouseEventHandlerSharedPtr &rHandler, double nPriority, RegisterFunction pRegisterListener)
 
bool notifyMouseHandlers (const ImplMouseHandlers &rQueue, bool(MouseEventHandler::*pHandlerMethod)(const awt::MouseEvent &), const awt::MouseEvent &e)
 
bool notifyNextEffect ()
 
void tick ()
 Called for automatic nextEffect. More...
 
void scheduleTick ()
 Schedules a tick event. More...
 
void handleTicks ()
 Schedules tick events, if mbIsAutoMode is true. More...
 
basegfx::B2DPoint toMatrixPoint (uno::Reference< presentation::XSlideShowView > xView, basegfx::B2DPoint pnt)
 
basegfx::B2DPoint toNormalPoint (uno::Reference< presentation::XSlideShowView > xView, basegfx::B2DPoint pnt)
 

Static Public Member Functions

static bool notifyAllAnimationHandlers (ImplAnimationHandlers const &rContainer, AnimationNodeSharedPtr const &rNode)
 

Public Attributes

EventQueuemrEventQueue
 
UnoViewContainer const & mrViewContainer
 
::rtl::Reference< EventMultiplexerListener > mxListener
 
ImplNextEffectHandlers maNextEffectHandlers
 
ImplEventHandlers maSlideStartHandlers
 
ImplEventHandlers maSlideEndHandlers
 
ImplAnimationHandlers maAnimationStartHandlers
 
ImplAnimationHandlers maAnimationEndHandlers
 
ImplEventHandlers maSlideAnimationsEndHandlers
 
ImplAnimationHandlers maAudioStoppedHandlers
 
ImplAnimationHandlers maCommandStopAudioHandlers
 
ImplPauseHandlers maPauseHandlers
 
ImplViewHandlers maViewHandlers
 
ImplRepaintHandlers maViewRepaintHandlers
 
ImplShapeListenerHandlers maShapeListenerHandlers
 
ImplUserPaintEventHandlers maUserPaintEventHandlers
 
ImplMouseHandlers maMouseClickHandlers
 
ImplMouseHandlers maMouseDoubleClickHandlers
 
ImplMouseHandlers maMouseMoveHandlers
 
ImplHyperLinkHandlers maHyperlinkHandlers
 
double mnTimeout
 automatic next effect mode timeout More...
 
::std::weak_ptr< EventmpTickEvent
 Holds ptr to optional tick event weakly. More...
 
bool mbIsAutoMode
 

Detailed Description

Definition at line 211 of file eventmultiplexer.cxx.

Member Typedef Documentation

◆ ImplAnimationHandlers

Definition at line 272 of file eventmultiplexer.cxx.

◆ ImplEventHandlers

Definition at line 269 of file eventmultiplexer.cxx.

◆ ImplHyperLinkHandlers

Definition at line 290 of file eventmultiplexer.cxx.

◆ ImplMouseHandlerEntry

Definition at line 263 of file eventmultiplexer.cxx.

◆ ImplMouseHandlers

Definition at line 266 of file eventmultiplexer.cxx.

◆ ImplNextEffectHandlers

typedef ThreadUnsafeListenerContainer< PrioritizedHandlerEntry<EventHandler>, std::vector< PrioritizedHandlerEntry<EventHandler> > > slideshow::internal::EventMultiplexerImpl::ImplNextEffectHandlers

Definition at line 262 of file eventmultiplexer.cxx.

◆ ImplPauseHandlers

Definition at line 275 of file eventmultiplexer.cxx.

◆ ImplRepaintHandlers

Definition at line 281 of file eventmultiplexer.cxx.

◆ ImplShapeListenerHandlers

Definition at line 284 of file eventmultiplexer.cxx.

◆ ImplUserPaintEventHandlers

Definition at line 287 of file eventmultiplexer.cxx.

◆ ImplViewHandlers

typedef ThreadUnsafeListenerContainer< ViewEventHandlerWeakPtrWrapper, std::vector<ViewEventHandlerWeakPtrWrapper> > slideshow::internal::EventMultiplexerImpl::ImplViewHandlers

Definition at line 278 of file eventmultiplexer.cxx.

Constructor & Destructor Documentation

◆ EventMultiplexerImpl()

slideshow::internal::EventMultiplexerImpl::EventMultiplexerImpl ( EventQueue rEventQueue,
UnoViewContainer const &  rViewContainer 
)
inline

Definition at line 213 of file eventmultiplexer.cxx.

◆ ~EventMultiplexerImpl()

slideshow::internal::EventMultiplexerImpl::~EventMultiplexerImpl ( )
inline

Definition at line 241 of file eventmultiplexer.cxx.

References mxListener.

Member Function Documentation

◆ addMouseHandler()

template<typename RegisterFunction >
void slideshow::internal::EventMultiplexerImpl::addMouseHandler ( ImplMouseHandlers rHandlerContainer,
const MouseEventHandlerSharedPtr rHandler,
double  nPriority,
RegisterFunction  pRegisterListener 
)

◆ clear()

void slideshow::internal::EventMultiplexerImpl::clear ( )

◆ findUnoView()

UnoViewSharedPtr slideshow::internal::EventMultiplexerImpl::findUnoView ( const uno::Reference< presentation::XSlideShowView > &  xView) const

◆ forEachView()

template<typename XSlideShowViewFunc >
void slideshow::internal::EventMultiplexerImpl::forEachView ( XSlideShowViewFunc  pViewMethod)

◆ handleTicks()

void slideshow::internal::EventMultiplexerImpl::handleTicks ( )

Schedules tick events, if mbIsAutoMode is true.

Definition at line 565 of file eventmultiplexer.cxx.

References mbIsAutoMode, mpTickEvent, and scheduleTick().

◆ isMouseListenerRegistered()

bool slideshow::internal::EventMultiplexerImpl::isMouseListenerRegistered ( ) const

◆ mouseDragged()

void slideshow::internal::EventMultiplexerImpl::mouseDragged ( const awt::MouseEvent &  e)

◆ mouseMoved()

void slideshow::internal::EventMultiplexerImpl::mouseMoved ( const awt::MouseEvent &  e)

◆ mousePressed()

void slideshow::internal::EventMultiplexerImpl::mousePressed ( const awt::MouseEvent &  e)

◆ mouseReleased()

void slideshow::internal::EventMultiplexerImpl::mouseReleased ( const awt::MouseEvent &  e)

◆ notifyAllAnimationHandlers()

bool slideshow::internal::EventMultiplexerImpl::notifyAllAnimationHandlers ( ImplAnimationHandlers const &  rContainer,
AnimationNodeSharedPtr const &  rNode 
)
static

◆ notifyMouseHandlers()

bool slideshow::internal::EventMultiplexerImpl::notifyMouseHandlers ( const ImplMouseHandlers rQueue,
bool(MouseEventHandler::*)(const awt::MouseEvent &)  pHandlerMethod,
const awt::MouseEvent &  e 
)

◆ notifyNextEffect()

bool slideshow::internal::EventMultiplexerImpl::notifyNextEffect ( )

◆ scheduleTick()

void slideshow::internal::EventMultiplexerImpl::scheduleTick ( )

Schedules a tick event.

Definition at line 548 of file eventmultiplexer.cxx.

References slideshow::internal::EventQueue::addEventForNextRound(), makeDelay, mnTimeout, mpTickEvent, mrEventQueue, and tick().

Referenced by handleTicks(), and tick().

◆ tick()

void slideshow::internal::EventMultiplexerImpl::tick ( )

◆ toMatrixPoint()

basegfx::B2DPoint slideshow::internal::EventMultiplexerImpl::toMatrixPoint ( uno::Reference< presentation::XSlideShowView >  xView,
basegfx::B2DPoint  pnt 
)

◆ toNormalPoint()

basegfx::B2DPoint slideshow::internal::EventMultiplexerImpl::toNormalPoint ( uno::Reference< presentation::XSlideShowView >  xView,
basegfx::B2DPoint  pnt 
)

Member Data Documentation

◆ maAnimationEndHandlers

ImplAnimationHandlers slideshow::internal::EventMultiplexerImpl::maAnimationEndHandlers

Definition at line 338 of file eventmultiplexer.cxx.

Referenced by clear().

◆ maAnimationStartHandlers

ImplAnimationHandlers slideshow::internal::EventMultiplexerImpl::maAnimationStartHandlers

Definition at line 337 of file eventmultiplexer.cxx.

Referenced by clear().

◆ maAudioStoppedHandlers

ImplAnimationHandlers slideshow::internal::EventMultiplexerImpl::maAudioStoppedHandlers

Definition at line 340 of file eventmultiplexer.cxx.

Referenced by clear().

◆ maCommandStopAudioHandlers

ImplAnimationHandlers slideshow::internal::EventMultiplexerImpl::maCommandStopAudioHandlers

Definition at line 341 of file eventmultiplexer.cxx.

Referenced by clear().

◆ maHyperlinkHandlers

ImplHyperLinkHandlers slideshow::internal::EventMultiplexerImpl::maHyperlinkHandlers

Definition at line 350 of file eventmultiplexer.cxx.

Referenced by clear().

◆ maMouseClickHandlers

ImplMouseHandlers slideshow::internal::EventMultiplexerImpl::maMouseClickHandlers

◆ maMouseDoubleClickHandlers

ImplMouseHandlers slideshow::internal::EventMultiplexerImpl::maMouseDoubleClickHandlers

◆ maMouseMoveHandlers

ImplMouseHandlers slideshow::internal::EventMultiplexerImpl::maMouseMoveHandlers

Definition at line 349 of file eventmultiplexer.cxx.

Referenced by clear(), mouseDragged(), and mouseMoved().

◆ maNextEffectHandlers

ImplNextEffectHandlers slideshow::internal::EventMultiplexerImpl::maNextEffectHandlers

Definition at line 334 of file eventmultiplexer.cxx.

Referenced by clear(), notifyNextEffect(), and tick().

◆ maPauseHandlers

ImplPauseHandlers slideshow::internal::EventMultiplexerImpl::maPauseHandlers

Definition at line 342 of file eventmultiplexer.cxx.

Referenced by clear().

◆ maShapeListenerHandlers

ImplShapeListenerHandlers slideshow::internal::EventMultiplexerImpl::maShapeListenerHandlers

Definition at line 345 of file eventmultiplexer.cxx.

◆ maSlideAnimationsEndHandlers

ImplEventHandlers slideshow::internal::EventMultiplexerImpl::maSlideAnimationsEndHandlers

Definition at line 339 of file eventmultiplexer.cxx.

Referenced by clear().

◆ maSlideEndHandlers

ImplEventHandlers slideshow::internal::EventMultiplexerImpl::maSlideEndHandlers

Definition at line 336 of file eventmultiplexer.cxx.

Referenced by clear().

◆ maSlideStartHandlers

ImplEventHandlers slideshow::internal::EventMultiplexerImpl::maSlideStartHandlers

Definition at line 335 of file eventmultiplexer.cxx.

Referenced by clear().

◆ maUserPaintEventHandlers

ImplUserPaintEventHandlers slideshow::internal::EventMultiplexerImpl::maUserPaintEventHandlers

Definition at line 346 of file eventmultiplexer.cxx.

◆ maViewHandlers

ImplViewHandlers slideshow::internal::EventMultiplexerImpl::maViewHandlers

Definition at line 343 of file eventmultiplexer.cxx.

Referenced by clear().

◆ maViewRepaintHandlers

ImplRepaintHandlers slideshow::internal::EventMultiplexerImpl::maViewRepaintHandlers

Definition at line 344 of file eventmultiplexer.cxx.

Referenced by clear().

◆ mbIsAutoMode

bool slideshow::internal::EventMultiplexerImpl::mbIsAutoMode

Definition at line 362 of file eventmultiplexer.cxx.

Referenced by handleTicks(), and tick().

◆ mnTimeout

double slideshow::internal::EventMultiplexerImpl::mnTimeout

automatic next effect mode timeout

Definition at line 353 of file eventmultiplexer.cxx.

Referenced by scheduleTick().

◆ mpTickEvent

::std::weak_ptr< Event > slideshow::internal::EventMultiplexerImpl::mpTickEvent

Holds ptr to optional tick event weakly.

When event queue is cleansed, the next setAutomaticMode(true) call is then able to regenerate the event.

Definition at line 361 of file eventmultiplexer.cxx.

Referenced by clear(), handleTicks(), and scheduleTick().

◆ mrEventQueue

EventQueue& slideshow::internal::EventMultiplexerImpl::mrEventQueue

Definition at line 329 of file eventmultiplexer.cxx.

Referenced by scheduleTick().

◆ mrViewContainer

UnoViewContainer const& slideshow::internal::EventMultiplexerImpl::mrViewContainer

◆ mxListener

::rtl::Reference< EventMultiplexerListener> slideshow::internal::EventMultiplexerImpl::mxListener

Definition at line 332 of file eventmultiplexer.cxx.

Referenced by clear(), forEachView(), and ~EventMultiplexerImpl().


The documentation for this struct was generated from the following file: