diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2007-08-01 10:08:35 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2007-08-01 10:08:35 +0000 |
commit | 366aac2029942178725c5723a795fea686408742 (patch) | |
tree | 12761e283d8ba15824455b14ca08d9f68f3744fe /sd | |
parent | a240a882174b1aa05578b5cf0bd7e1d4222c2831 (diff) |
INTEGRATION: CWS pathfinder02 (1.27.6); FILE MERGED
2007/07/23 14:49:48 cl 1.27.6.1: #i79202# play path animation if motion path tag is selected
Diffstat (limited to 'sd')
-rw-r--r-- | sd/source/ui/animations/CustomAnimationPane.cxx | 32 |
1 files changed, 26 insertions, 6 deletions
diff --git a/sd/source/ui/animations/CustomAnimationPane.cxx b/sd/source/ui/animations/CustomAnimationPane.cxx index 5390d402b7fe..a6597850429d 100644 --- a/sd/source/ui/animations/CustomAnimationPane.cxx +++ b/sd/source/ui/animations/CustomAnimationPane.cxx @@ -4,9 +4,9 @@ * * $RCSfile: CustomAnimationPane.cxx,v $ * - * $Revision: 1.27 $ + * $Revision: 1.28 $ * - * last change: $Author: rt $ $Date: 2007-07-06 13:11:24 $ + * last change: $Author: hr $ $Date: 2007-08-01 11:08:35 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -2364,11 +2364,31 @@ void CustomAnimationPane::onPreview( bool bForcePreview ) if( maListSelection.empty() ) { - Reference< XAnimationNodeSupplier > xNodeSupplier( mxCurrentPage, UNO_QUERY ); - if( !xNodeSupplier.is() ) - return; + rtl::Reference< MotionPathTag > xMotionPathTag; + MotionPathTagVector::iterator aIter; + for( aIter = maMotionPathTags.begin(); aIter != maMotionPathTags.end(); aIter++ ) + { + if( (*aIter)->isSelected() ) + { + xMotionPathTag = (*aIter); + break; + } + } - preview( xNodeSupplier->getAnimationNode() ); + if( xMotionPathTag.is() ) + { + MainSequencePtr pSequence( new MainSequence() ); + pSequence->append( xMotionPathTag->getEffect()->clone() ); + preview( pSequence->getRootNode() ); + } + else + { + Reference< XAnimationNodeSupplier > xNodeSupplier( mxCurrentPage, UNO_QUERY ); + if( !xNodeSupplier.is() ) + return; + + preview( xNodeSupplier->getAnimationNode() ); + } } else { |