diff options
Diffstat (limited to 'svx/source/svdraw/svdpntv.cxx')
-rw-r--r-- | svx/source/svdraw/svdpntv.cxx | 76 |
1 files changed, 38 insertions, 38 deletions
diff --git a/svx/source/svdraw/svdpntv.cxx b/svx/source/svdraw/svdpntv.cxx index 6e931e7f4504..f34e7c10f942 100644 --- a/svx/source/svdraw/svdpntv.cxx +++ b/svx/source/svdraw/svdpntv.cxx @@ -765,22 +765,22 @@ vcl::Region SdrPaintView::OptimizeDrawLayersRegion(OutputDevice* pOut, const vcl void SdrPaintView::ImpFormLayerDrawing( SdrPaintWindow& rPaintWindow ) { - if(mpPageView) - { - SdrPageWindow* pKnownTarget = mpPageView->FindPageWindow(rPaintWindow); + if(!mpPageView) + return; - if(pKnownTarget) - { - const SdrModel& rModel = *(GetModel()); - const SdrLayerAdmin& rLayerAdmin = rModel.GetLayerAdmin(); - const SdrLayerID nControlLayerId = rLayerAdmin.GetLayerID(rLayerAdmin.GetControlLayerName()); + SdrPageWindow* pKnownTarget = mpPageView->FindPageWindow(rPaintWindow); - // BUFFERED use GetTargetOutputDevice() now, it may be targeted to VDevs, too - // need to set PreparedPageWindow to make DrawLayer use the correct ObjectContact - mpPageView->setPreparedPageWindow(pKnownTarget); - mpPageView->DrawLayer(nControlLayerId, &rPaintWindow.GetTargetOutputDevice()); - mpPageView->setPreparedPageWindow(nullptr); - } + if(pKnownTarget) + { + const SdrModel& rModel = *(GetModel()); + const SdrLayerAdmin& rLayerAdmin = rModel.GetLayerAdmin(); + const SdrLayerID nControlLayerId = rLayerAdmin.GetLayerID(rLayerAdmin.GetControlLayerName()); + + // BUFFERED use GetTargetOutputDevice() now, it may be targeted to VDevs, too + // need to set PreparedPageWindow to make DrawLayer use the correct ObjectContact + mpPageView->setPreparedPageWindow(pKnownTarget); + mpPageView->DrawLayer(nControlLayerId, &rPaintWindow.GetTargetOutputDevice()); + mpPageView->setPreparedPageWindow(nullptr); } } @@ -1076,23 +1076,23 @@ void SdrPaintView::SetAnimationEnabled( bool bEnable ) void SdrPaintView::SetAnimationPause( bool bSet ) { - if(mbAnimationPause != bSet) + if(mbAnimationPause == bSet) + return; + + mbAnimationPause = bSet; + + if(!mpPageView) + return; + + for(sal_uInt32 b(0); b < mpPageView->PageWindowCount(); b++) { - mbAnimationPause = bSet; + SdrPageWindow& rPageWindow = *(mpPageView->GetPageWindow(b)); + sdr::contact::ObjectContact& rObjectContact = rPageWindow.GetObjectContact(); + sdr::animation::primitiveAnimator& rAnimator = rObjectContact.getPrimitiveAnimator(); - if(mpPageView) + if(rAnimator.IsPaused() != bSet) { - for(sal_uInt32 b(0); b < mpPageView->PageWindowCount(); b++) - { - SdrPageWindow& rPageWindow = *(mpPageView->GetPageWindow(b)); - sdr::contact::ObjectContact& rObjectContact = rPageWindow.GetObjectContact(); - sdr::animation::primitiveAnimator& rAnimator = rObjectContact.getPrimitiveAnimator(); - - if(rAnimator.IsPaused() != bSet) - { - rAnimator.SetPaused(bSet); - } - } + rAnimator.SetPaused(bSet); } } } @@ -1104,22 +1104,22 @@ void SdrPaintView::SetAnimationMode( const SdrAnimationMode eMode ) void SdrPaintView::VisAreaChanged(const OutputDevice* pOut) { - if(mpPageView) + if(!mpPageView) + return; + + if (pOut) { - if (pOut) - { - SdrPageWindow* pWindow = mpPageView->FindPageWindow(*const_cast<OutputDevice*>(pOut)); + SdrPageWindow* pWindow = mpPageView->FindPageWindow(*const_cast<OutputDevice*>(pOut)); - if(pWindow) - { - VisAreaChanged(); - } - } - else + if(pWindow) { VisAreaChanged(); } } + else + { + VisAreaChanged(); + } } void SdrPaintView::VisAreaChanged() |