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

This class multiplexes user-activated and slide-show global events. More...

#include <eventmultiplexer.hxx>

Public Member Functions

 EventMultiplexer (EventQueue &rEventQueue, UnoViewContainer const &rViewContainer)
 Create an event multiplexer. More...
 
 ~EventMultiplexer ()
 
 EventMultiplexer (const EventMultiplexer &)=delete
 
EventMultiplexeroperator= (const EventMultiplexer &)=delete
 
void clear ()
 Clear all registered handlers. More...
 
void setAutomaticMode (bool bIsAuto)
 Change automatic mode. More...
 
bool getAutomaticMode () const
 Get automatic mode setting. More...
 
void setAutomaticTimeout (double nTimeout)
 Set the timeout for automatic mode. More...
 
double getAutomaticTimeout () const
 Get automatic mode timeout value. More...
 
void addViewHandler (const ViewEventHandlerWeakPtr &rHandler)
 Register an event handler that will be called when views are changed. More...
 
void removeViewHandler (const ViewEventHandlerWeakPtr &rHandler)
 
void addViewRepaintHandler (const ViewRepaintHandlerSharedPtr &rHandler)
 Register an event handler that will be called when a view gets clobbered. More...
 
void removeViewRepaintHandler (const ViewRepaintHandlerSharedPtr &rHandler)
 
void addShapeListenerHandler (const ShapeListenerEventHandlerSharedPtr &rHandler)
 Register an event handler that will be called when XShapeListeners are changed. More...
 
void removeShapeListenerHandler (const ShapeListenerEventHandlerSharedPtr &rHandler)
 
void addUserPaintHandler (const UserPaintEventHandlerSharedPtr &rHandler)
 Register an event handler that will be called when user paint parameters change. More...
 
void addNextEffectHandler (const EventHandlerSharedPtr &rHandler, double nPriority)
 Register an event handler that will be called when the user requests the next effect. More...
 
void removeNextEffectHandler (const EventHandlerSharedPtr &rHandler)
 
void addSlideStartHandler (const EventHandlerSharedPtr &rHandler)
 Register an event handler that will be called when the slide is just shown. More...
 
void removeSlideStartHandler (const EventHandlerSharedPtr &rHandler)
 
void addSlideEndHandler (const EventHandlerSharedPtr &rHandler)
 Register an event handler that will be called when the slide is about to vanish. More...
 
void removeSlideEndHandler (const EventHandlerSharedPtr &rHandler)
 
void addAnimationStartHandler (const AnimationEventHandlerSharedPtr &rHandler)
 Register an event handler that will be called when an XAnimationNode starts its active duration. More...
 
void removeAnimationStartHandler (const AnimationEventHandlerSharedPtr &rHandler)
 
void addAnimationEndHandler (const AnimationEventHandlerSharedPtr &rHandler)
 Register an event handler that will be called when an XAnimationNode ends its active duration. More...
 
void removeAnimationEndHandler (const AnimationEventHandlerSharedPtr &rHandler)
 
void addSlideAnimationsEndHandler (const EventHandlerSharedPtr &rHandler)
 Register an event handler that will be called when the main animation sequence of a slide ends its active duration. More...
 
void removeSlideAnimationsEndHandler (const EventHandlerSharedPtr &rHandler)
 
void addAudioStoppedHandler (const AnimationEventHandlerSharedPtr &rHandler)
 Register an event handler that will be called when an XAudio node's sound stops playing. More...
 
void removeAudioStoppedHandler (const AnimationEventHandlerSharedPtr &rHandler)
 
void addCommandStopAudioHandler (const AnimationEventHandlerSharedPtr &rHandler)
 Register an event handler that will be called when an XCommand node's with the command STOPAUDIO is activated. More...
 
void removeCommandStopAudioHandler (const AnimationEventHandlerSharedPtr &rHandler)
 
void addPauseHandler (const PauseEventHandlerSharedPtr &rHandler)
 Register a handler that is called when the show enters or exits pause mode. More...
 
void removePauseHandler (const PauseEventHandlerSharedPtr &rHandler)
 
void addClickHandler (const MouseEventHandlerSharedPtr &rHandler, double nPriority)
 Register a mouse handler that is called on mouse click. More...
 
void removeClickHandler (const MouseEventHandlerSharedPtr &rHandler)
 
void addDoubleClickHandler (const MouseEventHandlerSharedPtr &rHandler, double nPriority)
 Register a mouse handler that is called on a double mouse click. More...
 
void removeDoubleClickHandler (const MouseEventHandlerSharedPtr &rHandler)
 
void addMouseMoveHandler (const MouseEventHandlerSharedPtr &rHandler, double nPriority)
 Register a mouse handler that is called for mouse moves. More...
 
void removeMouseMoveHandler (const MouseEventHandlerSharedPtr &rHandler)
 
void addHyperlinkHandler (const HyperlinkHandlerSharedPtr &rHandler, double nPriority)
 Registers a hyperlink click handler. More...
 
void removeHyperlinkHandler (const HyperlinkHandlerSharedPtr &rHandler)
 
void notifyViewAdded (const UnoViewSharedPtr &rView)
 View added. More...
 
void notifyViewRemoved (const UnoViewSharedPtr &rView)
 View removed. More...
 
void notifyViewChanged (const UnoViewSharedPtr &rView)
 View changed. More...
 
void notifyViewChanged (const css::uno::Reference< css::presentation::XSlideShowView > &xView)
 View changed. More...
 
void notifyViewsChanged ()
 All Views changed. More...
 
void notifyViewClobbered (const css::uno::Reference< css::presentation::XSlideShowView > &xView)
 View clobbered. More...
 
void notifyShapeListenerAdded (const css::uno::Reference< css::drawing::XShape > &xShape)
 New shape event listener added. More...
 
void notifyShapeListenerRemoved (const css::uno::Reference< css::drawing::XShape > &xShape)
 A shape event listener was removed. More...
 
void notifyUserPaintColor (RGBColor const &rUserColor)
 Notify a new user paint color. More...
 
void notifyUserPaintStrokeWidth (double rUserStrokeWidth)
 Notify a new user paint width. More...
 
void notifyEraseAllInk (bool bEraseAllInk)
 Notify a new user paint erase all ink mode. More...
 
void notifySwitchPenMode ()
 
void notifySwitchEraserMode ()
 
void notifyEraseInkWidth (sal_Int32 rEraseInkSize)
 
void notifyUserPaintDisabled ()
 Notify that user paint is disabled. More...
 
bool notifyNextEffect ()
 Notify that the user requested the next effect. More...
 
void notifySlideStartEvent ()
 Notify that a new slide has started. More...
 
bool notifySlideEndEvent ()
 Notify that a slide has ended. More...
 
bool notifyAnimationStart (const AnimationNodeSharedPtr &rNode)
 Notify that the given node enters its active duration. More...
 
bool notifyAnimationEnd (const AnimationNodeSharedPtr &rNode)
 Notify that the given node leaves its active duration. More...
 
bool notifySlideAnimationsEnd ()
 Notify that the slide animations sequence leaves its active duration. More...
 
bool notifyAudioStopped (const AnimationNodeSharedPtr &rNode)
 Notify that for the given node, audio output has stopped. More...
 
void notifyPauseMode (bool bPauseShow)
 Notify that the show has entered or exited pause mode. More...
 
bool notifyCommandStopAudio (const AnimationNodeSharedPtr &rNode)
 Notify that all audio has to be stopped. More...
 
void notifyHyperlinkClicked (OUString const &hyperLink)
 Notifies that a hyperlink has been clicked. More...
 
basegfx::B2DPoint toMatrixPoint (css::uno::Reference< css::uno::XInterface > xInterface, basegfx::B2DPoint pnt)
 
basegfx::B2DPoint toNormalPoint (css::uno::Reference< css::uno::XInterface > xInterface, basegfx::B2DPoint pnt)
 

Private Attributes

std::unique_ptr< EventMultiplexerImplmpImpl
 

Detailed Description

This class multiplexes user-activated and slide-show global events.

This class listens at the XSlideShowView and fires events registered for certain user actions. Furthermore, global slide show state changes (such as start or end of a slide) are handled as well. Note that registered events which have a non-zero timeout (i.e. events that return non-zero from getActivationTime()) will not be fired immediately after the user action occurred, but only after the given timeout. Which is actually a feature.

Definition at line 133 of file eventmultiplexer.hxx.

Constructor & Destructor Documentation

◆ EventMultiplexer() [1/2]

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

Create an event multiplexer.

Parameters
rEventQueueReference to the main event queue. Since we hold this object by plain reference, it must live longer than we do. On the other hand, that queue must not fire events after this object is destroyed, since we might schedule events there which itself contain plain references to this object. Basically, EventQueue and EventMultiplexer should have the same lifetime, and since this is not possible, both must be destructed in a phased mode: first clear both of any remaining events, then destruct them.
rViewContainerGlobally managed list of all registered views. Used to determine event sources, and for registering view listeners at.

