3 * Copyright (C) 1998, 1999, 2000, 2001 ReactOS Team
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 /* $Id: input.c,v 1.4 2002/09/07 15:12:45 chorns Exp $
21 * PROJECT: ReactOS user32.dll
22 * FILE: lib/user32/windows/input.c
24 * PROGRAMMER: Casper S. Hornstrup (chorns@users.sourceforge.net)
26 * 09-05-2001 CSH Created
29 /* INCLUDES ******************************************************************/
33 /* FUNCTIONS *****************************************************************/
36 ActivateKeyboardLayout(HKL hkl
,
43 BlockInput(WINBOOL fBlockIt
)
49 EnableWindow(HWND hWnd
,
56 GetAsyncKeyState(int vKey
)
62 GetKeyboardLayout(DWORD idThread
)
67 WINBOOL STDCALL
GetInputState(VOID
)
79 GetKeyNameTextA(LONG lParam
,
87 GetKeyNameTextW(LONG lParam
,
95 GetKeyState(int nVirtKey
)
101 GetKeyboardLayoutList(int nBuff
,
108 GetKeyboardLayoutNameA(LPSTR pwszKLID
)
114 GetKeyboardLayoutNameW(LPWSTR pwszKLID
)
120 GetKeyboardState(PBYTE lpKeyState
)
126 GetKeyboardType(int nTypeFlag
)
132 GetLastInputInfo(PLASTINPUTINFO plii
)
138 LoadKeyboardLayoutA(LPCSTR pwszKLID
,
145 LoadKeyboardLayoutW(LPCWSTR pwszKLID
,
152 MapVirtualKeyA(UINT uCode
,
159 MapVirtualKeyExA(UINT uCode
,
167 MapVirtualKeyExW(UINT uCode
,
175 MapVirtualKeyW(UINT uCode
,
182 OemKeyScan(WORD wOemChar
)
188 SetKeyboardState(LPBYTE lpKeyState
)
194 ToAscii(UINT uVirtKey
,
196 CONST PBYTE lpKeyState
,
204 ToAsciiEx(UINT uVirtKey
,
206 CONST PBYTE lpKeyState
,
215 ToUnicode(UINT wVirtKey
,
217 CONST PBYTE lpKeyState
,
226 ToUnicodeEx(UINT wVirtKey
,
228 CONST PBYTE lpKeyState
,
238 UnloadKeyboardLayout(HKL hkl
)
250 VkKeyScanExA(CHAR ch
,
257 VkKeyScanExW(WCHAR ch
,