View | Details | Raw Unified | Return to issue 95879
Collapse All | Expand All

(-)slideshow/source.old/engine/animationnodes/sequentialtimecontainer.cxx (-2 / +3 lines)
Lines 124-131 Link Here
124
                         pChildNode ) );
124
                         pChildNode ) );
125
        
125
        
126
        // deactivate child node when skip event occurs:
126
        // deactivate child node when skip event occurs:
127
        getContext().mrUserEventQueue.registerSkipEffectEvent(
127
	    // FIXME: This causes the slide to advance too early
128
            mpCurrentSkipEvent );
128
        //getContext().mrUserEventQueue.registerSkipEffectEvent(
129
        //    mpCurrentSkipEvent );
129
        // rewind to previous child:
130
        // rewind to previous child:
130
        getContext().mrUserEventQueue.registerRewindEffectEvent(
131
        getContext().mrUserEventQueue.registerRewindEffectEvent(
131
            mpCurrentRewindEvent );
132
            mpCurrentRewindEvent );
(-)slideshow/source.old/engine/eventmultiplexer.cxx (-1 / +19 lines)
Lines 206-211 Link Here
206
        maMouseMoveHandlers(),
206
        maMouseMoveHandlers(),
207
        maHyperlinkHandlers(),
207
        maHyperlinkHandlers(),
208
        mnTimeout(0.0),
208
        mnTimeout(0.0),
209
        mnSlideTimeout(0.0),
209
        mpTickEvent(),
210
        mpTickEvent(),
210
        mbIsAutoMode(false)
211
        mbIsAutoMode(false)
211
    {}
212
    {}
Lines 322-329 Link Here
322
    ImplMouseHandlers                   maMouseMoveHandlers;
323
    ImplMouseHandlers                   maMouseMoveHandlers;
323
    ImplHyperLinkHandlers               maHyperlinkHandlers;
324
    ImplHyperLinkHandlers               maHyperlinkHandlers;
324
325
325
    /// automatic next effect mode timeout
326
    /// automatic next effect mode delay between effects
326
    double                        mnTimeout;
327
    double                        mnTimeout;
328
    /// automatic next effect mode delay between slides (default to mnTimeout if not set)
329
    double                        mnSlideTimeout;
327
    
330
    
