Kaydet (Commit) 53a29871 authored tarafından Dmitriy Shilin's avatar Dmitriy Shilin Kaydeden (comit) Mike Kaganski

tdf#39593 vcl/win/gdi: extract pen resetting into method

Change-Id: I5abb3ed26376b38b2469f124d2ac1864083a09ef
Reviewed-on: https://gerrit.libreoffice.org/64801
Tested-by: Jenkins
Reviewed-by: 's avatarMike Kaganski <mike.kaganski@collabora.com>
üst 5743e432
...@@ -1354,21 +1354,9 @@ bool WinSalGraphicsImpl::setClipRegion( const vcl::Region& i_rClip ) ...@@ -1354,21 +1354,9 @@ bool WinSalGraphicsImpl::setClipRegion( const vcl::Region& i_rClip )
void WinSalGraphicsImpl::SetLineColor() void WinSalGraphicsImpl::SetLineColor()
{ {
// create and select new pen ResetPen(GetStockPen(NULL_PEN));
HPEN hNewPen = GetStockPen( NULL_PEN );
HPEN hOldPen = SelectPen( mrParent.getHDC(), hNewPen );
// destroy or save old pen
if ( mhPen )
{
if ( !mbStockPen )
DeletePen( mhPen );
}
else
mrParent.mhDefPen = hOldPen;
// set new data // set new data
mhPen = hNewPen;
mbPen = FALSE; mbPen = FALSE;
mbStockPen = TRUE; mbStockPen = TRUE;
} }
...@@ -1411,23 +1399,31 @@ void WinSalGraphicsImpl::SetLineColor( Color nColor ) ...@@ -1411,23 +1399,31 @@ void WinSalGraphicsImpl::SetLineColor( Color nColor )
bStockPen = FALSE; bStockPen = FALSE;
} }
// select new pen ResetPen(hNewPen);
HPEN hOldPen = SelectPen( mrParent.getHDC(), hNewPen );
// destroy or save old pen // set new data
if ( mhPen ) mnPenColor = nPenColor;
mbPen = TRUE;
mbStockPen = bStockPen;
}
void WinSalGraphicsImpl::ResetPen(HPEN hNewPen)
{
HPEN hOldPen = SelectPen(mrParent.getHDC(), hNewPen);
if (mhPen)
{ {
if ( !mbStockPen ) if (!mbStockPen)
DeletePen( mhPen ); {
DeletePen(mhPen);
}
} }
else else
{
mrParent.mhDefPen = hOldPen; mrParent.mhDefPen = hOldPen;
}
// set new data mhPen = hNewPen;
mnPenColor = nPenColor;
mhPen = hNewPen;
mbPen = TRUE;
mbStockPen = bStockPen;
} }
void WinSalGraphicsImpl::SetFillColor() void WinSalGraphicsImpl::SetFillColor()
......
...@@ -52,6 +52,7 @@ private: ...@@ -52,6 +52,7 @@ private:
bool tryDrawBitmapGdiPlus(const SalTwoRect& rTR, const SalBitmap& rSrcBitmap); bool tryDrawBitmapGdiPlus(const SalTwoRect& rTR, const SalBitmap& rSrcBitmap);
void drawPixelImpl( long nX, long nY, COLORREF crColor ); void drawPixelImpl( long nX, long nY, COLORREF crColor );
void ResetPen(HPEN hNewPen);
public: public:
explicit WinSalGraphicsImpl(WinSalGraphics& rParent); explicit WinSalGraphicsImpl(WinSalGraphics& rParent);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment