Changeset 7620 for trunk/src/user32/oslibmsgtranslate.cpp
- Timestamp:
- Dec 12, 2001, 5:40:45 PM (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/user32/oslibmsgtranslate.cpp
r7612 r7620 1 /* $Id: oslibmsgtranslate.cpp,v 1.7 8 2001-12-11 17:34:53 sandervl Exp $ */1 /* $Id: oslibmsgtranslate.cpp,v 1.79 2001-12-12 16:40:43 sandervl Exp $ */ 2 2 /* 3 3 * Window message translation functions for OS/2 … … 557 557 USHORT scanCode=0; 558 558 ULONG flags = SHORT1FROMMP(os2Msg->mp1); 559 BOOL keyWasPressed , isExtended = FALSE;559 BOOL keyWasPressed; 560 560 char c; 561 561 USHORT usPMScanCode = CHAR4FROMMP(os2Msg->mp1); 562 562 563 teb->o.odin.fTranslated = FALSE;564 repeatCount = CHAR3FROMMP(os2Msg->mp1);565 scanCode = CHAR4FROMMP(os2Msg->mp1);566 keyWasPressed = ((SHORT1FROMMP (os2Msg->mp1) & KC_PREVDOWN) == KC_PREVDOWN);563 teb->o.odin.fTranslated = FALSE; 564 repeatCount = CHAR3FROMMP(os2Msg->mp1); 565 scanCode = CHAR4FROMMP(os2Msg->mp1); 566 keyWasPressed = ((SHORT1FROMMP (os2Msg->mp1) & KC_PREVDOWN) == KC_PREVDOWN); 567 567 568 568 dprintf(("PM: WM_CHAR: %x %x rep=%d scancode=%x", SHORT1FROMMP(os2Msg->mp2), SHORT2FROMMP(os2Msg->mp2), repeatCount, scanCode)); 569 569 dprintf(("PM: WM_CHAR: hwnd %x flags %x mp1 %x, mp2 %x, time=%08xh", win32wnd->getWindowHandle(), flags, os2Msg->mp1, os2Msg->mp2, os2Msg->time)); 570 570 571 // vitali add begin572 if ( ( SHORT1FROMMP(os2Msg->mp2) & 0x0FF ) == 0x0E0 )573 {574 // an extended key ( arrows, ins, del and so on )575 // get "virtual" scancode from character code because576 // for "regular" keys they are equal577 if(!(flags & (KC_SHIFT|KC_ALT|KC_CTRL))) {578 scanCode = ( SHORT1FROMMP(os2Msg->mp2) >> 8) & 0x0FF;579 }580 isExtended = TRUE;581 }582 // vitali add end583 584 // both WM_KEYUP & WM_KEYDOWN want a virtual key, find the right Win32 virtual key585 // given the OS/2 virtual key and OS/2 character586 587 //if (((SHORT1FROMMP (mp1) & KC_CHAR) == KC_CHAR) ||588 // ((SHORT1FROMMP (mp1) & KC_LONEKEY) == KC_LONEKEY))589 c = 0;590 if ((SHORT1FROMMP (os2Msg->mp1) & 0xFF) != 0)591 {592 c = SHORT1FROMMP (os2Msg->mp2);593 if ((c >= 'A') && (c <= 'Z')) {594 virtualKey = c;595 goto VirtualKeyFound;596 }597 if ((c >='a') && (c <= 'z')) {598 virtualKey = c - 32; // make it uppercase599 goto VirtualKeyFound;600 }601 if ((c >= '0') && (c <= '9')) {602 virtualKey = c;603 goto VirtualKeyFound;604 }605 }606 607 VirtualKeyFound:608 // dprintf (("VIRTUALKEYFOUND:(%x)", virtualKey));609 610 // @@@PH: what's this supposed to be?611 // Adjust PM scancodes for Win* keys612 if (scanCode >= 0x70)613 scanCode -= 0x10;614 // winMsg->wParam = pmscan2winkey[scanCode][0];615 // wWinScan = pmscan2winkey[scanCode][1];616 617 {618 571 BOOL fWinExtended; 619 572 BYTE bWinVKey; … … 633 586 if (fWinExtended) 634 587 winMsg->lParam = winMsg->lParam | WIN_KEY_EXTENDED; 635 } 636 588 589 #if 0 590 //TODO 637 591 // Adjust VKEY value for pad digits if NumLock is on 638 592 if ((scanCode >= 0x47) && (scanCode <= 0x53) && 639 593 (virtualKey >= 0x30) && (virtualKey >= 39)) 640 594 winMsg->wParam = virtualKey + 0x30; 641 595 #endif 642 596 643 597 #ifdef ALTGR_HACK
Note:
See TracChangeset
for help on using the changeset viewer.