ReactOS 0.4.17-dev-1321-g5c122a9
kbd.h File Reference

Go to the source code of this file.

Classes

struct  _VK_TO_BIT
 
struct  _MODIFIERS
 
struct  _VK_TO_WCHAR_TABLE
 
struct  _DEADKEY
 
struct  _VSC_LPWSTR
 
struct  _VSC_VK
 
struct  _KBDTABLES
 
struct  tagKBDTABLE_DESC
 
struct  tagKBDTABLE_MULTI
 
struct  _VK_FUNCTION_PARAM
 
struct  _VK_TO_FUNCTION_TABLE
 
struct  tagKbdNlsLayer
 
struct  tagKBDTABLES_FE
 

Macros

#define KBD_LONG_POINTER
 
#define KBD_PTR(T)   T
 
#define KBD_P(x)   (x)
 
#define KBDEXT   0x100 /* Extended key code */
 
#define KBDMULTIVK   0x200 /* Multi-key */
 
#define KBDSPECIAL   0x400 /* Special key */
 
#define KBDNUMPAD   0x800 /* Number-pad */
 
#define KBDSHIFT   0x001 /* Shift modifier */
 
#define KBDCTRL   0x002 /* Ctrl modifier */
 
#define KBDALT   0x004 /* Alt modifier */
 
#define SHFT_INVALID   0x0F
 
#define TYPEDEF_VK_TO_WCHARS(i)
 
#define DKF_DEAD   1
 
#define TYPEDEF_LIGATURE(i)
 
#define KBD_VERSION   1
 
#define GET_KBD_VERSION(p)   (HIWORD((p)->fLocaleFlags))
 
#define KLLF_ALTGR   0x1
 
#define KLLF_SHIFTLOCK   0x2
 
#define KLLF_LRM_RLM   0x4
 
#define WCH_NONE   0xf000
 
#define WCH_DEAD   0xf001
 
#define WCH_LGTR   0xf002
 
#define CAPLOK   0x01
 
#define SGCAPS   0x02
 
#define CAPLOKALTGR   0x04
 
#define KANALOK   0x08
 
#define GRPSELTAP   0x80
 
#define VK_ABNT_C1   0xC1
 
#define VK_ABNT_C2   0xC2
 
#define SCANCODE_LSHIFT   0x2A
 
#define SCANCODE_RSHIFT   0x36
 
#define SCANCODE_CTRL   0x1D
 
#define SCANCODE_ALT   0x38
 
#define KBDTABLE_MULTI_MAX   8
 
#define KBDNLS_TYPE_NULL   0
 
#define KBDNLS_TYPE_NORMAL   1
 
#define KBDNLS_TYPE_TOGGLE   2
 
#define KBDNLS_INDEX_NORMAL   1
 
#define KBDNLS_INDEX_ALT   2
 
#define KBDNLS_NULL   0 /* invalid */
 
#define KBDNLS_NOEVENT   1 /* swallow the key */
 
#define KBDNLS_SEND_BASE_VK   2 /* send the base VK */
 
#define KBDNLS_SEND_PARAM_VK   3 /* send the VK in the parameter */
 
#define KBDNLS_KANALOCK   4
 
#define KBDNLS_ALPHANUM   5
 
#define KBDNLS_HIRAGANA   6
 
#define KBDNLS_KATAKANA   7
 
#define KBDNLS_SBCSDBCS   8
 
#define KBDNLS_ROMAN   9
 
#define KBDNLS_CODEINPUT   10
 
#define KBDNLS_HELP_OR_END   11
 
#define KBDNLS_HOME_OR_CLEAR   12
 
#define KBDNLS_NUMPAD   13
 
#define KBDNLS_KANAEVENT   14
 
#define KBDNLS_CONV_OR_NONCONV   15
 
#define VK_DBE_ALPHANUMERIC   0xF0
 
#define VK_DBE_KATAKANA   0xF1
 
#define VK_DBE_HIRAGANA   0xF2
 
#define VK_DBE_SBCSCHAR   0xF3
 
#define VK_DBE_DBCSCHAR   0xF4
 
#define VK_DBE_ROMAN   0xF5
 
#define VK_DBE_NOROMAN   0xF6
 
#define VK_DBE_ENTERWORDREGISTERMODE   0xF7
 
#define VK_DBE_ENTERIMECONFIGMODE   0xF8
 
#define VK_DBE_FLUSHSTRING   0xF9
 
#define VK_DBE_CODEINPUT   0xFA
 
