diff options
author | Oliver Bolte <obo@openoffice.org> | 2007-07-17 13:58:39 +0000 |
---|---|---|
committer | Oliver Bolte <obo@openoffice.org> | 2007-07-17 13:58:39 +0000 |
commit | 9e9d9369dff13ea0f1bbecbfd9e1c90985803a9b (patch) | |
tree | be32c1a1158ebb9d66e5fefcce80f23be4782839 /slideshow/source/engine/transitions/combtransition.cxx | |
parent | e860cff12d527668f031c9bb0ee9f8ebbf3a2522 (diff) |
INTEGRATION: CWS presfixes12 (1.7.12); FILE MERGED
2007/05/02 21:37:24 thb 1.7.12.5: #i37778# Changed calls to cppcanvas::Canvas::getTransformation() to ViewLayer::getTransformation() where appropriate (because that's more direct); added initial Slide rendering back in (this time optional)
2007/02/02 08:47:53 thb 1.7.12.4: #i37778# Moved all old-style casts to sal::static_int_cast
2007/01/31 14:30:33 thb 1.7.12.3: #i37778# removed View::isContentDestroyed() and mbContentValid distinction on View::clear() - clear() now always clears view the hard way; added explicit screen update to CombTransition, which bypasses SlideChangeBase functionality
2007/01/31 12:29:05 thb 1.7.12.2: #i37778# Slide animations now notify screen updates themselves
2007/01/29 14:02:16 thb 1.7.12.1: Issue number: #i37778#
Larger slideshow refactoring. Wrote design and coding style manifest,
and adapted the code to actually conform to this. In detail:
- cleaned up ownership/disposable/weak_ptr story. removed hacks and
explicit Disposable implementations, where workaround were available
- removed object mutices, where superfluous
- reworked EventMultiplexer (using templatized listener class now), added
more events. EventMultiplexer now serves as a true blackboard
- reworked directory structure: disjunct parts are now physically separated
into directories, instantiation happens via factories & abstract interfaces
- added CursorManager, to make setting mouse cursor less hackish
- reworked DrawShape, to implement SeparateListener pattern
- reworked IntrinsicAnimationActivity, to avoid cyclic references
- modified hyperlink & shape cursor handling to communicate via
EventMultiplexer
- renamed & cleaned up files (presentation.cxx now named slideshowimpl.cxx,
etc.)
- added first version of the z-order fix to layer/layermanager
- cleaned up include guards and include syntax
Diffstat (limited to 'slideshow/source/engine/transitions/combtransition.cxx')
-rw-r--r-- | slideshow/source/engine/transitions/combtransition.cxx | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/slideshow/source/engine/transitions/combtransition.cxx b/slideshow/source/engine/transitions/combtransition.cxx index 17aa59d78dda..ad7a4417b8b4 100644 --- a/slideshow/source/engine/transitions/combtransition.cxx +++ b/slideshow/source/engine/transitions/combtransition.cxx @@ -4,9 +4,9 @@ * * $RCSfile: combtransition.cxx,v $ * - * $Revision: 1.7 $ + * $Revision: 1.8 $ * - * last change: $Author: kz $ $Date: 2006-12-13 15:39:24 $ + * last change: $Author: obo $ $Date: 2007-07-17 14:58:39 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -37,10 +37,17 @@ #include "precompiled_slideshow.hxx" #include <canvas/debug.hxx> +#include <basegfx/polygon/b2dpolygon.hxx> #include <basegfx/polygon/b2dpolygontools.hxx> -#include <basegfx/polygon/b2dpolypolygontools.hxx> +#include <basegfx/matrix/b2dhommatrix.hxx> + +#include <cppcanvas/spritecanvas.hxx> + #include "combtransition.hxx" +#include <boost/bind.hpp> + + namespace slideshow { namespace internal { @@ -60,8 +67,8 @@ basegfx::B2DPolyPolygon createClipPolygon( { aClipPoly.append( ::basegfx::tools::createPolygonFromRect( - ::basegfx::B2DRectangle( (double)i/nNumStrips, 0.0, - (double)(i+1)/nNumStrips, 1.0) ) ); + ::basegfx::B2DRectangle( double(i)/nNumStrips, 0.0, + double(i+1)/nNumStrips, 1.0) ) ); } @@ -90,11 +97,12 @@ CombTransition::CombTransition( const SlideSharedPtr& pEnteringSlide, const SoundPlayerSharedPtr& pSoundPlayer, const UnoViewContainer& rViewContainer, + ScreenUpdater& rScreenUpdater, EventMultiplexer& rEventMultiplexer, const ::basegfx::B2DVector& rPushDirection, sal_Int32 nNumStripes ) : SlideChangeBase( leavingSlide, pEnteringSlide, pSoundPlayer, - rViewContainer, rEventMultiplexer, + rViewContainer, rScreenUpdater, rEventMultiplexer, false /* no leaving sprite */, false /* no entering sprite */ ), maPushDirectionUnit( rPushDirection ), @@ -120,7 +128,7 @@ void CombTransition::renderComb( double t, // (i.e. pixel). // TODO(F2): Properly respect clip here. Might have to be transformed, too. - const basegfx::B2DHomMatrix viewTransform( pCanvas_->getTransformation() ); + const basegfx::B2DHomMatrix viewTransform( rViewEntry.mpView->getTransformation() ); const basegfx::B2DPoint pageOrigin( viewTransform * basegfx::B2DPoint() ); // change transformation on cloned canvas to be in @@ -133,7 +141,7 @@ void CombTransition::renderComb( double t, // TODO(F1): SlideBitmap is not fully portable between different canvases! const basegfx::B2DSize enteringSizePixel( - getEnteringSizePixel(rViewEntry.mpView) ); + getEnteringSlideSizePixel( rViewEntry.mpView) ); const basegfx::B2DVector aPushDirection = basegfx::B2DVector( enteringSizePixel * maPushDirectionUnit ); @@ -197,6 +205,9 @@ bool CombTransition::operator()( double t ) this, t, _1 )); + + getScreenUpdater().notifyUpdate(); + return true; } |