Definition at line 791 of file eventmultiplexer.cxx.

◆ ~EventMultiplexer()

slideshow::internal::EventMultiplexer::~EventMultiplexer ( )

Definition at line 797 of file eventmultiplexer.cxx.

◆ EventMultiplexer() [2/2]

slideshow::internal::EventMultiplexer::EventMultiplexer ( const EventMultiplexer )
delete

Member Function Documentation

◆ addAnimationEndHandler()

void slideshow::internal::EventMultiplexer::addAnimationEndHandler ( const AnimationEventHandlerSharedPtr rHandler)

Register an event handler that will be called when an XAnimationNode ends its active duration.

Note that all registered handlers will be called when the animation end occurs. This is in contrast to the mouse events below.

Parameters
rHandlerHandler to call when the animation ends

Definition at line 890 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::UserEventQueue::registerAnimationEndEvent().

◆ addAnimationStartHandler()

void slideshow::internal::EventMultiplexer::addAnimationStartHandler ( const AnimationEventHandlerSharedPtr rHandler)

Register an event handler that will be called when an XAnimationNode starts its active duration.

Note that all registered handlers will be called when the animation start occurs. This is in contrast to the mouse events below.

Parameters
rHandlerHandler to call when the animation start

Definition at line 878 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::EffectRewinder::initialize(), and slideshow::internal::UserEventQueue::registerAnimationStartEvent().

◆ addAudioStoppedHandler()

void slideshow::internal::EventMultiplexer::addAudioStoppedHandler ( const AnimationEventHandlerSharedPtr rHandler)

Register an event handler that will be called when an XAudio node's sound stops playing.

Note that all registered handlers will be called when the audio stops. This is in contrast to the mouse events below.

Parameters
rHandlerHandler to call when the audio stops

Definition at line 914 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::UserEventQueue::registerAudioStoppedEvent().

◆ addClickHandler()

void slideshow::internal::EventMultiplexer::addClickHandler ( const MouseEventHandlerSharedPtr rHandler,
double  nPriority 
)

Register a mouse handler that is called on mouse click.

For every mouse click, only one of the handlers registered here is called. The handlers are considered with decreasing priority, i.e. the handler with the currently highest priority will be called.

Since the handlers can reject down and up events individually, handlers should expect to be called with non-matching down and up-press counts. If your handler cannot cope with that, it must have the highest priority of all added handlers.

Definition at line 986 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::SlideOverlayButton::create(), slideshow::internal::UserEventQueue::registerShapeClickEvent(), slideshow::internal::UserEventQueue::registerSkipEffectEvent(), slideshow::internal::RehearseTimingsActivity::start(), and slideshow::internal::UserPaintOverlay::UserPaintOverlay().

◆ addCommandStopAudioHandler()

void slideshow::internal::EventMultiplexer::addCommandStopAudioHandler ( const AnimationEventHandlerSharedPtr rHandler)

Register an event handler that will be called when an XCommand node's with the command STOPAUDIO is activated.

Note that all registered handlers will be called when the audio stops. This is in contrast to the mouse events below.

Parameters
rHandlerHandler to call when command is activated

Definition at line 926 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::AnimationAudioNode::activate_st().

◆ addDoubleClickHandler()

void slideshow::internal::EventMultiplexer::addDoubleClickHandler ( const MouseEventHandlerSharedPtr rHandler,
double  nPriority 
)

Register a mouse handler that is called on a double mouse click.

For every mouse double click, only one of the handlers registered here is called. The handlers are considered with decreasing priority, i.e. the handler with the currently highest priority will be called.

Since the handlers can reject down and up events individually, handlers should expect to be called with non-matching down and up-press counts. If your handler cannot cope with that, it must have the highest priority of all added handlers.

Definition at line 1011 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::UserEventQueue::registerShapeDoubleClickEvent().

◆ addHyperlinkHandler()

void slideshow::internal::EventMultiplexer::addHyperlinkHandler ( const HyperlinkHandlerSharedPtr rHandler,
double  nPriority 
)

Registers a hyperlink click handler.

For every hyperlink click, only one of the handlers registered here is called. The handlers are considered with decreasing priority, i.e. the handler with the currently highest priority will be called.

Parameters
rHandler
nPriority

Definition at line 1062 of file eventmultiplexer.cxx.

References mpImpl.

◆ addMouseMoveHandler()

void slideshow::internal::EventMultiplexer::addMouseMoveHandler ( const MouseEventHandlerSharedPtr rHandler,
double  nPriority 
)