#define VK_DBE_NOCODEINPUT   0xFB
 
#define VK_DBE_DETERMINESTRING   0xFC
 
#define VK_DBE_ENTERDLGCONVERSIONMODE   0xFD
 

Typedefs

typedef struct _VK_TO_BIT VK_TO_BIT
 
typedef struct _VK_TO_BIT * PVK_TO_BIT
 
typedef struct _MODIFIERS MODIFIERS
 
typedef struct _MODIFIERS * PMODIFIERS
 
typedef struct _VK_TO_WCHAR_TABLE VK_TO_WCHAR_TABLE
 
typedef struct _VK_TO_WCHAR_TABLE * PVK_TO_WCHAR_TABLE
 
typedef struct _DEADKEY DEADKEY
 
typedef struct _DEADKEY * PDEADKEY
 
typedef struct _VSC_LPWSTR VSC_LPWSTR
 
typedef struct _VSC_LPWSTR * PVSC_LPWSTR
 
typedef struct _VSC_VK VSC_VK
 
typedef struct _VSC_VK * PVSC_VK
 
typedef struct _KBDTABLES KBDTABLES
 
typedef struct _KBDTABLES * PKBDTABLES
 
typedef struct tagKBDTABLE_DESC KBDTABLE_DESC
 
typedef struct tagKBDTABLE_DESC * PKBDTABLE_DESC
 
typedef struct tagKBDTABLE_MULTI KBDTABLE_MULTI
 
typedef struct tagKBDTABLE_MULTI * PKBDTABLE_MULTI
 
typedef struct _VK_FUNCTION_PARAM VK_FPARAM
 
typedef struct _VK_FUNCTION_PARAM * PVK_FPARAM
 
typedef struct _VK_TO_FUNCTION_TABLE VK_F
 
typedef struct _VK_TO_FUNCTION_TABLE * PVK_F
 
typedef struct tagKbdNlsLayer KBDNLSTABLES
 
typedef struct tagKbdNlsLayer * PKBDNLSTABLES
 
typedef struct tagKBDTABLES_FE KBDTABLES_FE
 
typedef struct tagKBDTABLES_FE * PKBDTABLES_FE
 

Functions

typedef KBD_PTR (LPWSTR) DEADKEY_LPWSTR
 

Macro Definition Documentation

◆ CAPLOK

#define CAPLOK   0x01

Definition at line 174 of file kbd.h.

◆ CAPLOKALTGR

#define CAPLOKALTGR   0x04

Definition at line 176 of file kbd.h.

◆ DKF_DEAD

#define DKF_DEAD   1

Definition at line 120 of file kbd.h.

◆ GET_KBD_VERSION

#define GET_KBD_VERSION (   p)    (HIWORD((p)->fLocaleFlags))

Definition at line 146 of file kbd.h.

◆ GRPSELTAP

#define GRPSELTAP   0x80

Definition at line 178 of file kbd.h.

◆ KANALOK

#define KANALOK   0x08

Definition at line 177 of file kbd.h.

◆ KBD_LONG_POINTER

#define KBD_LONG_POINTER

Definition at line 48 of file kbd.h.

◆ KBD_P

#define KBD_P (   x)    (x)

Definition at line 55 of file kbd.h.

◆ KBD_PTR

#define KBD_PTR (   T)    T

Definition at line 49 of file kbd.h.

◆ KBD_VERSION

#define KBD_VERSION   1

Definition at line 145 of file kbd.h.

◆ KBDALT

#define KBDALT   0x004 /* Alt modifier */

Definition at line 71 of file kbd.h.

◆ KBDCTRL

#define KBDCTRL   0x002 /* Ctrl modifier */

Definition at line 70 of file kbd.h.

◆ KBDEXT

#define KBDEXT   0x100 /* Extended key code */

Definition at line 63 of file kbd.h.

◆ KBDMULTIVK

#define KBDMULTIVK   0x200 /* Multi-key */

Definition at line 64 of file kbd.h.

◆ KBDNLS_ALPHANUM

#define KBDNLS_ALPHANUM   5

Definition at line 223 of file kbd.h.

◆ KBDNLS_CODEINPUT

#define KBDNLS_CODEINPUT   10

Definition at line 228 of file kbd.h.

◆ KBDNLS_CONV_OR_NONCONV

#define KBDNLS_CONV_OR_NONCONV   15

Definition at line 233 of file kbd.h.

◆ KBDNLS_HELP_OR_END

#define KBDNLS_HELP_OR_END   11

