diff --git a/packages/graph/src/ptcgraph/ptccrt.pp b/packages/graph/src/ptcgraph/ptccrt.pp index 65c478f891..f579a88073 100644 --- a/packages/graph/src/ptcgraph/ptccrt.pp +++ b/packages/graph/src/ptcgraph/ptccrt.pp @@ -419,6 +419,10 @@ begin KeyBufAdd(#0#78) else if KeyMode = kmGO32 then KeyBufAdd(#0#144); + PTCKEY_CLEAR, + PTCKEY_NUMPAD5: + if KeyMode in [kmGO32, kmFPWINCRT] then + KeyBufAdd(#0#143); end; end else @@ -493,6 +497,9 @@ begin PTCKEY_END: KeyBufAdd(#0#79); PTCKEY_PAGEUP: KeyBufAdd(#0#73); PTCKEY_PAGEDOWN: KeyBufAdd(#0#81); + PTCKEY_CLEAR: + if KeyMode in [kmGO32, kmFPWINCRT] then + KeyBufAdd(#0#76); else if (KeyEv.Unicode >= 32) and (KeyEv.Unicode <= 127) then KeyBufAdd(Chr(KeyEv.Unicode)); diff --git a/packages/ptc/src/win32/base/win32kbd.inc b/packages/ptc/src/win32/base/win32kbd.inc index 6b5c648f9a..73eba3c7b1 100644 --- a/packages/ptc/src/win32/base/win32kbd.inc +++ b/packages/ptc/src/win32/base/win32kbd.inc @@ -223,6 +223,18 @@ begin KeyCode := PTCKEY_COMMA; if wParam = VK_OEM_PERIOD then KeyCode := PTCKEY_PERIOD; + if wParam = VK_OEM_PLUS then + KeyCode := PTCKEY_EQUALS; + if wParam = VK_OEM_4 then + KeyCode := PTCKEY_OPENBRACKET; + if wParam = VK_OEM_6 then + KeyCode := PTCKEY_CLOSEBRACKET; + if wParam = VK_OEM_5 then + KeyCode := PTCKEY_BACKSLASH; + if wParam = VK_OEM_1 then + KeyCode := PTCKEY_SEMICOLON; + if wParam = VK_OEM_2 then + KeyCode := PTCKEY_SLASH; { handle key repeat count } for i := 1 to lParam and $FFFF do