LibreOffice Module slideshow (master) 1
|
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) |
Definition at line 211 of file eventmultiplexer.cxx.
typedef ThreadUnsafeListenerContainer< AnimationEventHandlerSharedPtr, std::vector<AnimationEventHandlerSharedPtr> > slideshow::internal::EventMultiplexerImpl::ImplAnimationHandlers |
Definition at line 272 of file eventmultiplexer.cxx.
typedef ThreadUnsafeListenerContainer< EventHandlerSharedPtr, std::vector<EventHandlerSharedPtr> > slideshow::internal::EventMultiplexerImpl::ImplEventHandlers |
Definition at line 269 of file eventmultiplexer.cxx.
typedef ThreadUnsafeListenerContainer< PrioritizedHandlerEntry<HyperlinkHandler>, std::vector<PrioritizedHandlerEntry<HyperlinkHandler> > > slideshow::internal::EventMultiplexerImpl::ImplHyperLinkHandlers |
Definition at line 290 of file eventmultiplexer.cxx.
typedef PrioritizedHandlerEntry<MouseEventHandler> slideshow::internal::EventMultiplexerImpl::ImplMouseHandlerEntry |
Definition at line 263 of file eventmultiplexer.cxx.
typedef ThreadUnsafeListenerContainer< ImplMouseHandlerEntry, std::vector<ImplMouseHandlerEntry> > slideshow::internal::EventMultiplexerImpl::ImplMouseHandlers |
Definition at line 266 of file eventmultiplexer.cxx.
typedef ThreadUnsafeListenerContainer< PrioritizedHandlerEntry<EventHandler>, std::vector< PrioritizedHandlerEntry<EventHandler> > > slideshow::internal::EventMultiplexerImpl::ImplNextEffectHandlers |
Definition at line 262 of file eventmultiplexer.cxx.
typedef ThreadUnsafeListenerContainer< PauseEventHandlerSharedPtr, std::vector<PauseEventHandlerSharedPtr> > slideshow::internal::EventMultiplexerImpl::ImplPauseHandlers |
Definition at line 275 of file eventmultiplexer.cxx.
typedef ThreadUnsafeListenerContainer< ViewRepaintHandlerSharedPtr, std::vector<ViewRepaintHandlerSharedPtr> > slideshow::internal::EventMultiplexerImpl::ImplRepaintHandlers |
Definition at line 281 of file eventmultiplexer.cxx.
typedef ThreadUnsafeListenerContainer< ShapeListenerEventHandlerSharedPtr, std::vector<ShapeListenerEventHandlerSharedPtr> > slideshow::internal::EventMultiplexerImpl::ImplShapeListenerHandlers |
Definition at line 284 of file eventmultiplexer.cxx.
typedef ThreadUnsafeListenerContainer< UserPaintEventHandlerSharedPtr, std::vector<UserPaintEventHandlerSharedPtr> > slideshow::internal::EventMultiplexerImpl::ImplUserPaintEventHandlers |
Definition at line 287 of file eventmultiplexer.cxx.
typedef ThreadUnsafeListenerContainer< ViewEventHandlerWeakPtrWrapper, std::vector<ViewEventHandlerWeakPtrWrapper> > slideshow::internal::EventMultiplexerImpl::ImplViewHandlers |
Definition at line 278 of file eventmultiplexer.cxx.
|
inline |
Definition at line 213 of file eventmultiplexer.cxx.
|
inline |
Definition at line 241 of file eventmultiplexer.cxx.
References mxListener.
void slideshow::internal::EventMultiplexerImpl::addMouseHandler | ( | ImplMouseHandlers & | rHandlerContainer, |
const MouseEventHandlerSharedPtr & | rHandler, | ||
double | nPriority, | ||
RegisterFunction | pRegisterListener | ||
) |
Definition at line 507 of file eventmultiplexer.cxx.
References slideshow::internal::ListenerContainerBase< ListenerT, MutexHolderBaseT, ContainerT, MaxDeceasedListenerUllage >::addSorted(), ENSURE_OR_THROW, and forEachView().
void slideshow::internal::EventMultiplexerImpl::clear | ( | ) |
Remove all handlers.
Definition at line 629 of file eventmultiplexer.cxx.
References slideshow::internal::UnoViewContainer::begin(), slideshow::internal::ListenerContainerBase< ListenerT, MutexHolderBaseT, ContainerT, MaxDeceasedListenerUllage >::clear(), slideshow::internal::UnoViewContainer::end(), slideshow::internal::ListenerContainerBase< ListenerT, MutexHolderBaseT, ContainerT, MaxDeceasedListenerUllage >::isEmpty(), isMouseListenerRegistered(), maAnimationEndHandlers, maAnimationStartHandlers, maAudioStoppedHandlers, maCommandStopAudioHandlers, maHyperlinkHandlers, maMouseClickHandlers, maMouseDoubleClickHandlers, maMouseMoveHandlers, maNextEffectHandlers, maPauseHandlers, maSlideAnimationsEndHandlers, maSlideEndHandlers, maSlideStartHandlers, maViewHandlers, maViewRepaintHandlers, mpTickEvent, mrViewContainer, and mxListener.
UnoViewSharedPtr slideshow::internal::EventMultiplexerImpl::findUnoView | ( | const uno::Reference< presentation::XSlideShowView > & | xView | ) | const |
Definition at line 488 of file eventmultiplexer.cxx.
References slideshow::internal::UnoViewContainer::begin(), slideshow::internal::UnoViewContainer::end(), and mrViewContainer.
void slideshow::internal::EventMultiplexerImpl::forEachView | ( | XSlideShowViewFunc | pViewMethod | ) |
Definition at line 467 of file eventmultiplexer.cxx.
References slideshow::internal::UnoViewContainer::begin(), slideshow::internal::UnoViewContainer::end(), mrViewContainer, and mxListener.
Referenced by addMouseHandler().
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().
bool slideshow::internal::EventMultiplexerImpl::isMouseListenerRegistered | ( | ) | const |
Definition at line 527 of file eventmultiplexer.cxx.
References slideshow::internal::ListenerContainerBase< ListenerT, MutexHolderBaseT, ContainerT, MaxDeceasedListenerUllage >::isEmpty(), maMouseClickHandlers, and maMouseDoubleClickHandlers.
Referenced by clear().
void slideshow::internal::EventMultiplexerImpl::mouseDragged | ( | const awt::MouseEvent & | e | ) |
Definition at line 766 of file eventmultiplexer.cxx.
References slideshow::internal::MouseEventHandler::handleMouseDragged(), maMouseMoveHandlers, and notifyMouseHandlers().
void slideshow::internal::EventMultiplexerImpl::mouseMoved | ( | const awt::MouseEvent & | e | ) |
Definition at line 773 of file eventmultiplexer.cxx.
References slideshow::internal::MouseEventHandler::handleMouseMoved(), maMouseMoveHandlers, and notifyMouseHandlers().
void slideshow::internal::EventMultiplexerImpl::mousePressed | ( | const awt::MouseEvent & | e | ) |
Definition at line 722 of file eventmultiplexer.cxx.
References slideshow::internal::MouseEventHandler::handleMousePressed(), maMouseClickHandlers, maMouseDoubleClickHandlers, and notifyMouseHandlers().
void slideshow::internal::EventMultiplexerImpl::mouseReleased | ( | const awt::MouseEvent & | e | ) |
Definition at line 744 of file eventmultiplexer.cxx.
References slideshow::internal::MouseEventHandler::handleMouseReleased(), maMouseClickHandlers, maMouseDoubleClickHandlers, and notifyMouseHandlers().
|
static |
Definition at line 458 of file eventmultiplexer.cxx.
Referenced by slideshow::internal::EventMultiplexer::notifyAnimationEnd(), slideshow::internal::EventMultiplexer::notifyAnimationStart(), slideshow::internal::EventMultiplexer::notifyAudioStopped(), and slideshow::internal::EventMultiplexer::notifyCommandStopAudio().
bool slideshow::internal::EventMultiplexerImpl::notifyMouseHandlers | ( | const ImplMouseHandlers & | rQueue, |
bool(MouseEventHandler::*)(const awt::MouseEvent &) | pHandlerMethod, | ||
const awt::MouseEvent & | e | ||
) |
Definition at line 676 of file eventmultiplexer.cxx.
References aEvent, slideshow::internal::ListenerContainerBase< ListenerT, MutexHolderBaseT, ContainerT, MaxDeceasedListenerUllage >::apply(), slideshow::internal::UnoViewContainer::begin(), slideshow::internal::UnoViewContainer::end(), ENSURE_OR_RETURN_FALSE, ENSURE_OR_THROW, basegfx::Tuple2D< typename TYPE >::getX(), basegfx::Tuple2D< typename TYPE >::getY(), basegfx::B2DHomMatrix::invert(), and mrViewContainer.
Referenced by mouseDragged(), mouseMoved(), mousePressed(), and mouseReleased().
bool slideshow::internal::EventMultiplexerImpl::notifyNextEffect | ( | ) |
Definition at line 780 of file eventmultiplexer.cxx.
References slideshow::internal::ListenerContainerBase< ListenerT, MutexHolderBaseT, ContainerT, MaxDeceasedListenerUllage >::apply(), and maNextEffectHandlers.
Referenced by tick().
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().
void slideshow::internal::EventMultiplexerImpl::tick | ( | ) |
Called for automatic nextEffect.
Definition at line 533 of file eventmultiplexer.cxx.
References slideshow::internal::ListenerContainerBase< ListenerT, MutexHolderBaseT, ContainerT, MaxDeceasedListenerUllage >::isEmpty(), maNextEffectHandlers, mbIsAutoMode, notifyNextEffect(), and scheduleTick().
Referenced by scheduleTick().
basegfx::B2DPoint slideshow::internal::EventMultiplexerImpl::toMatrixPoint | ( | uno::Reference< presentation::XSlideShowView > | xView, |
basegfx::B2DPoint | pnt | ||
) |
Definition at line 604 of file eventmultiplexer.cxx.
References slideshow::internal::UnoViewContainer::begin(), slideshow::internal::UnoViewContainer::end(), ENSURE_OR_THROW, basegfx::fround(), basegfx::Tuple2D< typename TYPE >::getX(), basegfx::Tuple2D< typename TYPE >::getY(), basegfx::B2DHomMatrix::invert(), mrViewContainer, basegfx::Tuple2D< typename TYPE >::setX(), and basegfx::Tuple2D< typename TYPE >::setY().
basegfx::B2DPoint slideshow::internal::EventMultiplexerImpl::toNormalPoint | ( | uno::Reference< presentation::XSlideShowView > | xView, |
basegfx::B2DPoint | pnt | ||
) |
Definition at line 581 of file eventmultiplexer.cxx.
References slideshow::internal::UnoViewContainer::begin(), slideshow::internal::UnoViewContainer::end(), basegfx::fround(), basegfx::Tuple2D< typename TYPE >::getX(), basegfx::Tuple2D< typename TYPE >::getY(), mrViewContainer, basegfx::Tuple2D< typename TYPE >::setX(), and basegfx::Tuple2D< typename TYPE >::setY().
ImplAnimationHandlers slideshow::internal::EventMultiplexerImpl::maAnimationEndHandlers |
Definition at line 338 of file eventmultiplexer.cxx.
Referenced by clear().
ImplAnimationHandlers slideshow::internal::EventMultiplexerImpl::maAnimationStartHandlers |
Definition at line 337 of file eventmultiplexer.cxx.
Referenced by clear().
ImplAnimationHandlers slideshow::internal::EventMultiplexerImpl::maAudioStoppedHandlers |
Definition at line 340 of file eventmultiplexer.cxx.
Referenced by clear().
ImplAnimationHandlers slideshow::internal::EventMultiplexerImpl::maCommandStopAudioHandlers |
Definition at line 341 of file eventmultiplexer.cxx.
Referenced by clear().
ImplHyperLinkHandlers slideshow::internal::EventMultiplexerImpl::maHyperlinkHandlers |
Definition at line 350 of file eventmultiplexer.cxx.
Referenced by clear().
ImplMouseHandlers slideshow::internal::EventMultiplexerImpl::maMouseClickHandlers |
Definition at line 347 of file eventmultiplexer.cxx.
Referenced by clear(), isMouseListenerRegistered(), mousePressed(), and mouseReleased().
ImplMouseHandlers slideshow::internal::EventMultiplexerImpl::maMouseDoubleClickHandlers |
Definition at line 348 of file eventmultiplexer.cxx.
Referenced by clear(), isMouseListenerRegistered(), mousePressed(), and mouseReleased().
ImplMouseHandlers slideshow::internal::EventMultiplexerImpl::maMouseMoveHandlers |
Definition at line 349 of file eventmultiplexer.cxx.
Referenced by clear(), mouseDragged(), and mouseMoved().
ImplNextEffectHandlers slideshow::internal::EventMultiplexerImpl::maNextEffectHandlers |
Definition at line 334 of file eventmultiplexer.cxx.
Referenced by clear(), notifyNextEffect(), and tick().
ImplPauseHandlers slideshow::internal::EventMultiplexerImpl::maPauseHandlers |
Definition at line 342 of file eventmultiplexer.cxx.
Referenced by clear().
ImplShapeListenerHandlers slideshow::internal::EventMultiplexerImpl::maShapeListenerHandlers |
Definition at line 345 of file eventmultiplexer.cxx.
ImplEventHandlers slideshow::internal::EventMultiplexerImpl::maSlideAnimationsEndHandlers |
Definition at line 339 of file eventmultiplexer.cxx.
Referenced by clear().
ImplEventHandlers slideshow::internal::EventMultiplexerImpl::maSlideEndHandlers |
Definition at line 336 of file eventmultiplexer.cxx.
Referenced by clear().
ImplEventHandlers slideshow::internal::EventMultiplexerImpl::maSlideStartHandlers |
Definition at line 335 of file eventmultiplexer.cxx.
Referenced by clear().
ImplUserPaintEventHandlers slideshow::internal::EventMultiplexerImpl::maUserPaintEventHandlers |
Definition at line 346 of file eventmultiplexer.cxx.
ImplViewHandlers slideshow::internal::EventMultiplexerImpl::maViewHandlers |
Definition at line 343 of file eventmultiplexer.cxx.
Referenced by clear().
ImplRepaintHandlers slideshow::internal::EventMultiplexerImpl::maViewRepaintHandlers |
Definition at line 344 of file eventmultiplexer.cxx.
Referenced by clear().
bool slideshow::internal::EventMultiplexerImpl::mbIsAutoMode |
Definition at line 362 of file eventmultiplexer.cxx.
Referenced by handleTicks(), and tick().
double slideshow::internal::EventMultiplexerImpl::mnTimeout |
automatic next effect mode timeout
Definition at line 353 of file eventmultiplexer.cxx.
Referenced by scheduleTick().
::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().
EventQueue& slideshow::internal::EventMultiplexerImpl::mrEventQueue |
Definition at line 329 of file eventmultiplexer.cxx.
Referenced by scheduleTick().
UnoViewContainer const& slideshow::internal::EventMultiplexerImpl::mrViewContainer |
Definition at line 330 of file eventmultiplexer.cxx.
Referenced by clear(), findUnoView(), forEachView(), notifyMouseHandlers(), toMatrixPoint(), and toNormalPoint().
::rtl::Reference< EventMultiplexerListener> slideshow::internal::EventMultiplexerImpl::mxListener |
Definition at line 332 of file eventmultiplexer.cxx.
Referenced by clear(), forEachView(), and ~EventMultiplexerImpl().