Definition at line 229 of file kbd.h.

◆ KBDNLS_HIRAGANA

#define KBDNLS_HIRAGANA   6

Definition at line 224 of file kbd.h.

◆ KBDNLS_HOME_OR_CLEAR

#define KBDNLS_HOME_OR_CLEAR   12

Definition at line 230 of file kbd.h.

◆ KBDNLS_INDEX_ALT

#define KBDNLS_INDEX_ALT   2

Definition at line 215 of file kbd.h.

◆ KBDNLS_INDEX_NORMAL

#define KBDNLS_INDEX_NORMAL   1

Definition at line 214 of file kbd.h.

◆ KBDNLS_KANAEVENT

#define KBDNLS_KANAEVENT   14

Definition at line 232 of file kbd.h.

◆ KBDNLS_KANALOCK

#define KBDNLS_KANALOCK   4

Definition at line 222 of file kbd.h.

◆ KBDNLS_KATAKANA

#define KBDNLS_KATAKANA   7

Definition at line 225 of file kbd.h.

◆ KBDNLS_NOEVENT

#define KBDNLS_NOEVENT   1 /* swallow the key */

Definition at line 219 of file kbd.h.

◆ KBDNLS_NULL

#define KBDNLS_NULL   0 /* invalid */

Definition at line 218 of file kbd.h.

◆ KBDNLS_NUMPAD

#define KBDNLS_NUMPAD   13

Definition at line 231 of file kbd.h.

◆ KBDNLS_ROMAN

#define KBDNLS_ROMAN   9

Definition at line 227 of file kbd.h.

◆ KBDNLS_SBCSDBCS

#define KBDNLS_SBCSDBCS   8

Definition at line 226 of file kbd.h.

◆ KBDNLS_SEND_BASE_VK

#define KBDNLS_SEND_BASE_VK   2 /* send the base VK */

Definition at line 220 of file kbd.h.

◆ KBDNLS_SEND_PARAM_VK

#define KBDNLS_SEND_PARAM_VK   3 /* send the VK in the parameter */

Definition at line 221 of file kbd.h.

◆ KBDNLS_TYPE_NORMAL

#define KBDNLS_TYPE_NORMAL   1

Definition at line 211 of file kbd.h.

◆ KBDNLS_TYPE_NULL

#define KBDNLS_TYPE_NULL   0

Definition at line 210 of file kbd.h.

◆ KBDNLS_TYPE_TOGGLE

#define KBDNLS_TYPE_TOGGLE   2

Definition at line 212 of file kbd.h.

◆ KBDNUMPAD

#define KBDNUMPAD   0x800 /* Number-pad */

Definition at line 66 of file kbd.h.

◆ KBDSHIFT

#define KBDSHIFT   0x001 /* Shift modifier */

Definition at line 69 of file kbd.h.

◆ KBDSPECIAL

#define KBDSPECIAL   0x400 /* Special key */

Definition at line 65 of file kbd.h.

◆ KBDTABLE_MULTI_MAX

#define KBDTABLE_MULTI_MAX   8

Definition at line 199 of file kbd.h.

◆ KLLF_ALTGR

#define KLLF_ALTGR   0x1

Definition at line 147 of file kbd.h.

◆ KLLF_LRM_RLM

#define KLLF_LRM_RLM   0x4

Definition at line 149 of file kbd.h.

◆ KLLF_SHIFTLOCK

#define KLLF_SHIFTLOCK   0x2

Definition at line 148 of file kbd.h.

◆ SCANCODE_ALT

#define SCANCODE_ALT   0x38

Definition at line 187 of file kbd.h.

◆ SCANCODE_CTRL

#define SCANCODE_CTRL   0x1D

Definition at line 186 of file kbd.h.

◆ SCANCODE_LSHIFT

#define SCANCODE_LSHIFT   0x2A

Definition at line 184 of file kbd.h.

◆ SCANCODE_RSHIFT

#define SCANCODE_RSHIFT   0x36

Definition at line 185 of file kbd.h.

◆ SGCAPS

#define SGCAPS   0x02

Definition at line 175 of file kbd.h.

◆ SHFT_INVALID

#define SHFT_INVALID   0x0F

Definition at line 74 of file kbd.h.

◆ TYPEDEF_LIGATURE

#define TYPEDEF_LIGATURE (   i)
Value:
typedef struct _LIGATURE ## i { \
BYTE VirtualKey; \
WORD ModificationNumber; \
WCHAR wch[i]; \
} LIGATURE ## i, *PLIGATURE ## i;
unsigned short WORD
Definition: ntddk_ex.h:93
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
short WCHAR
Definition: pedump.c:58
unsigned char BYTE
Definition: xxhash.c:193

