Changeset 364 for trunk/src


Ignore:
Timestamp:
Jul 22, 1999, 3:18:14 PM (26 years ago)
Author:
sandervl
Message:

EB's MapOEMToRealKey fix

File:
1 edited

Legend:

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

    r232 r364  
    1 /* $Id: wndproc.cpp,v 1.13 1999-06-27 21:59:40 sandervl Exp $ */
     1/* $Id: wndproc.cpp,v 1.14 1999-07-22 13:18:14 sandervl Exp $ */
    22
    33/*
     
    257257DWORD MapOEMToRealKey(DWORD wParam, DWORD lParam)
    258258{
    259   switch(wParam) {
    260         case VK_PRIOR:  //page up
    261                 lParam &= 0xFF00FFFF;
    262                 lParam |= 0x00510000;
    263                 break;
    264         case VK_NEXT:   //page down
    265                 lParam &= 0xFF00FFFF;
    266                 lParam |= 0x00490000;
    267                 break;
    268         case VK_END:
    269                 lParam &= 0xFF00FFFF;
    270                 lParam |= 0x004F0000;
    271                 break;
    272         case VK_HOME:
    273                 lParam &= 0xFF00FFFF;
    274                 lParam |= 0x00470000;
    275                 break;
    276         case VK_UP:
    277                 lParam &= 0xFF00FFFF;
    278                 lParam |= 0x00480000;
    279                 break;
    280         case VK_LEFT:
    281                 lParam &= 0xFF00FFFF;
    282                 lParam |= 0x004B0000;
    283                 break;
    284         case VK_DOWN:
    285                 lParam &= 0xFF00FFFF;
    286                 lParam |= 0x00500000;
    287                 break;
    288         case VK_RIGHT:
    289                 lParam &= 0xFF00FFFF;
    290                 lParam |= 0x004D0000;
    291                 break;
    292         case VK_DELETE:
    293                 lParam &= 0xFF00FFFF;
    294                 lParam |= 0x00530000;
    295                 break;
    296         case VK_INSERT:
    297                 lParam &= 0xFF00FFFF;
    298                 lParam |= 0x00520000;
    299                 break;
     259  switch((UCHAR)(lParam >> 16)) {
     260        case 0x60: // VK_HOME
     261          lParam &= 0xFF00FFFF;
     262          lParam |= 0x00470000;
     263          break;
     264        case 0x61: // VK_UP
     265          lParam &= 0xFF00FFFF;
     266          lParam |= 0x00480000;
     267          break;
     268        case 0x62: // VK_PRIOR  //page up
     269          lParam &= 0xFF00FFFF;
     270          lParam |= 0x00490000;
     271          break;
     272        case 0x63: // VK_LEFT
     273          lParam &= 0xFF00FFFF;
     274          lParam |= 0x004B0000;
     275          break;
     276        case 0x64: // VK_RIGHT
     277          lParam &= 0xFF00FFFF;
     278          lParam |= 0x004D0000;
     279          break;
     280        case 0x65: // VK_END
     281          lParam &= 0xFF00FFFF;
     282          lParam |= 0x004F0000;
     283          break;
     284        case 0x66: // VK_DOWN:
     285          lParam &= 0xFF00FFFF;
     286          lParam |= 0x00500000;
     287          break;
     288        case 0x67: // VK_NEXT  //page down
     289          lParam &= 0xFF00FFFF;
     290          lParam |= 0x00510000;
     291          break;
     292        case 0x68: // VK_INSERT
     293          lParam &= 0xFF00FFFF;
     294          lParam |= 0x00520000;
     295          break;
     296        case 0x69: // VK_DELETE
     297          lParam &= 0xFF00FFFF;
     298          lParam |= 0x00530000;
     299          break;
    300300  }
    301301  return(lParam);
     
    411411LRESULT EXPENTRY Win32ToOS2Callback(HWND hwnd, UINT Msg, WPARAM wParam, LPARAM lParam)
    412412{
     413 LRESULT rc;
     414
    413415  Win32WindowProc *curwnd = Win32WindowProc::FindProc(hwnd);
    414416  if(curwnd && curwnd->pOS2Callback) {
    415         return curwnd->pOS2Callback(hwnd, Msg, wParam, lParam);
     417        RestoreOS2TIB();       
     418        rc = curwnd->pOS2Callback(hwnd, Msg, wParam, lParam);
     419        SetWin32TIB();
     420        return rc;     
    416421  }
    417422  else  DebugInt3();
Note: See TracChangeset for help on using the changeset viewer.