Register a mouse handler that is called for mouse moves.

For every mouse move, only one of the handlers registered here is called. The handlers are considered with decreasing priority, i.e. the handler with the currently highest priority will be called.

Definition at line 1036 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::UserEventQueue::registerMouseEnterEvent(), slideshow::internal::UserEventQueue::registerMouseLeaveEvent(), slideshow::internal::UserEventQueue::registerShapeClickEvent(), slideshow::internal::UserEventQueue::registerShapeDoubleClickEvent(), slideshow::internal::RehearseTimingsActivity::start(), and slideshow::internal::UserPaintOverlay::UserPaintOverlay().

◆ addNextEffectHandler()

void slideshow::internal::EventMultiplexer::addNextEffectHandler ( const EventHandlerSharedPtr rHandler,
double  nPriority 
)

Register an event handler that will be called when the user requests the next effect.

For every nextEffect event, only one of the handlers registered here is called. The handlers are considered with decreasing priority, i.e. the handler with the currently highest priority will be called.

Parameters
rHandlerHandler to call when the next effect should start
nPriorityPriority with which the handlers are called. The higher the priority, the earlier this handler will be tried.

Definition at line 832 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::UserEventQueue::registerSkipEffectEvent().

◆ addPauseHandler()

void slideshow::internal::EventMultiplexer::addPauseHandler ( const PauseEventHandlerSharedPtr rHandler)

Register a handler that is called when the show enters or exits pause mode.

Definition at line 938 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::SoundPlayer::create().

◆ addShapeListenerHandler()

void slideshow::internal::EventMultiplexer::addShapeListenerHandler ( const ShapeListenerEventHandlerSharedPtr rHandler)

Register an event handler that will be called when XShapeListeners are changed.

Parameters
rHandlerHandler to call when a shape listener changes

Definition at line 971 of file eventmultiplexer.cxx.

References mpImpl.

◆ addSlideAnimationsEndHandler()

void slideshow::internal::EventMultiplexer::addSlideAnimationsEndHandler ( const EventHandlerSharedPtr rHandler)

Register an event handler that will be called when the main animation sequence of a slide ends its active duration.

Note that all registered handlers will be called when the animation end occurs. This is in contrast to the mouse events below.

Parameters
rHandlerHandler to call when the animation ends

Definition at line 902 of file eventmultiplexer.cxx.

References mpImpl.

◆ addSlideEndHandler()

void slideshow::internal::EventMultiplexer::addSlideEndHandler ( const EventHandlerSharedPtr rHandler)

Register an event handler that will be called when the slide is about to vanish.

Note that all registered handlers will be called when the slide end occurs. This is in contrast to the mouse events below.

Parameters
rHandlerHandler to call when the current slide ends

Definition at line 866 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::EffectRewinder::initialize().

◆ addSlideStartHandler()

void slideshow::internal::EventMultiplexer::addSlideStartHandler ( const EventHandlerSharedPtr rHandler)

Register an event handler that will be called when the slide is just shown.

Note that all registered handlers will be called when the slide start occurs. This is in contrast to the mouse events below.

Parameters
rHandlerHandler to call when the next slide starts

Definition at line 854 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::EffectRewinder::initialize().

◆ addUserPaintHandler()

void slideshow::internal::EventMultiplexer::addUserPaintHandler ( const UserPaintEventHandlerSharedPtr rHandler)

Register an event handler that will be called when user paint parameters change.

Parameters
rHandlerHandler to call when a shape listener changes

Definition at line 981 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::UserPaintOverlay::UserPaintOverlay().

◆ addViewHandler()

void slideshow::internal::EventMultiplexer::addViewHandler ( const ViewEventHandlerWeakPtr rHandler)

Register an event handler that will be called when views are changed.

For each view added, viewAdded() will be called on the handler. For each view removed, viewRemoved() will be called. Each modified view will cause a viewChanged() call on each handler.

You don't need to deregister the handler, it will be automatically removed, once the pointee becomes stale.

Parameters
rHandlerHandler to call.

Definition at line 950 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::PointerSymbol::create(), slideshow::internal::WaitSymbol::create(), slideshow::internal::SlideOverlayButton::create(), slideshow::internal::RehearseTimingsActivity::create(), slideshow::internal::createSlide(), slideshow::internal::ExternalShapeBase::ExternalShapeBase(), and slideshow::internal::UserPaintOverlay::UserPaintOverlay().

◆ addViewRepaintHandler()

void slideshow::internal::EventMultiplexer::addViewRepaintHandler ( const ViewRepaintHandlerSharedPtr rHandler)

