Changeset 7213 for trunk/src/user32/oslibmsgtranslate.cpp
- Timestamp:
- Oct 26, 2001, 12:11:50 PM (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/user32/oslibmsgtranslate.cpp
r7212 r7213 1 /* $Id: oslibmsgtranslate.cpp,v 1.7 0 2001-10-26 10:03:34phaller Exp $ */1 /* $Id: oslibmsgtranslate.cpp,v 1.71 2001-10-26 10:11:50 phaller Exp $ */ 2 2 /* 3 3 * Window message translation functions for OS/2 … … 42 42 43 43 44 #if REDUNDANT_AND_BUGGY_DEFINITION45 // Formerly used method of translation based on OS/2 VKEY value didn't work46 // right. We need to take a look at the scan code we get from PM and derive47 // the Win32 VKEY and scancode from that because sometimes even the scancode48 // used in Win32 is different from the PM scancode!49 // The format is:50 // Win VKEY, Win scancode, (PM scancode) (key description)51 USHORT pmscan2winkey [][2] = {52 0, 0, // 0x0053 0x1B, 0x01, // 0x01 Esc54 0x31, 0x02, // 0x02 155 0x32, 0x03, // 0x03 256 0x33, 0x04, // 0x04 357 0x34, 0x05, // 0x05 458 0x35, 0x06, // 0x06 559 0x36, 0x07, // 0x07 660 0x37, 0x08, // 0x08 761 0x38, 0x09, // 0x09 862 0x39, 0x0A, // 0x0A 963 0x30, 0x0B, // 0x0B 064 0xBD, 0x0C, // 0x0C -65 0xBB, 0x0D, // 0x0D =66 0x08, 0x0E, // 0x0E Bksp67 0x09, 0x0F, // 0x0F Tab68 0x51, 0x10, // 0x10 q69 0x57, 0x11, // 0x11 w70 0x45, 0x12, // 0x12 e71 0x52, 0x13, // 0x13 r72 0x54, 0x14, // 0x14 t73 0x59, 0x15, // 0x15 y74 0x55, 0x16, // 0x16 u75 0x49, 0x17, // 0x17 i76 0x4F, 0x18, // 0x18 o77 0x50, 0x19, // 0x19 p78 0xDB, 0x1A, // 0x1A [79 0xDD, 0x1B, // 0x1B ]80 0x0D, 0x1C, // 0x1C Enter81 0x11, 0x1D, // 0x1D LCtrl82 0x41, 0x1E, // 0x1E a83 0x53, 0x1F, // 0x1F s84 0x44, 0x20, // 0x20 d85 0x46, 0x21, // 0x21 f86 0x47, 0x22, // 0x22 g87 0x48, 0x23, // 0x23 h88 0x4A, 0x24, // 0x24 j89 0x4B, 0x25, // 0x25 k90 0x4C, 0x26, // 0x26 l91 0xBA, 0x27, // 0x27 ;92 0xDE, 0x28, // 0x28 '93 0xC0, 0x29, // 0x29 `94 VK_LSHIFT_W, 0x2A, // 0x2A LShift95 0xDC, 0x2B, // 0x2B Bkslsh96 0x5A, 0x2C, // 0x2C z97 0x58, 0x2D, // 0x2D x98 0x43, 0x2E, // 0x2E c99 0x56, 0x2F, // 0x2F v100 0x42, 0x30, // 0x30 b101 0x4E, 0x31, // 0x31 n102 0x4D, 0x32, // 0x32 m103 0xBC, 0x33, // 0x33 ,104 0xBE, 0x34, // 0x34 .105 0xBF, 0x35, // 0x35 /106 VK_RSHIFT_W, 0x36, // 0x36 RShift107 0x6A, 0x37, // 0x37 * Pad108 // 0x12, 0x38, // 0x38 LAlt109 VK_LMENU_W, 0x38, // 0x38 LAlt110 0x20, 0x39, // 0x39 Space111 0x14, 0x3A, // 0x3A CapsLk112 0x70, 0x3B, // 0x3B F1113 0x71, 0x3C, // 0x3C F2114 0x72, 0x3D, // 0x3D F3115 0x73, 0x3E, // 0x3E F4116 0x74, 0x3F, // 0x3F F5117 0x75, 0x40, // 0x40 F6118 0x76, 0x41, // 0x41 F7119 0x77, 0x42, // 0x42 F8120 0x78, 0x43, // 0x43 F9121 0x79, 0x44, // 0x44 F10 (?)122 0x90, 0x145, // 0x45 NumLk123 0x91, 0x46, // 0x46 ScrLk124 0x24, 0x47, // 0x47 7 Pad125 0x26, 0x48, // 0x48 8 Pad126 0x21, 0x49, // 0x49 9 Pad127 0x6D, 0x4A, // 0x4A - Pad128 VK_LEFT_W, 0x4B, // 0x4B Left Arrow (depends on NumLock State)129 0x0C, 0x4C, // 0x4C 5 Pad130 0x27, 0x4D, // 0x4D 6 Pad131 0x6B, 0x4E, // 0x4E + Pad132 0x23, 0x4F, // 0x4F 1 Pad133 0x28, 0x50, // 0x50 2 Pad134 0x22, 0x51, // 0x51 3 Pad135 0x2D, 0x52, // 0x52 0 Pad136 0x2E, 0x53, // 0x53 . Pad137 0, 0, // 0x54138 0, 0, // 0x55139 0xe2, 0x56, // 0x56 "<>|"140 0x7A, 0x57, // 0x57 F11141 0x7B, 0x58, // 0x58 F12142 0, 0, // 0x59143 0x0D, 0x11C, // 0x5A Enter Pad144 0x11, 0x11D, // 0x5B RCtrl145 0x6F, 0x135, // 0x5C / Pad146 VK_SNAPSHOT_W, 0x137, // 0x5D PrtSc147 0x12, 0x5E, // 0x5E RAlt148 0x13, 0x45, // 0x5F Pause149 VK_HOME_W, 0x60, // 0x60150 VK_UP_W, 0x61, // 0x61151 VK_PRIOR_W, 0x62, // 0x62152 VK_LEFT_W, 0x63, // 0x63153 VK_RIGHT_W, 0x64, // 0x64154 VK_END_W, 0x65, // 0x65155 VK_DOWN_W, 0x66, // 0x66156 VK_NEXT_W, 0x67, // 0x67157 VK_INSERT_W, 0x68, // 0x68158 VK_DELETE_W, 0x69, // 0x69159 VK_F23_W, 0x6A, // 0x6A160 VK_F24_W, 0x6B, // 0x6B161 0x5D, 0x15D, // 0x6C RWin (PM scan 0x7C)162 0, 0, // 0x6D163 0x5B, 0x15B, // 0x6E LWin (PM scan 0x7E)164 0x5C, 0x15C // 0x6F RMenu? (PM scan 0x7F)165 };166 #endif167 168 44 static BOOL fGenerateDoubleClick = FALSE; 169 45 static MSG doubleClickMsg = {0}; … … 756 632 winMsg->lParam = repeatCount & 0x0FFFF; // bit 0-15, repeatcount 757 633 winMsg->lParam |= (wWinScan & 0x1FF) << 16; // bit 16-23, scancode + bit 15 extended 634 635 // Set the extended bit when appropriate 636 if (fWinExtended) 637 winMsg->lParam = winMsg->lParam | (1<<24); 758 638 } 759 639 … … 763 643 winMsg->wParam = virtualKey + 0x30; 764 644 765 // Set the extended bit when appropriate766 if (isExtended)767 winMsg->lParam = winMsg->lParam | (1<<24);768 645 769 646 if (!(flags & KC_ALT))
Note:
See TracChangeset
for help on using the changeset viewer.