Module: wine Branch: master Commit: 3cd145f63f0ba15726b32c6be800460e3aef84e4 URL: http://source.winehq.org/git/wine.git/?a=commit;h=3cd145f63f0ba15726b32c6be8...
Author: Huw Davies huw@codeweavers.com Date: Wed Oct 29 09:09:08 2014 +0000
user32: Merge the blitting of the centred and non-centred cases.
---
dlls/user32/static.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-)
diff --git a/dlls/user32/static.c b/dlls/user32/static.c index f4b5880..ff5c77c 100644 --- a/dlls/user32/static.c +++ b/dlls/user32/static.c @@ -775,19 +775,15 @@ static void STATIC_PaintBitmapfn(HWND hwnd, HDC hdc, DWORD style ) GetClientRect(hwnd, &rcClient); if (style & SS_CENTERIMAGE) { - INT x, y; - x = (rcClient.right - rcClient.left)/2 - bm.bmWidth/2; - y = (rcClient.bottom - rcClient.top)/2 - bm.bmHeight/2; FillRect( hdc, &rcClient, hbrush ); - BitBlt(hdc, x, y, bm.bmWidth, bm.bmHeight, hMemDC, 0, 0, - SRCCOPY); - } - else - { - StretchBlt(hdc, 0, 0, rcClient.right - rcClient.left, - rcClient.bottom - rcClient.top, hMemDC, - 0, 0, bm.bmWidth, bm.bmHeight, SRCCOPY); + rcClient.left = (rcClient.right - rcClient.left)/2 - bm.bmWidth/2; + rcClient.top = (rcClient.bottom - rcClient.top)/2 - bm.bmHeight/2; + rcClient.right = rcClient.left + bm.bmWidth; + rcClient.bottom = rcClient.top + bm.bmHeight; } + StretchBlt(hdc, rcClient.left, rcClient.top, rcClient.right - rcClient.left, + rcClient.bottom - rcClient.top, hMemDC, + 0, 0, bm.bmWidth, bm.bmHeight, SRCCOPY); SelectObject(hMemDC, oldbitmap); DeleteDC(hMemDC); }