diff --git a/dlls/comctl32/monthcal.c b/dlls/comctl32/monthcal.c index 8440e15a095..67a03632960 100644 --- a/dlls/comctl32/monthcal.c +++ b/dlls/comctl32/monthcal.c @@ -2122,6 +2122,23 @@ MONTHCAL_EraseBkgnd(const MONTHCAL_INFO *infoPtr, HDC hdc) return TRUE; } +static LRESULT +MONTHCAL_PrintClient(MONTHCAL_INFO *infoPtr, HDC hdc, DWORD options) +{ + FIXME("Partial Stub: (hdc=%p options=0x%08x)\n", hdc, options); + + if ((options & PRF_CHECKVISIBLE) && !IsWindowVisible(infoPtr->hwndSelf)) + return 0; + + if (options & PRF_ERASEBKGND) + MONTHCAL_EraseBkgnd(infoPtr, hdc); + + if (options & PRF_CLIENT) + MONTHCAL_Paint(infoPtr, hdc); + + return 0; +} + static LRESULT MONTHCAL_SetFocus(const MONTHCAL_INFO *infoPtr) { @@ -2534,10 +2551,12 @@ MONTHCAL_WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) case WM_LBUTTONUP: return MONTHCAL_LButtonUp(infoPtr, lParam); - case WM_PRINTCLIENT: case WM_PAINT: return MONTHCAL_Paint(infoPtr, (HDC)wParam); + case WM_PRINTCLIENT: + return MONTHCAL_PrintClient(infoPtr, (HDC)wParam, (DWORD)lParam); + case WM_ERASEBKGND: return MONTHCAL_EraseBkgnd(infoPtr, (HDC)wParam);