diff options
author | Philipp Lohmann [pl] <Philipp.Lohmann@Oracle.COM> | 2010-08-03 11:46:23 +0200 |
---|---|---|
committer | Philipp Lohmann [pl] <Philipp.Lohmann@Oracle.COM> | 2010-08-03 11:46:23 +0200 |
commit | 427ee90b689821e68eb19457982fa117cf61d03c (patch) | |
tree | 2008e79a712d1f5018d6e704b397d8fd3515d3c6 /slideshow/source | |
parent | e8af7005f7d30c025c546f0da90b260be1cff27b (diff) | |
parent | f0072466a6c06f6ea0516b021eb53176128b13d3 (diff) |
merge with DEV300_m86
Diffstat (limited to 'slideshow/source')
-rw-r--r-- | slideshow/source/engine/shapes/viewmediashape.cxx | 24 | ||||
-rw-r--r-- | slideshow/source/engine/shapes/viewmediashape.hxx | 4 | ||||
-rw-r--r-- | slideshow/source/engine/slide/layer.cxx | 4 |
3 files changed, 17 insertions, 15 deletions
diff --git a/slideshow/source/engine/shapes/viewmediashape.cxx b/slideshow/source/engine/shapes/viewmediashape.cxx index 1c0b6f9b71a1..ee076d7e394d 100644 --- a/slideshow/source/engine/shapes/viewmediashape.cxx +++ b/slideshow/source/engine/shapes/viewmediashape.cxx @@ -39,7 +39,7 @@ #include <cppuhelper/exc_hlp.hxx> #include <vcl/window.hxx> -#include <vcl/javachild.hxx> +#include <vcl/syschild.hxx> #include <vcl/salbtype.hxx> #include <basegfx/tools/canvastools.hxx> @@ -153,7 +153,7 @@ namespace slideshow mxPlayerWindow.clear(); } - mpMediaWindow = ::std::auto_ptr< JavaChildWindow >(); + mpMediaWindow = ::std::auto_ptr< SystemChildWindow >(); // shutdown player if( mxPlayer.is() ) @@ -431,29 +431,29 @@ namespace slideshow if( !rRangePix.isEmpty() ) { - uno::Sequence< uno::Any > aArgs( 2 ); + uno::Sequence< uno::Any > aArgs( 3 ); awt::Rectangle aAWTRect( rRangePix.getMinX(), rRangePix.getMinY(), rRangePix.getMaxX() - rRangePix.getMinX(), rRangePix.getMaxY() - rRangePix.getMinY() ); - mpMediaWindow = ::std::auto_ptr< JavaChildWindow >( new JavaChildWindow( pWindow, WB_CLIPCHILDREN ) ); + mpMediaWindow = ::std::auto_ptr< SystemChildWindow >( new + SystemChildWindow( pWindow, WB_CLIPCHILDREN ) ); mpMediaWindow->SetBackground( Color( COL_BLACK ) ); - mpMediaWindow->SetPosSizePixel( Point( aAWTRect.X, - aAWTRect.Y ), - Size( aAWTRect.Width, - aAWTRect.Height )); + mpMediaWindow->SetPosSizePixel( Point( aAWTRect.X, aAWTRect.Y ), + Size( aAWTRect.Width, aAWTRect.Height ) ); mpMediaWindow->Show(); if( mxPlayer.is() ) { aArgs[ 0 ] = uno::makeAny( - sal::static_int_cast<sal_IntPtr>( - mpMediaWindow->getParentWindowHandleForJava()) ); + sal::static_int_cast< sal_IntPtr >( mpMediaWindow->GetParentWindowHandle() ) ); aAWTRect.X = aAWTRect.Y = 0; aArgs[ 1 ] = uno::makeAny( aAWTRect ); + aArgs[ 2 ] = uno::makeAny( reinterpret_cast< sal_IntPtr >( mpMediaWindow.get() ) ); + mxPlayerWindow.set( mxPlayer->createPlayerWindow( aArgs ) ); if( mxPlayerWindow.is() ) @@ -515,9 +515,7 @@ namespace slideshow if( mxPlayer.is() ) { - aArgs[ 0 ] = uno::makeAny( - sal::static_int_cast<sal_Int32>( - aWNDVal) ); + aArgs[ 0 ] = uno::makeAny( sal::static_int_cast< sal_Int32 >( aWNDVal) ); aArgs[ 1 ] = uno::makeAny( aAWTRect ); mxPlayerWindow.set( mxPlayer->createPlayerWindow( aArgs ) ); diff --git a/slideshow/source/engine/shapes/viewmediashape.hxx b/slideshow/source/engine/shapes/viewmediashape.hxx index 5e2568bbd98e..8e024ae75bbe 100644 --- a/slideshow/source/engine/shapes/viewmediashape.hxx +++ b/slideshow/source/engine/shapes/viewmediashape.hxx @@ -36,7 +36,7 @@ #include "viewlayer.hxx" -class JavaChildWindow; +class SystemChildWindow; namespace com { namespace sun { namespace star { namespace drawing { class XShape; @@ -155,7 +155,7 @@ namespace slideshow const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& rDXDeviceParams ); ViewLayerSharedPtr mpViewLayer; - ::std::auto_ptr< JavaChildWindow > mpMediaWindow; + ::std::auto_ptr< SystemChildWindow > mpMediaWindow; mutable ::com::sun::star::awt::Point maWindowOffset; mutable ::basegfx::B2DRectangle maBounds; diff --git a/slideshow/source/engine/slide/layer.cxx b/slideshow/source/engine/slide/layer.cxx index be67b220962e..65f52f3b823f 100644 --- a/slideshow/source/engine/slide/layer.cxx +++ b/slideshow/source/engine/slide/layer.cxx @@ -36,6 +36,8 @@ #include <basegfx/range/b2dpolyrange.hxx> #include <basegfx/matrix/b2dhommatrix.hxx> #include <basegfx/polygon/b2dpolypolygon.hxx> +#include <basegfx/polygon/b2dpolypolygontools.hxx> +#include <basegfx/polygon/b2dpolypolygoncutter.hxx> #include "layer.hxx" @@ -288,6 +290,8 @@ namespace slideshow // clipping, and render each shape that intersects with // the calculated update area ::basegfx::B2DPolyPolygon aClip( maUpdateAreas.solveCrossovers() ); + aClip = ::basegfx::tools::stripNeutralPolygons(aClip); + aClip = ::basegfx::tools::stripDispensablePolygons(aClip, false); // actually, if there happen to be shapes with zero // update area in the maUpdateAreas vector, the |