From a40f12c3f18e4262336fcd51d26dd099eae1e070 Mon Sep 17 00:00:00 2001 From: Dmitriy Shilin Date: Sun, 13 Jan 2019 05:37:12 -0800 Subject: tdf#107792 vcl/win: introduce ScopedSelectedHBRUSH Change-Id: I39792ce8442f9e7776b44a489b3c15b908e2f773 Reviewed-on: https://gerrit.libreoffice.org/66253 Tested-by: Jenkins Reviewed-by: Mike Kaganski --- vcl/win/gdi/gdiimpl.cxx | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) (limited to 'vcl/win/gdi/gdiimpl.cxx') diff --git a/vcl/win/gdi/gdiimpl.cxx b/vcl/win/gdi/gdiimpl.cxx index 3b209075defc..e5013631d9ed 100644 --- a/vcl/win/gdi/gdiimpl.cxx +++ b/vcl/win/gdi/gdiimpl.cxx @@ -778,10 +778,9 @@ void WinSalGraphicsImpl::drawMask(const SalTwoRect& rPosAry, SalTwoRect aPosAry = rPosAry; const HDC hDC = mrParent.getHDC(); - ScopedHBRUSH hMaskBrush(CreateSolidBrush(RGB(nMaskColor.GetRed(), - nMaskColor.GetGreen(), - nMaskColor.GetBlue()))); - HBRUSH hOldBrush = SelectBrush(hDC, hMaskBrush.get()); + ScopedSelectedHBRUSH(hDC, CreateSolidBrush(RGB(nMaskColor.GetRed(), + nMaskColor.GetGreen(), + nMaskColor.GetBlue()))); // WIN/WNT seems to have a minor problem mapping the correct color of the // mask to the palette if we draw the DIB directly ==> draw DDB @@ -794,8 +793,6 @@ void WinSalGraphicsImpl::drawMask(const SalTwoRect& rPosAry, } else ImplDrawBitmap( hDC, aPosAry, rSalBitmap, false, 0x00B8074AUL ); - - SelectBrush(hDC, hOldBrush); } std::shared_ptr WinSalGraphicsImpl::getBitmap( long nX, long nY, long nDX, long nDY ) @@ -1574,10 +1571,8 @@ void WinSalGraphicsImpl::DrawPixelImpl( long nX, long nY, COLORREF crColor ) return; } - ScopedHBRUSH hBrush(CreateSolidBrush(crColor)); - HBRUSH hOldBrush = SelectBrush(hDC, hBrush.get()); + ScopedSelectedHBRUSH(hDC, CreateSolidBrush(crColor)); PatBlt(hDC, static_cast(nX), static_cast(nY), int(1), int(1), PATINVERT); - SelectBrush(hDC, hOldBrush); } void WinSalGraphicsImpl::drawPixel( long nX, long nY ) -- cgit