20#ifndef INCLUDED_SLIDESHOW_SOURCE_INC_USEREVENTQUEUE_HXX
21#define INCLUDED_SLIDESHOW_SOURCE_INC_USEREVENTQUEUE_HXX
23#include <com/sun/star/animations/XAnimationNode.hpp>
33class AllAnimationEventHandler;
34class ShapeClickEventHandler;
35class ClickEventHandler;
37class SkipEffectEventHandler;
38class RewindEffectEventHandler;
39class MouseEnterHandler;
40class MouseLeaveHandler;
80 CursorManager& rCursorManager );
113 const css::uno::Reference<css::animations::XAnimationNode>& xNode );
124 const css::uno::Reference<css::animations::XAnimationNode>& xNode );
135 const css::uno::Reference<css::animations::XAnimationNode>& xNode );
162 const bool bSkipTriggersNextEffect);
229 template<
typename Handler,
typename Functor >
232 const Functor& rRegistrationFunctor );
242 template<
typename Handler,
typename Arg,
typename Functor >
246 const Functor& rRegistrationFunctor );
This class multiplexes user-activated and slide-show global events.
This class handles events in a presentation.
This class schedules user-activated events.
void clear()
Clear all registered events.
UserEventQueue(EventMultiplexer &rMultiplexer, EventQueue &rEventQueue, CursorManager &rCursorManager)
Create a user event queue.
void registerEvent(::std::shared_ptr< Handler > &rHandler, const EventSharedPtr &rEvent, const Arg &rArg, const Functor &rRegistrationFunctor)
Generically register an event on one of the handlers.
::std::shared_ptr< ShapeClickEventHandler > mpShapeClickEventHandler
void registerSkipEffectEvent(EventSharedPtr const &pEvent, const bool bSkipTriggersNextEffect)
Registers an event that is fired when the current effects(s) are skipped, .e.g.
::std::shared_ptr< AllAnimationEventHandler > mpAnimationEndEventHandler
UserEventQueue(const UserEventQueue &)=delete
UserEventQueue & operator=(const UserEventQueue &)=delete
void registerNextEffectEvent(const EventSharedPtr &rEvent)
Register an event that is fired to show the next event.
void registerShapeClickEvent(const EventSharedPtr &rEvent, const ShapeSharedPtr &rShape)
Register an event that is fired when a shape is clicked.
::std::shared_ptr< AllAnimationEventHandler > mpAnimationStartEventHandler
void registerAnimationStartEvent(const EventSharedPtr &rEvent, const css::uno::Reference< css::animations::XAnimationNode > &xNode)
Register an event that will be fired when the given animation node starts.
::std::shared_ptr< SkipEffectEventHandler > mpSkipEffectEventHandler
void callSkipEffectEventHandler()
Typically skipping the current effect is triggered by mouse clicks or key presses that trigger the ne...
::std::shared_ptr< AllAnimationEventHandler > mpAudioStoppedEventHandler
EventMultiplexer & mrMultiplexer
EventQueue & mrEventQueue
void registerMouseLeaveEvent(const EventSharedPtr &rEvent, const ShapeSharedPtr &rShape)
Register an event that is fired when the mouse leaves the area of the given shape.
void registerShapeDoubleClickEvent(const EventSharedPtr &rEvent, const ShapeSharedPtr &rShape)
Register an event that is fired on a double mouse click on a shape.
void registerAudioStoppedEvent(const EventSharedPtr &rEvent, const css::uno::Reference< css::animations::XAnimationNode > &xNode)
Register an event that will be fired when audio output stopped for the given animation node.
::std::shared_ptr< ClickEventHandler > mpClickEventHandler
void registerMouseEnterEvent(const EventSharedPtr &rEvent, const ShapeSharedPtr &rShape)
Register an event that is fired when the mouse enters the area of the given shape.
::std::shared_ptr< MouseEnterHandler > mpMouseEnterHandler
::std::shared_ptr< ShapeClickEventHandler > mpShapeDoubleClickEventHandler
void registerAnimationEndEvent(const EventSharedPtr &rEvent, const css::uno::Reference< css::animations::XAnimationNode > &xNode)
Register an event that will be fired when the given animation node ends its active duration.
CursorManager & mrCursorManager
::std::shared_ptr< MouseLeaveHandler > mpMouseLeaveHandler
void setAdvanceOnClick(bool bAdvanceOnClick)
Set advance on click behaviour.
void registerEvent(::std::shared_ptr< Handler > &rHandler, const EventSharedPtr &rEvent, const Functor &rRegistrationFunctor)
Generically register an event on one of the handlers.
::std::shared_ptr< Event > EventSharedPtr
::std::shared_ptr< Shape > ShapeSharedPtr