328
    /** Holds ptr to optional tick event weakly
331
    /** Holds ptr to optional tick event weakly
329
        
332
        
Lines 757-767 Link Here
757
    mpImpl->mnTimeout = nTimeout;
760
    mpImpl->mnTimeout = nTimeout;
758
}
761
}
759
762
763
void EventMultiplexer::setAutomaticSlideTimeout( double nTimeout )
764
{
765
    mpImpl->mnSlideTimeout = nTimeout;
766
}
767
760
double EventMultiplexer::getAutomaticTimeout() const
768
double EventMultiplexer::getAutomaticTimeout() const
761
{
769
{
762
    return mpImpl->mnTimeout;
770
    return mpImpl->mnTimeout;
763
}
771
}
764
772
773
double EventMultiplexer::getAutomaticSlideTimeout() const
774
{
775
    double nTimeout;
776
    if(mpImpl->mnSlideTimeout)
777
        nTimeout = mpImpl->mnSlideTimeout;
778
    else
779
        nTimeout = mpImpl->mnTimeout;
780
    return nTimeout;
781
}
782
765
void EventMultiplexer::addNextEffectHandler(
783
void EventMultiplexer::addNextEffectHandler(
766
    EventHandlerSharedPtr const& rHandler,
784
    EventHandlerSharedPtr const& rHandler,
767
    double                       nPriority )
785
    double                       nPriority )
(-)slideshow/source.old/engine/slideshowimpl.cxx (-5 / +14 lines)
Lines 1149-1154 Link Here
1149
    }
1149
    }
1150
    
1150
    
1151
    if (rProperty.Name.equalsAsciiL(
1151
    if (rProperty.Name.equalsAsciiL(
1152
            RTL_CONSTASCII_STRINGPARAM("AutomaticSlideAdvancement") ))
1153
    {
1154
        double nTimeout(0.0);
1155
        rProperty.Value >>= nTimeout;
1156
        maEventMultiplexer.setAutomaticSlideTimeout( nTimeout );
1157
        return true;
1158
    }
1159
    
1160
    if (rProperty.Name.equalsAsciiL(
1152
            RTL_CONSTASCII_STRINGPARAM("UserPaintColor") ))
1161
            RTL_CONSTASCII_STRINGPARAM("UserPaintColor") ))
1153
    {
1162
    {
1154
        sal_Int32 nColor(0);
1163
        sal_Int32 nColor(0);
Lines 1645-1651 Link Here
1645
    osl::MutexGuard const guard( m_aMutex );
1654
    osl::MutexGuard const guard( m_aMutex );
1646
1655
1647
    OSL_ENSURE( !isDisposed(), "### already disposed!" );
1656
    OSL_ENSURE( !isDisposed(), "### already disposed!" );
1648
    
1649
    // This struct will receive the (interruptable) event,
1657
    // This struct will receive the (interruptable) event,
1650
    // that triggers the notifySlideEnded() method.
1658
    // that triggers the notifySlideEnded() method.
1651
    InterruptableEventPair aNotificationEvents;
1659
    InterruptableEventPair aNotificationEvents;
Lines 1659-1665 Link Here
1659
        // delay
1667
        // delay
1660
        aNotificationEvents = makeInterruptableDelay(
1668
        aNotificationEvents = makeInterruptableDelay(
1661
            boost::bind( &SlideShowImpl::notifySlideEnded, this ),
1669
            boost::bind( &SlideShowImpl::notifySlideEnded, this ),
1662
            maEventMultiplexer.getAutomaticTimeout() );
1670
            maEventMultiplexer.getAutomaticSlideTimeout() );
1663
    }
1671
    }
1664
    else 
1672
    else 
1665
    {
1673
    {
Lines 1708-1716 Link Here
1708
    // changes interruptable, register the interruption event
1716
    // changes interruptable, register the interruption event
1709
    // as a nextEffectEvent target. Note that the timeout
1717
    // as a nextEffectEvent target. Note that the timeout
1710
    // event is optional (e.g. manual slide changes don't
1718
    // event is optional (e.g. manual slide changes don't
1711
    // generate a timeout)            
1719
    // generate a timeout)
1712
    maUserEventQueue.registerNextEffectEvent(
1720
    // FIXME: This causes the slide to advance too early
1713
        aNotificationEvents.mpImmediateEvent );
1721
    //maUserEventQueue.registerNextEffectEvent(
1722
    //    aNotificationEvents.mpImmediateEvent );
1714
    
1723
    
1715
    if( aNotificationEvents.mpTimeoutEvent )
1724
    if( aNotificationEvents.mpTimeoutEvent )
1716
        maEventQueue.addEvent( aNotificationEvents.mpTimeoutEvent );
1725
        maEventQueue.addEvent( aNotificationEvents.mpTimeoutEvent );
(-)slideshow/source.old/inc/eventmultiplexer.hxx (-3 / +14 lines)
Lines 120-134 Link Here
120
    /** Set the timeout for automatic mode.
120
    /** Set the timeout for automatic mode.
121
        
121
        
122
        @param nTimeout
122
        @param nTimeout
123
        Timeout, between end of effect until start of next
123
        Timeout between end of effect and start of next effect
124
        effect.
125
    */
124
    */
126
    void setAutomaticTimeout( double nTimeout );
125
    void setAutomaticTimeout( double nTimeout );
127
    
126
    
128
    /** Get automatic mode timeout value.
127
    /** Set the timeout for effects in automatic mode.
128
129
        @param nTimeout
130
        Timeout between end of effects and start of slide transition
131
        If not specified, uses timeout from setAutomaticTimeout
132
    */
133
    void setAutomaticSlideTimeout( double nTimeout );
134
    
135
    /** Get automatic mode timeout value between effects.
129
     */
136
     */
130
    double getAutomaticTimeout() const;
137
    double getAutomaticTimeout() const;
131
    
138
    
139
    /** Get automatic mode timeout value between slides.
140
     */
141
    double getAutomaticSlideTimeout() const;
142
    
132
    // Handler registration methods
143
    // Handler registration methods
133
    // =========================================================
144
    // =========================================================
134
    
145
    

Return to issue 95879