Definition at line 132 of file kbd.h.

◆ TYPEDEF_VK_TO_WCHARS

#define TYPEDEF_VK_TO_WCHARS (   i)
Value:
typedef struct _VK_TO_WCHARS ## i { \
BYTE VirtualKey; \
WCHAR wch[i]; \
} VK_TO_WCHARS ## i, *PVK_TO_WCHARS ## i;
_In_ ULONG Attributes
Definition: dispmprt.h:1077

Definition at line 87 of file kbd.h.

◆ VK_ABNT_C1

#define VK_ABNT_C1   0xC1

Definition at line 180 of file kbd.h.

◆ VK_ABNT_C2

#define VK_ABNT_C2   0xC2

Definition at line 181 of file kbd.h.

◆ VK_DBE_ALPHANUMERIC

#define VK_DBE_ALPHANUMERIC   0xF0

Definition at line 281 of file kbd.h.

◆ VK_DBE_CODEINPUT

#define VK_DBE_CODEINPUT   0xFA

Definition at line 291 of file kbd.h.

◆ VK_DBE_DBCSCHAR

#define VK_DBE_DBCSCHAR   0xF4

Definition at line 285 of file kbd.h.

◆ VK_DBE_DETERMINESTRING

#define VK_DBE_DETERMINESTRING   0xFC

Definition at line 293 of file kbd.h.

◆ VK_DBE_ENTERDLGCONVERSIONMODE

#define VK_DBE_ENTERDLGCONVERSIONMODE   0xFD

Definition at line 294 of file kbd.h.

◆ VK_DBE_ENTERIMECONFIGMODE

#define VK_DBE_ENTERIMECONFIGMODE   0xF8

Definition at line 289 of file kbd.h.

◆ VK_DBE_ENTERWORDREGISTERMODE

#define VK_DBE_ENTERWORDREGISTERMODE   0xF7

Definition at line 288 of file kbd.h.

◆ VK_DBE_FLUSHSTRING

#define VK_DBE_FLUSHSTRING   0xF9

Definition at line 290 of file kbd.h.

◆ VK_DBE_HIRAGANA

#define VK_DBE_HIRAGANA   0xF2

Definition at line 283 of file kbd.h.

◆ VK_DBE_KATAKANA

#define VK_DBE_KATAKANA   0xF1

Definition at line 282 of file kbd.h.

◆ VK_DBE_NOCODEINPUT

#define VK_DBE_NOCODEINPUT   0xFB

Definition at line 292 of file kbd.h.

◆ VK_DBE_NOROMAN

#define VK_DBE_NOROMAN   0xF6

Definition at line 287 of file kbd.h.

◆ VK_DBE_ROMAN

#define VK_DBE_ROMAN   0xF5

Definition at line 286 of file kbd.h.

◆ VK_DBE_SBCSCHAR

#define VK_DBE_SBCSCHAR   0xF3

Definition at line 284 of file kbd.h.

◆ WCH_DEAD

#define WCH_DEAD   0xf001

Definition at line 170 of file kbd.h.

◆ WCH_LGTR

#define WCH_LGTR   0xf002

Definition at line 171 of file kbd.h.

◆ WCH_NONE

#define WCH_NONE   0xf000

Definition at line 169 of file kbd.h.

Typedef Documentation

◆ DEADKEY

◆ KBDNLSTABLES

◆ KBDTABLE_DESC

◆ KBDTABLE_MULTI

◆ KBDTABLES

◆ KBDTABLES_FE

◆ MODIFIERS

◆ PDEADKEY

◆ PKBDNLSTABLES

◆ PKBDTABLE_DESC

◆ PKBDTABLE_MULTI

◆ PKBDTABLES

◆ PKBDTABLES_FE

◆ PMODIFIERS

◆ PVK_F

◆ PVK_FPARAM

◆ PVK_TO_BIT

◆ PVK_TO_WCHAR_TABLE

◆ PVSC_LPWSTR

◆ PVSC_VK

typedef struct _VSC_VK * PVSC_VK

◆ VK_F

◆ VK_FPARAM

◆ VK_TO_BIT

◆ VK_TO_WCHAR_TABLE

◆ VSC_LPWSTR

◆ VSC_VK

Function Documentation

◆ KBD_PTR()

typedef KBD_PTR ( LPWSTR  )