Register an event handler that will be called when a view gets clobbered.

Note that all registered handlers will be called when the event. This is in contrast to the mouse events below.

Parameters
rHandlerHandler to call when a view needs a repaint

Definition at line 961 of file eventmultiplexer.cxx.

References mpImpl.

◆ clear()

void slideshow::internal::EventMultiplexer::clear ( )

Clear all registered handlers.

Definition at line 802 of file eventmultiplexer.cxx.

References mpImpl.

◆ getAutomaticMode()

bool slideshow::internal::EventMultiplexer::getAutomaticMode ( ) const

Get automatic mode setting.

Definition at line 817 of file eventmultiplexer.cxx.

References mpImpl.

◆ getAutomaticTimeout()

double slideshow::internal::EventMultiplexer::getAutomaticTimeout ( ) const

Get automatic mode timeout value.

Definition at line 827 of file eventmultiplexer.cxx.

References mpImpl.

◆ notifyAnimationEnd()

bool slideshow::internal::EventMultiplexer::notifyAnimationEnd ( const AnimationNodeSharedPtr rNode)

Notify that the given node leaves its active duration.

This method is to be used from the AnimationNode objects to signal that the active duration ends now. This will invoke all registered animation end handlers.

Parameters
rNodeNode which leaves active duration.
Returns
true, if this event was processed by anybody. If false is returned, no handler processed this event (and probably, nothing will happen at all)

Definition at line 1165 of file eventmultiplexer.cxx.

References mpImpl, and slideshow::internal::EventMultiplexerImpl::notifyAllAnimationHandlers().

Referenced by slideshow::internal::BaseNode::notifyEndListeners().

◆ notifyAnimationStart()

bool slideshow::internal::EventMultiplexer::notifyAnimationStart ( const AnimationNodeSharedPtr rNode)

Notify that the given node enters its active duration.

This method is to be used from the AnimationNode objects to signal that the active duration begins. This will invoke all registered animation start handlers.

Parameters
rNodeNode which enters active duration.
Returns
true, if this event was processed by anybody. If false is returned, no handler processed this event (and probably, nothing will happen at all)

Definition at line 1158 of file eventmultiplexer.cxx.

References mpImpl, and slideshow::internal::EventMultiplexerImpl::notifyAllAnimationHandlers().

Referenced by slideshow::internal::BaseNode::activate().

◆ notifyAudioStopped()

bool slideshow::internal::EventMultiplexer::notifyAudioStopped ( const AnimationNodeSharedPtr rNode)

Notify that for the given node, audio output has stopped.

This method is to be used from the AnimationNode objects to signal that audio playback has just stopped. This will invoke all registered audio stopped handlers.

Parameters
rNodeNode for which audio has stopped.
Returns
true, if this event was processed by anybody. If false is returned, no handler processed this event (and probably, nothing will happen at all)

Definition at line 1178 of file eventmultiplexer.cxx.

References mpImpl, and slideshow::internal::EventMultiplexerImpl::notifyAllAnimationHandlers().

◆ notifyCommandStopAudio()

bool slideshow::internal::EventMultiplexer::notifyCommandStopAudio ( const AnimationNodeSharedPtr rNode)

Notify that all audio has to be stopped.

This method is used by XCommand nodes and all sound playing nodes should listen for this command and stop their sounds when it's fired.

Returns
true, if this event was processed by anybody. If false is returned, no handler processed this event (and probably, nothing will happen at all)

Definition at line 1186 of file eventmultiplexer.cxx.

References mpImpl, and slideshow::internal::EventMultiplexerImpl::notifyAllAnimationHandlers().

Referenced by slideshow::internal::AnimationCommandNode::activate_st().

◆ notifyEraseAllInk()

void slideshow::internal::EventMultiplexer::notifyEraseAllInk ( bool  bEraseAllInk)

Notify a new user paint erase all ink mode.

Sending this notification also implies that user paint is enabled. User paint denotes the feature to draw colored lines on top of the slide content.

Definition at line 1126 of file eventmultiplexer.cxx.

References mpImpl.

◆ notifyEraseInkWidth()

void slideshow::internal::EventMultiplexer::notifyEraseInkWidth ( sal_Int32  rEraseInkSize)

Definition at line 1134 of file eventmultiplexer.cxx.

References mpImpl.

◆ notifyHyperlinkClicked()

void slideshow::internal::EventMultiplexer::notifyHyperlinkClicked ( OUString const &  hyperLink)

Notifies that a hyperlink has been clicked.

