Ignore:
Timestamp:
Jan 12, 2000, 6:37:29 PM (26 years ago)
Author:
cbratschi
Message:

fixed WM_CALCVALIDRECTS, added region for WM_NCPAINT

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/new/pmwindow.cpp

    r2415 r2421  
    1 /* $Id: pmwindow.cpp,v 1.36 2000-01-12 12:40:46 sandervl Exp $ */
     1/* $Id: pmwindow.cpp,v 1.37 2000-01-12 17:37:29 cbratschi Exp $ */
    22/*
    33 * Win32 Window Managment Code for OS/2
     
    297297    case WM_CALCVALIDRECTS:
    298298    {
    299         dprintf(("OS2: WM_CALCVALIDRECTS"));
    300         goto RunDefWndProc;
     299      PRECTL oldRect = (PRECTL)mp1,newRect = oldRect+1;
     300      UINT res = CVR_ALIGNLEFT | CVR_ALIGNTOP;
     301
     302//CB: todo: use WM_NCCALCSIZE result
     303      if (win32wnd->getWindowClass())
     304      {
     305        DWORD dwStyle = win32wnd->getWindowClass()->getClassLongA(GCL_STYLE_W);
     306
     307        if ((dwStyle & CS_HREDRAW_W) && (newRect->xRight-newRect->xLeft != oldRect->xRight-oldRect->xLeft))
     308          res |= CVR_REDRAW;
     309        else if ((dwStyle & CS_VREDRAW_W) && (newRect->yTop-newRect->yBottom != oldRect->yTop-oldRect->yBottom))
     310          res |= CVR_REDRAW;
     311      } else res |= CVR_REDRAW;
     312
     313      RestoreOS2TIB();
     314      WinDefWindowProc(hwnd,msg,mp1,mp2);
     315      RestoreOS2TIB();
     316      return (MRESULT)res;
    301317    }
    302318
Note: See TracChangeset for help on using the changeset viewer.