diff options
Diffstat (limited to 'slideshow/source/engine/shapes')
-rw-r--r-- | slideshow/source/engine/shapes/gdimtftools.cxx | 42 | ||||
-rw-r--r-- | slideshow/source/engine/shapes/viewmediashape.cxx | 6 | ||||
-rw-r--r-- | slideshow/source/engine/shapes/viewmediashape.hxx | 5 |
3 files changed, 27 insertions, 26 deletions
diff --git a/slideshow/source/engine/shapes/gdimtftools.cxx b/slideshow/source/engine/shapes/gdimtftools.cxx index f3a52ca300f3..c38a45777a47 100644 --- a/slideshow/source/engine/shapes/gdimtftools.cxx +++ b/slideshow/source/engine/shapes/gdimtftools.cxx @@ -286,14 +286,14 @@ bool getAnimationFromGraphic( VectorOfMtfAnimationFrames& o_rFrames, // normalize animations to n bitmaps of same size. An Animation, // though, can contain bitmaps of varying sizes and different // update modes) - VirtualDevice aVDev; - aVDev.SetOutputSizePixel( aAnimSize ); - aVDev.EnableMapMode( false ); + ScopedVclPtrInstance< VirtualDevice > pVDev; + pVDev->SetOutputSizePixel( aAnimSize ); + pVDev->EnableMapMode( false ); // setup mask VDev (alpha VDev is currently rather slow) - VirtualDevice aVDevMask; - aVDevMask.SetOutputSizePixel( aAnimSize ); - aVDevMask.EnableMapMode( false ); + ScopedVclPtrInstance< VirtualDevice > pVDevMask; + pVDevMask->SetOutputSizePixel( aAnimSize ); + pVDevMask->EnableMapMode( false ); switch( aAnimation.GetCycleMode() ) { @@ -329,23 +329,23 @@ bool getAnimationFromGraphic( VectorOfMtfAnimationFrames& o_rFrames, { case DISPOSE_NOT: { - aVDev.DrawBitmapEx(rAnimBmp.aPosPix, + pVDev->DrawBitmapEx(rAnimBmp.aPosPix, rAnimBmp.aBmpEx); Bitmap aMask = rAnimBmp.aBmpEx.GetMask(); if( aMask.IsEmpty() ) { const Rectangle aRect(aEmptyPoint, - aVDevMask.GetOutputSizePixel()); + pVDevMask->GetOutputSizePixel()); const Wallpaper aWallpaper(COL_BLACK); - aVDevMask.DrawWallpaper(aRect, + pVDevMask->DrawWallpaper(aRect, aWallpaper); } else { BitmapEx aTmpMask = BitmapEx(aMask, aMask); - aVDevMask.DrawBitmapEx(rAnimBmp.aPosPix, + pVDevMask->DrawBitmapEx(rAnimBmp.aPosPix, aTmpMask ); } break; @@ -357,35 +357,35 @@ bool getAnimationFromGraphic( VectorOfMtfAnimationFrames& o_rFrames, const Bitmap aMask(rAnimBmp.aBmpEx.GetMask()); const Bitmap aContent(rAnimBmp.aBmpEx.GetBitmap()); - aVDevMask.Erase(); - aVDev.DrawBitmap(rAnimBmp.aPosPix, aContent); + pVDevMask->Erase(); + pVDev->DrawBitmap(rAnimBmp.aPosPix, aContent); if(aMask.IsEmpty()) { const Rectangle aRect(rAnimBmp.aPosPix, aContent.GetSizePixel()); - aVDevMask.SetFillColor(COL_BLACK); - aVDevMask.SetLineColor(); - aVDevMask.DrawRect(aRect); + pVDevMask->SetFillColor(COL_BLACK); + pVDevMask->SetLineColor(); + pVDevMask->DrawRect(aRect); } else { - aVDevMask.DrawBitmap(rAnimBmp.aPosPix, aMask); + pVDevMask->DrawBitmap(rAnimBmp.aPosPix, aMask); } break; } case DISPOSE_FULL: { - aVDev.DrawBitmapEx(rAnimBmp.aPosPix, + pVDev->DrawBitmapEx(rAnimBmp.aPosPix, rAnimBmp.aBmpEx); break; } case DISPOSE_PREVIOUS : { - aVDev.DrawBitmapEx(rAnimBmp.aPosPix, + pVDev->DrawBitmapEx(rAnimBmp.aPosPix, rAnimBmp.aBmpEx); - aVDevMask.DrawBitmap(rAnimBmp.aPosPix, + pVDevMask->DrawBitmap(rAnimBmp.aPosPix, rAnimBmp.aBmpEx.GetMask()); break; } @@ -397,10 +397,10 @@ bool getAnimationFromGraphic( VectorOfMtfAnimationFrames& o_rFrames, pMtf->AddAction( new MetaBmpExAction( aEmptyPoint, BitmapEx( - aVDev.GetBitmap( + pVDev->GetBitmap( aEmptyPoint, aAnimSize ), - aVDevMask.GetBitmap( + pVDevMask->GetBitmap( aEmptyPoint, aAnimSize )))); diff --git a/slideshow/source/engine/shapes/viewmediashape.cxx b/slideshow/source/engine/shapes/viewmediashape.cxx index afddec0b6b51..f026b21a8eb2 100644 --- a/slideshow/source/engine/shapes/viewmediashape.cxx +++ b/slideshow/source/engine/shapes/viewmediashape.cxx @@ -471,20 +471,20 @@ namespace slideshow #else if( avmedia::IsModel(rMimeType) ) { - mpEventHandlerParent.reset(new vcl::Window(pWindow, WB_NOBORDER|WB_NODIALOGCONTROL)); + mpEventHandlerParent.reset(VclPtr<vcl::Window>::Create(pWindow, WB_NOBORDER|WB_NODIALOGCONTROL)); mpEventHandlerParent->SetPosSizePixel( Point( aAWTRect.X, aAWTRect.Y ), Size( aAWTRect.Width, aAWTRect.Height ) ); mpEventHandlerParent->EnablePaint(false); mpEventHandlerParent->Show(); SystemWindowData aWinData = OpenGLContext::generateWinData(mpEventHandlerParent.get(), false); - mpMediaWindow.reset(new SystemChildWindow(mpEventHandlerParent.get(), 0, &aWinData)); + mpMediaWindow.reset(VclPtr<SystemChildWindow>::Create(mpEventHandlerParent.get(), 0, &aWinData)); mpMediaWindow->SetPosSizePixel( Point( 0, 0 ), Size( aAWTRect.Width, aAWTRect.Height ) ); } else #endif { - mpMediaWindow.reset( new SystemChildWindow( pWindow, WB_CLIPCHILDREN ) ); + mpMediaWindow.reset( VclPtr<SystemChildWindow>::Create( pWindow, WB_CLIPCHILDREN ) ); mpMediaWindow->SetPosSizePixel( Point( aAWTRect.X, aAWTRect.Y ), Size( aAWTRect.Width, aAWTRect.Height ) ); } diff --git a/slideshow/source/engine/shapes/viewmediashape.hxx b/slideshow/source/engine/shapes/viewmediashape.hxx index a512a96e8c57..1dc8f32aab9e 100644 --- a/slideshow/source/engine/shapes/viewmediashape.hxx +++ b/slideshow/source/engine/shapes/viewmediashape.hxx @@ -26,6 +26,7 @@ #include <boost/shared_ptr.hpp> #include <boost/utility.hpp> #include <boost/scoped_ptr.hpp> +#include <vcl/vclptr.hxx> #include "viewlayer.hxx" @@ -147,8 +148,8 @@ namespace slideshow const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& rVCLDeviceParams, const OUString& rMimeType ); ViewLayerSharedPtr mpViewLayer; - ::std::unique_ptr< SystemChildWindow > mpMediaWindow; - boost::scoped_ptr< ::vcl::Window > mpEventHandlerParent; + VclPtr< SystemChildWindow > mpMediaWindow; + VclPtr< ::vcl::Window > mpEventHandlerParent; mutable ::com::sun::star::awt::Point maWindowOffset; mutable ::basegfx::B2DRectangle maBounds; |