Definition at line 1280 of file eventmultiplexer.cxx.

References mpImpl.

◆ notifyNextEffect()

bool slideshow::internal::EventMultiplexer::notifyNextEffect ( )

Notify that the user requested the next effect.

This requests the slideshow to display the next effect, or move to the next slide, if none are left.

Returns
true, if this event was processed by anybody. If false is returned, no handler processed this event (and probably, nothing will happen at all)

Definition at line 1141 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::SkipEffectEventHandler::handleEvent_impl(), and slideshow::internal::EffectRewinder::skipSingleMainSequenceEffects().

◆ notifyPauseMode()

void slideshow::internal::EventMultiplexer::notifyPauseMode ( bool  bPauseShow)

Notify that the show has entered or exited pause mode.

This method is to be used from the Presentation object to signal that a slide is entering (bPauseShow=true) or exiting (bPauseShow=false) pause mode. This will invoke all registered slide end handlers.

Definition at line 1194 of file eventmultiplexer.cxx.

References mpImpl.

◆ notifyShapeListenerAdded()

void slideshow::internal::EventMultiplexer::notifyShapeListenerAdded ( const css::uno::Reference< css::drawing::XShape > &  xShape)

New shape event listener added.

This method announces that the given listener was added for the specified shape.

Definition at line 1079 of file eventmultiplexer.cxx.

References mpImpl.

◆ notifyShapeListenerRemoved()

void slideshow::internal::EventMultiplexer::notifyShapeListenerRemoved ( const css::uno::Reference< css::drawing::XShape > &  xShape)

A shape event listener was removed.

This method announces that the given listener was removed for the specified shape.

Definition at line 1087 of file eventmultiplexer.cxx.

References mpImpl.

◆ notifySlideAnimationsEnd()

bool slideshow::internal::EventMultiplexer::notifySlideAnimationsEnd ( )

Notify that the slide animations sequence leaves its active duration.

Returns
true, if this event was processed by anybody. If false is returned, no handler processed this event (and probably, nothing will happen at all)

Definition at line 1172 of file eventmultiplexer.cxx.

References slideshow::internal::EventHandler::handleEvent(), and mpImpl.

Referenced by slideshow::internal::BaseNode::notifyEndListeners().

◆ notifySlideEndEvent()

bool slideshow::internal::EventMultiplexer::notifySlideEndEvent ( )

Notify that a slide has ended.

This method is to be used from the Presentation object to signal that a slide is ending now. This will invoke all registered slide end handlers.

Returns
true, if this event was processed by anybody. If false is returned, no handler processed this event (and probably, nothing will happen at all)

Definition at line 1152 of file eventmultiplexer.cxx.

References slideshow::internal::EventHandler::handleEvent(), and mpImpl.

◆ notifySlideStartEvent()

void slideshow::internal::EventMultiplexer::notifySlideStartEvent ( )

Notify that a new slide has started.

This method is to be used from the Presentation object to signal that a new slide is starting now. This will invoke all registered slide start handlers.

Definition at line 1146 of file eventmultiplexer.cxx.

References slideshow::internal::EventHandler::handleEvent(), and mpImpl.

◆ notifySwitchEraserMode()

void slideshow::internal::EventMultiplexer::notifySwitchEraserMode ( )

◆ notifySwitchPenMode()

void slideshow::internal::EventMultiplexer::notifySwitchPenMode ( )

◆ notifyUserPaintColor()

void slideshow::internal::EventMultiplexer::notifyUserPaintColor ( RGBColor const &  rUserColor)

Notify a new user paint color.

Sending this notification also implies that user paint is enabled. User paint denotes the feature to draw colored lines on top of the slide content.

Definition at line 1095 of file eventmultiplexer.cxx.

References mpImpl.

◆ notifyUserPaintDisabled()

void slideshow::internal::EventMultiplexer::notifyUserPaintDisabled ( )

Notify that user paint is disabled.

User paint denotes the feature to draw colored lines on top of the slide content.

Definition at line 1109 of file eventmultiplexer.cxx.

References slideshow::internal::UserPaintEventHandler::disable(), and mpImpl.

◆ notifyUserPaintStrokeWidth()

void slideshow::internal::EventMultiplexer::notifyUserPaintStrokeWidth ( double  rUserStrokeWidth)

Notify a new user paint width.

Sending this notification also implies that user paint is enabled. .

Definition at line 1102 of file eventmultiplexer.cxx.

References mpImpl.

◆ notifyViewAdded()

void slideshow::internal::EventMultiplexer::notifyViewAdded ( const UnoViewSharedPtr rView)

