vcl/source/window/window2.cxx | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-)
New commits: commit 8f542a605baec0b777effbb3e6666eff09a09a28 Author: Chris Sherlock <[email protected]> Date: Mon Feb 3 22:53:05 2014 +1100 fdo#74424 Use Window::GetOutDev() to access ImplDrawFrameDev() Part of the decoupling of Window from OutputDevice. We now get the Window's OutputDevice instance and manipulate this. Do not rely on the inherited function. Change-Id: Ie1381b06b940f9220ee77606f9882aa7a4ea1381 Reviewed-on: https://gerrit.libreoffice.org/7808 Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Caolán McNamara <[email protected]> diff --git a/vcl/source/window/window2.cxx b/vcl/source/window/window2.cxx index ba9976b..e407bcf 100644 --- a/vcl/source/window/window2.cxx +++ b/vcl/source/window/window2.cxx @@ -173,9 +173,11 @@ void Window::ImplSaveOverlapBackground() mpWindowImpl->mpOverlapData->mnSaveBackSize = nSaveBackSize; mpWindowImpl->mpFrameData->mnAllSaveBackSize += nSaveBackSize; Point aDevPt; - mpWindowImpl->mpFrameWindow->ImplGetFrameDev( Point( mnOutOffX, mnOutOffY ), - aDevPt, aOutSize, - *(mpWindowImpl->mpOverlapData->mpSaveBackDev) ); + + OutputDevice *pOutDev = mpWindowImpl->mpFrameWindow->GetOutDev(); + pOutDev->ImplGetFrameDev( Point( mnOutOffX, mnOutOffY ), + aDevPt, aOutSize, + *(mpWindowImpl->mpOverlapData->mpSaveBackDev) ); mpWindowImpl->mpOverlapData->mpNextBackWin = mpWindowImpl->mpFrameData->mpFirstBackWin; mpWindowImpl->mpFrameData->mpFirstBackWin = this; } @@ -203,20 +205,23 @@ sal_Bool Window::ImplRestoreOverlapBackground( Region& rInvRegion ) Point aDevPt; Point aDestPt( mnOutOffX, mnOutOffY ); Size aDevSize = mpWindowImpl->mpOverlapData->mpSaveBackDev->GetOutputSizePixel(); + + OutputDevice *pOutDev = mpWindowImpl->mpFrameWindow->GetOutDev(); + if ( mpWindowImpl->mpOverlapData->mpSaveBackRgn ) { mpWindowImpl->mpOverlapData->mpSaveBackRgn->Intersect( mpWindowImpl->maWinClipRegion ); rInvRegion = mpWindowImpl->maWinClipRegion; rInvRegion.Exclude( *mpWindowImpl->mpOverlapData->mpSaveBackRgn ); - mpWindowImpl->mpFrameWindow->ImplDrawFrameDev( aDestPt, aDevPt, aDevSize, - *(mpWindowImpl->mpOverlapData->mpSaveBackDev), - *mpWindowImpl->mpOverlapData->mpSaveBackRgn ); + pOutDev->ImplDrawFrameDev( aDestPt, aDevPt, aDevSize, + *(mpWindowImpl->mpOverlapData->mpSaveBackDev), + *mpWindowImpl->mpOverlapData->mpSaveBackRgn ); } else { - mpWindowImpl->mpFrameWindow->ImplDrawFrameDev( aDestPt, aDevPt, aDevSize, - *(mpWindowImpl->mpOverlapData->mpSaveBackDev), - mpWindowImpl->maWinClipRegion ); + pOutDev->ImplDrawFrameDev( aDestPt, aDevPt, aDevSize, + *(mpWindowImpl->mpOverlapData->mpSaveBackDev), + mpWindowImpl->maWinClipRegion ); } ImplDeleteOverlapBackground(); }
_______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
