Ignore:
Timestamp:
Dec 29, 1999, 11:54:04 PM (26 years ago)
Author:
cbratschi
Message:

new mapping functions, fixed 1 pixel and window handle bugs

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/window.cpp

    r2211 r2257  
    1 /* $Id: window.cpp,v 1.45 1999-12-27 17:08:09 cbratschi Exp $ */
     1/* $Id: window.cpp,v 1.46 1999-12-29 22:54:04 cbratschi Exp $ */
    22/*
    33 * Win32 window apis for OS/2
     
    847847    dprintf(("USER32: MapWindowPoints %x to %x (%d,%d) (%d)", hwndFrom, hwndTo, lpPoints->x, lpPoints->y, cPoints));
    848848    point.x = lpPoints->x;
    849     point.y = wndfrom->getWindowHeight()-1-lpPoints->y;
    850 
    851     OSLibWinMapWindowPoints(wndfrom->getOS2WindowHandle(), wndto->getOS2WindowHandle(), &point, 1);
    852     point.y = wndto->getWindowHeight()-1-point.y;
     849    point.y = lpPoints->y;
     850    if (!mapWin32Point(wndfrom,wndto,&point))
     851    {
     852      SetLastError(ERROR_INVALID_WINDOW_HANDLE);
     853      return 0;
     854    }
    853855
    854856    short int xinc = point.x - lpPoints->x;
     
    875877    wnd = Win32BaseWindow::GetWindowFromHandle (hwnd);
    876878    if (!wnd) return (TRUE);
    877 
    878     rcl   = wnd->getClientRect();
    879     pt->y = ScreenHeight - pt->y;
    880     OSLibWinMapWindowPoints (OSLIB_HWND_DESKTOP, wnd->getOS2WindowHandle(), (OSLIBPOINT *)pt, 1);
    881     pt->y = (rcl->bottom - rcl->top) - pt->y;
    882     dprintf(("ScreenToClient %x returned (%d,%d)\n", hwnd, pt->x, pt->y));
    883     return (TRUE);
     879    return mapWin32Point(OSLIB_HWND_DESKTOP,wnd->getOS2WindowHandle(),(OSLIBPOINT*)pt);
    884880}
    885881//******************************************************************************
     
    10041000        return (FALSE);
    10051001    }
    1006 
    1007     rcl  = wnd->getClientRect();
    1008     pt->y = (rcl->bottom - rcl->top) - pt->y;
    1009     OSLibWinMapWindowPoints (wnd->getOS2WindowHandle(), OSLIB_HWND_DESKTOP, (OSLIBPOINT *)pt, 1);
    1010     pt->y = ScreenHeight - pt->y;
    1011     dprintf(("ClientToScreen returned (%d,%d)\n", pt->x, pt->y));
    1012     return (TRUE);
     1002    return mapWin32Point(wnd->getOS2WindowHandle(),OSLIB_HWND_DESKTOP,(OSLIBPOINT*)pt);
    10131003}
    10141004//******************************************************************************
     
    12631253
    12641254    wPoint.x = point.x;
    1265     wPoint.y = windowDesktop->getWindowHeight() - point.y;
     1255    wPoint.y = mapScreenY(point.y);
    12661256
    12671257    hwndOS2 = OSLibWinWindowFromPoint(OSLIB_HWND_DESKTOP, (PVOID)&wPoint);
Note: See TracChangeset for help on using the changeset viewer.