View added.

This method adds another view, which the show is displayed on. On every added view, the EventMultiplexer registers mouse and motion event listeners.

Definition at line 1201 of file eventmultiplexer.cxx.

References ENSURE_OR_THROW, and mpImpl.

◆ notifyViewChanged() [1/2]

void slideshow::internal::EventMultiplexer::notifyViewChanged ( const css::uno::Reference< css::presentation::XSlideShowView > &  xView)

View changed.

This method announces a changed view to all view listeners. View changes include size and transformation.

Parameters
xViewView that has changed

◆ notifyViewChanged() [2/2]

void slideshow::internal::EventMultiplexer::notifyViewChanged ( const UnoViewSharedPtr rView)

View changed.

This method announces a changed view to all view listeners. View changes include size and transformation.

Parameters
rViewView that has changed

Definition at line 1244 of file eventmultiplexer.cxx.

References mpImpl.

◆ notifyViewClobbered()

void slideshow::internal::EventMultiplexer::notifyViewClobbered ( const css::uno::Reference< css::presentation::XSlideShowView > &  xView)

View clobbered.

This method announces that the given view has been clobbered by something external to the slideshow, and needs an update.

Parameters
xViewView that has been clobbered

Definition at line 1267 of file eventmultiplexer.cxx.

References mpImpl.

◆ notifyViewRemoved()

void slideshow::internal::EventMultiplexer::notifyViewRemoved ( const UnoViewSharedPtr rView)

View removed.

This method removes a view. Registered mouse and motion event listeners are revoked.

Definition at line 1222 of file eventmultiplexer.cxx.

References ENSURE_OR_THROW, and mpImpl.

◆ notifyViewsChanged()

void slideshow::internal::EventMultiplexer::notifyViewsChanged ( )

All Views changed.

This method announces to all view listeners that every known view has changed. View changes include size and transformation.

Definition at line 1261 of file eventmultiplexer.cxx.

References mpImpl, and slideshow::internal::ViewEventHandler::viewsChanged().

◆ operator=()

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

◆ removeAnimationEndHandler()

void slideshow::internal::EventMultiplexer::removeAnimationEndHandler ( const AnimationEventHandlerSharedPtr rHandler)

Definition at line 896 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::UserEventQueue::clear().

◆ removeAnimationStartHandler()

void slideshow::internal::EventMultiplexer::removeAnimationStartHandler ( const AnimationEventHandlerSharedPtr rHandler)

◆ removeAudioStoppedHandler()

void slideshow::internal::EventMultiplexer::removeAudioStoppedHandler ( const AnimationEventHandlerSharedPtr rHandler)

Definition at line 920 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::UserEventQueue::clear().

◆ removeClickHandler()

void slideshow::internal::EventMultiplexer::removeClickHandler ( const MouseEventHandlerSharedPtr rHandler)

◆ removeCommandStopAudioHandler()

void slideshow::internal::EventMultiplexer::removeCommandStopAudioHandler ( const AnimationEventHandlerSharedPtr rHandler)

Definition at line 932 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::AnimationAudioNode::deactivate_st().

◆ removeDoubleClickHandler()

void slideshow::internal::EventMultiplexer::removeDoubleClickHandler ( const MouseEventHandlerSharedPtr rHandler)

Definition at line 1024 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::UserEventQueue::clear().

◆ removeHyperlinkHandler()

void slideshow::internal::EventMultiplexer::removeHyperlinkHandler ( const HyperlinkHandlerSharedPtr rHandler)

Definition at line 1071 of file eventmultiplexer.cxx.

References mpImpl.

◆ removeMouseMoveHandler()

void slideshow::internal::EventMultiplexer::removeMouseMoveHandler ( const MouseEventHandlerSharedPtr rHandler)

◆ removeNextEffectHandler()

void slideshow::internal::EventMultiplexer::removeNextEffectHandler ( const EventHandlerSharedPtr rHandler)

Definition at line 845 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::UserEventQueue::clear().

◆ removePauseHandler()

void slideshow::internal::EventMultiplexer::removePauseHandler ( const PauseEventHandlerSharedPtr rHandler)

Definition at line 944 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::SoundPlayer::dispose().

◆ removeShapeListenerHandler()

void slideshow::internal::EventMultiplexer::removeShapeListenerHandler ( const ShapeListenerEventHandlerSharedPtr rHandler)

Definition at line 976 of file eventmultiplexer.cxx.

References mpImpl.

◆ removeSlideAnimationsEndHandler()

void slideshow::internal::EventMultiplexer::removeSlideAnimationsEndHandler ( const EventHandlerSharedPtr rHandler)

Definition at line 908 of file eventmultiplexer.cxx.

References mpImpl.

◆ removeSlideEndHandler()

void slideshow::internal::EventMultiplexer::removeSlideEndHandler ( const EventHandlerSharedPtr rHandler)

Definition at line 872 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::EffectRewinder::dispose().

◆ removeSlideStartHandler()

void slideshow::internal::EventMultiplexer::removeSlideStartHandler ( const EventHandlerSharedPtr rHandler)

Definition at line 860 of file eventmultiplexer.cxx.

References mpImpl.

Referenced by slideshow::internal::EffectRewinder::dispose().

◆ removeViewHandler()

void slideshow::internal::EventMultiplexer::removeViewHandler ( const ViewEventHandlerWeakPtr rHandler)

◆ removeViewRepaintHandler()

void slideshow::internal::EventMultiplexer::removeViewRepaintHandler ( const ViewRepaintHandlerSharedPtr rHandler)

Definition at line 966 of file eventmultiplexer.cxx.

References mpImpl.

◆ setAutomaticMode()

void slideshow::internal::EventMultiplexer::setAutomaticMode ( bool  bIsAuto)

Change automatic mode.

Parameters
bIsAutoWhen true, events will be fired automatically, not only triggered by UI events. When false, auto events will quit.

Definition at line 807 of file eventmultiplexer.cxx.

References mpImpl.

◆ setAutomaticTimeout()

void slideshow::internal::EventMultiplexer::setAutomaticTimeout ( double  nTimeout)

Set the timeout for automatic mode.

Parameters
nTimeoutTimeout, between end of effect until start of next effect.

Definition at line 822 of file eventmultiplexer.cxx.

References mpImpl.

◆ toMatrixPoint()

basegfx::B2DPoint slideshow::internal::EventMultiplexer::toMatrixPoint ( css::uno::Reference< css::uno::XInterface >  xInterface,
basegfx::B2DPoint  pnt 
)

Definition at line 1288 of file eventmultiplexer.cxx.

References mpImpl.

◆ toNormalPoint()

basegfx::B2DPoint slideshow::internal::EventMultiplexer::toNormalPoint ( css::uno::Reference< css::uno::XInterface >  xInterface,
basegfx::B2DPoint  pnt 
)

Member Data Documentation

◆ mpImpl

std::unique_ptr<EventMultiplexerImpl> slideshow::internal::EventMultiplexer::mpImpl
private

Definition at line 660 of file eventmultiplexer.hxx.

Referenced by addAnimationEndHandler(), addAnimationStartHandler(), addAudioStoppedHandler(), addClickHandler(), addCommandStopAudioHandler(), addDoubleClickHandler(), addHyperlinkHandler(), addMouseMoveHandler(), addNextEffectHandler(), addPauseHandler(), addShapeListenerHandler(), addSlideAnimationsEndHandler(), addSlideEndHandler(), addSlideStartHandler(), addUserPaintHandler(), addViewHandler(), addViewRepaintHandler(), clear(), getAutomaticMode(), getAutomaticTimeout(), notifyAnimationEnd(), notifyAnimationStart(), notifyAudioStopped(), notifyCommandStopAudio(), notifyEraseAllInk(), notifyEraseInkWidth(), notifyHyperlinkClicked(), notifyNextEffect(), notifyPauseMode(), notifyShapeListenerAdded(), notifyShapeListenerRemoved(), notifySlideAnimationsEnd(), notifySlideEndEvent(), notifySlideStartEvent(), notifySwitchEraserMode(), notifySwitchPenMode(), notifyUserPaintColor(), notifyUserPaintDisabled(), notifyUserPaintStrokeWidth(), notifyViewAdded(), notifyViewChanged(), notifyViewClobbered(), notifyViewRemoved(), notifyViewsChanged(), removeAnimationEndHandler(), removeAnimationStartHandler(), removeAudioStoppedHandler(), removeClickHandler(), removeCommandStopAudioHandler(), removeDoubleClickHandler(), removeHyperlinkHandler(), removeMouseMoveHandler(), removeNextEffectHandler(), removePauseHandler(), removeShapeListenerHandler(), removeSlideAnimationsEndHandler(), removeSlideEndHandler(), removeSlideStartHandler(), removeViewHandler(), removeViewRepaintHandler(), setAutomaticMode(), setAutomaticTimeout(), toMatrixPoint(), and toNormalPoint().


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