mirror of
https://github.com/reactos/reactos.git
synced 2025-06-14 07:08:30 +00:00
[UXTHEME] Apply Wine commit c6b4b4b by Mark Harmstone: Fix colour errors in UXTHEME_StretchBlt.
svn path=/trunk/; revision=67405
This commit is contained in:
parent
a3a21c0bcf
commit
e21ccdffe2
1 changed files with 16 additions and 5 deletions
|
@ -274,22 +274,33 @@ static inline BOOL UXTHEME_StretchBlt(HDC hdcDst, int nXOriginDst, int nYOriginD
|
||||||
255, /* SourceConstantAlpha */
|
255, /* SourceConstantAlpha */
|
||||||
AC_SRC_ALPHA /* AlphaFormat */
|
AC_SRC_ALPHA /* AlphaFormat */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
BOOL ret = TRUE;
|
||||||
|
int old_stretch_mode;
|
||||||
|
POINT old_brush_org;
|
||||||
|
|
||||||
|
old_stretch_mode = SetStretchBltMode(hdcDst, HALFTONE);
|
||||||
|
SetBrushOrgEx(hdcDst, nXOriginDst, nYOriginDst, &old_brush_org);
|
||||||
|
|
||||||
if (transparent == ALPHABLEND_BINARY) {
|
if (transparent == ALPHABLEND_BINARY) {
|
||||||
/* Ensure we don't pass any negative values to TransparentBlt */
|
/* Ensure we don't pass any negative values to TransparentBlt */
|
||||||
return TransparentBlt(hdcDst, nXOriginDst, nYOriginDst, abs(nWidthDst), abs(nHeightDst),
|
ret = TransparentBlt(hdcDst, nXOriginDst, nYOriginDst, abs(nWidthDst), abs(nHeightDst),
|
||||||
hdcSrc, nXOriginSrc, nYOriginSrc, abs(nWidthSrc), abs(nHeightSrc),
|
hdcSrc, nXOriginSrc, nYOriginSrc, abs(nWidthSrc), abs(nHeightSrc),
|
||||||
transcolor);
|
transcolor);
|
||||||
}
|
} else if ((transparent == ALPHABLEND_NONE) ||
|
||||||
if ((transparent == ALPHABLEND_NONE) ||
|
|
||||||
!AlphaBlend(hdcDst, nXOriginDst, nYOriginDst, nWidthDst, nHeightDst,
|
!AlphaBlend(hdcDst, nXOriginDst, nYOriginDst, nWidthDst, nHeightDst,
|
||||||
hdcSrc, nXOriginSrc, nYOriginSrc, nWidthSrc, nHeightSrc,
|
hdcSrc, nXOriginSrc, nYOriginSrc, nWidthSrc, nHeightSrc,
|
||||||
blendFunc))
|
blendFunc))
|
||||||
{
|
{
|
||||||
return StretchBlt(hdcDst, nXOriginDst, nYOriginDst, nWidthDst, nHeightDst,
|
ret = StretchBlt(hdcDst, nXOriginDst, nYOriginDst, nWidthDst, nHeightDst,
|
||||||
hdcSrc, nXOriginSrc, nYOriginSrc, nWidthSrc, nHeightSrc,
|
hdcSrc, nXOriginSrc, nYOriginSrc, nWidthSrc, nHeightSrc,
|
||||||
SRCCOPY);
|
SRCCOPY);
|
||||||
}
|
}
|
||||||
return TRUE;
|
|
||||||
|
SetBrushOrgEx(hdcDst, old_brush_org.x, old_brush_org.y, NULL);
|
||||||
|
SetStretchBltMode(hdcDst, old_stretch_mode);
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue