Handle wParam in WM_PAINT properly: if non-null, it is the hdc we are
supposed to use to draw into.
This commit is contained in:
parent
8e276da00f
commit
b1d65cb15d
|
@ -3077,7 +3077,7 @@ static BOOL PROPSHEET_DoCommand(HWND hwnd, WORD wID)
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
* PROPSHEET_Paint
|
* PROPSHEET_Paint
|
||||||
*/
|
*/
|
||||||
static LRESULT PROPSHEET_Paint(HWND hwnd)
|
static LRESULT PROPSHEET_Paint(HWND hwnd, HDC hdcParam)
|
||||||
{
|
{
|
||||||
PropSheetInfo* psInfo = (PropSheetInfo*) GetPropW(hwnd, PropSheetInfoStr);
|
PropSheetInfo* psInfo = (PropSheetInfo*) GetPropW(hwnd, PropSheetInfoStr);
|
||||||
PAINTSTRUCT ps;
|
PAINTSTRUCT ps;
|
||||||
|
@ -3092,7 +3092,7 @@ static LRESULT PROPSHEET_Paint(HWND hwnd)
|
||||||
WCHAR szBuffer[256];
|
WCHAR szBuffer[256];
|
||||||
int nLength;
|
int nLength;
|
||||||
|
|
||||||
hdc = BeginPaint(hwnd, &ps);
|
hdc = hdcParam ? hdcParam : BeginPaint(hwnd, &ps);
|
||||||
if (!hdc) return 1;
|
if (!hdc) return 1;
|
||||||
|
|
||||||
hdcSrc = CreateCompatibleDC(0);
|
hdcSrc = CreateCompatibleDC(0);
|
||||||
|
@ -3266,7 +3266,7 @@ static LRESULT PROPSHEET_Paint(HWND hwnd)
|
||||||
|
|
||||||
DeleteDC(hdcSrc);
|
DeleteDC(hdcSrc);
|
||||||
|
|
||||||
EndPaint(hwnd, &ps);
|
if (!hdcParam) EndPaint(hwnd, &ps);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -3396,7 +3396,7 @@ PROPSHEET_DialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
}
|
}
|
||||||
|
|
||||||
case WM_PAINT:
|
case WM_PAINT:
|
||||||
PROPSHEET_Paint(hwnd);
|
PROPSHEET_Paint(hwnd, (HDC)wParam);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
case WM_DESTROY:
|
case WM_DESTROY:
|
||||||
|
|
|
@ -879,13 +879,14 @@ static LRESULT SYSLINK_Draw (SYSLINK_INFO *infoPtr, HDC hdc)
|
||||||
* SYSLINK_Paint
|
* SYSLINK_Paint
|
||||||
* Handles the WM_PAINT message.
|
* Handles the WM_PAINT message.
|
||||||
*/
|
*/
|
||||||
static LRESULT SYSLINK_Paint (SYSLINK_INFO *infoPtr)
|
static LRESULT SYSLINK_Paint (SYSLINK_INFO *infoPtr, HDC hdcParam)
|
||||||
{
|
{
|
||||||
HDC hdc;
|
HDC hdc;
|
||||||
PAINTSTRUCT ps;
|
PAINTSTRUCT ps;
|
||||||
hdc = BeginPaint (infoPtr->Self, &ps);
|
|
||||||
|
hdc = hdcParam ? hdcParam : BeginPaint (infoPtr->Self, &ps);
|
||||||
SYSLINK_Draw (infoPtr, hdc);
|
SYSLINK_Draw (infoPtr, hdc);
|
||||||
EndPaint (infoPtr->Self, &ps);
|
if (!hdcParam) EndPaint (infoPtr->Self, &ps);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1466,7 +1467,7 @@ static LRESULT WINAPI SysLinkWindowProc(HWND hwnd, UINT message,
|
||||||
|
|
||||||
switch(message) {
|
switch(message) {
|
||||||
case WM_PAINT:
|
case WM_PAINT:
|
||||||
return SYSLINK_Paint (infoPtr);
|
return SYSLINK_Paint (infoPtr, (HDC)wParam);
|
||||||
|
|
||||||
case WM_SETCURSOR:
|
case WM_SETCURSOR:
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue