ReactOS 0.4.16-dev-340-g0540c21
winable.h File Reference

Go to the source code of this file.

Classes

struct  tagMOUSEINPUT
 
struct  tagKEYBDINPUT
 
struct  tagHARDWAREINPUT
 
struct  tagINPUT
 
struct  tagGUITHREADINFO
 

Macros

#define INPUT_MOUSE   0x00000000
 
#define INPUT_KEYBOARD   0x00000001
 
#define INPUT_HARDWARE   0x00000002
 
#define CHILDID_SELF   0
 
#define OBJID_WINDOW   0x00000000
 
#define OBJID_SYSMENU   0xFFFFFFFF
 
#define OBJID_TITLEBAR   0xFFFFFFFE
 
#define OBJID_MENU   0xFFFFFFFD
 
#define OBJID_CLIENT   0xFFFFFFFC
 
#define OBJID_VSCROLL   0xFFFFFFFB
 
#define OBJID_HSCROLL   0xFFFFFFFA
 
#define OBJID_SIZEGRIP   0xFFFFFFF9
 
#define OBJID_CARET   0xFFFFFFF8
 
#define OBJID_CURSOR   0xFFFFFFF7
 
#define OBJID_ALERT   0xFFFFFFF6
 
#define OBJID_SOUND   0xFFFFFFF5
 
#define GUI_CARETBLINKING   0x00000001
 
#define GUI_INMOVESIZE   0x00000002
 
#define GUI_INMENUMODE   0x00000004
 
#define GUI_SYSTEMMENUMODE   0x00000008
 
#define GUI_POPUPMENUMODE   0x00000010
 
#define WINEVENT_OUTOFCONTEXT   0x0000
 
#define WINEVENT_SKIPOWNTHREAD   0x0001
 
#define WINEVENT_SKIPOWNPROCESS   0x0002
 
#define WINEVENT_INCONTEXT   0x0004
 

Typedefs

typedef struct tagMOUSEINPUT MOUSEINPUT
 
typedef struct tagMOUSEINPUTPMOUSEINPUT
 
typedef struct tagKEYBDINPUT KEYBDINPUT
 
typedef struct tagKEYBDINPUTPKEYBDINPUT
 
typedef struct tagHARDWAREINPUT HARDWAREINPUT
 
typedef struct tagHARDWAREINPUTPHARDWAREINPUT
 
typedef struct tagINPUT INPUT
 
typedef struct tagINPUTPINPUT
 
typedef struct tagINPUTLPINPUT
 
typedef VOID(CALLBACKWINEVENTPROC) (HWINEVENTHOOK, DWORD, HWND, LONG, LONG, DWORD, DWORD)
 
typedef struct tagGUITHREADINFO GUITHREADINFO
 
typedef struct tagGUITHREADINFOPGUITHREADINFO
 
typedef struct tagGUITHREADINFOLPGUITHREADINFO
 

Functions

BOOL WINAPI BlockInput (BOOL)
 
UINT WINAPI SendInput (UINT, LPINPUT, int)
 
BOOL WINAPI GetGUIThreadInfo (DWORD, LPGUITHREADINFO)
 
void WINAPI NotifyWinEvent (DWORD, HWND, LONG, LONG)
 
HWINEVENTHOOK WINAPI SetWinEventHook (UINT, UINT, HMODULE, WINEVENTPROC, DWORD, DWORD, UINT)
 
BOOL WINAPI UnhookWinEvent (HWINEVENTHOOK)
 

Macro Definition Documentation

◆ CHILDID_SELF

#define CHILDID_SELF   0

Definition at line 14 of file winable.h.

◆ GUI_CARETBLINKING

#define GUI_CARETBLINKING   0x00000001

Definition at line 27 of file winable.h.

◆ GUI_INMENUMODE

#define GUI_INMENUMODE   0x00000004

Definition at line 29 of file winable.h.

◆ GUI_INMOVESIZE

#define GUI_INMOVESIZE   0x00000002

Definition at line 28 of file winable.h.

◆ GUI_POPUPMENUMODE

#define GUI_POPUPMENUMODE   0x00000010

Definition at line 31 of file winable.h.

◆ GUI_SYSTEMMENUMODE

#define GUI_SYSTEMMENUMODE   0x00000008

Definition at line 30 of file winable.h.

◆ INPUT_HARDWARE

#define INPUT_HARDWARE   0x00000002

Definition at line 11 of file winable.h.

◆ INPUT_KEYBOARD

#define INPUT_KEYBOARD   0x00000001

Definition at line 10 of file winable.h.

◆ INPUT_MOUSE

#define INPUT_MOUSE   0x00000000

Definition at line 9 of file winable.h.

◆ OBJID_ALERT

#define OBJID_ALERT   0xFFFFFFF6

Definition at line 25 of file winable.h.

◆ OBJID_CARET

#define OBJID_CARET   0xFFFFFFF8

Definition at line 23 of file winable.h.

◆ OBJID_CLIENT

#define OBJID_CLIENT   0xFFFFFFFC

Definition at line 19 of file winable.h.

◆ OBJID_CURSOR

#define OBJID_CURSOR   0xFFFFFFF7

Definition at line 24 of file winable.h.

◆ OBJID_HSCROLL

#define OBJID_HSCROLL   0xFFFFFFFA

Definition at line 21 of file winable.h.

◆ OBJID_MENU

#define OBJID_MENU   0xFFFFFFFD

Definition at line 18 of file winable.h.

◆ OBJID_SIZEGRIP

#define OBJID_SIZEGRIP   0xFFFFFFF9

Definition at line 22 of file winable.h.

◆ OBJID_SOUND

#define OBJID_SOUND   0xFFFFFFF5

Definition at line 26 of file winable.h.

◆ OBJID_SYSMENU

#define OBJID_SYSMENU   0xFFFFFFFF

Definition at line 16 of file winable.h.

◆ OBJID_TITLEBAR

#define OBJID_TITLEBAR   0xFFFFFFFE

Definition at line 17 of file winable.h.

◆ OBJID_VSCROLL

#define OBJID_VSCROLL   0xFFFFFFFB

Definition at line 20 of file winable.h.

◆ OBJID_WINDOW

#define OBJID_WINDOW   0x00000000

Definition at line 15 of file winable.h.

◆ WINEVENT_INCONTEXT

#define WINEVENT_INCONTEXT   0x0004

Definition at line 35 of file winable.h.

◆ WINEVENT_OUTOFCONTEXT

#define WINEVENT_OUTOFCONTEXT   0x0000

Definition at line 32 of file winable.h.

◆ WINEVENT_SKIPOWNPROCESS

#define WINEVENT_SKIPOWNPROCESS   0x0002

Definition at line 34 of file winable.h.

◆ WINEVENT_SKIPOWNTHREAD

#define WINEVENT_SKIPOWNTHREAD   0x0001

Definition at line 33 of file winable.h.

Typedef Documentation

◆ GUITHREADINFO

◆ HARDWAREINPUT

◆ INPUT

◆ KEYBDINPUT

◆ LPGUITHREADINFO

◆ LPINPUT

◆ MOUSEINPUT

◆ PGUITHREADINFO

◆ PHARDWAREINPUT

◆ PINPUT

◆ PKEYBDINPUT

◆ PMOUSEINPUT

◆ WINEVENTPROC

typedef VOID(CALLBACK * WINEVENTPROC) (HWINEVENTHOOK, DWORD, HWND, LONG, LONG, DWORD, DWORD)

Definition at line 68 of file winable.h.

Function Documentation

◆ BlockInput()

BOOL WINAPI BlockInput ( BOOL  fBlockIt)

Definition at line 308 of file ntwrapper.h.

309{
310 return NtUserBlockInput(fBlockIt);
311}
BOOL NTAPI NtUserBlockInput(BOOL BlockIt)
Definition: input.c:419

◆ GetGUIThreadInfo()

BOOL WINAPI GetGUIThreadInfo ( DWORD  idThread,
LPGUITHREADINFO  lpgui 
)

Definition at line 398 of file ntwrapper.h.

399{
400 return NtUserGetGUIThreadInfo(idThread, lpgui);
401}
BOOL NTAPI NtUserGetGUIThreadInfo(DWORD idThread, LPGUITHREADINFO lpgui)
Definition: misc.c:405

Referenced by GetMainThreadFocus(), MainWndProc(), WinMain(), and WndProc().

◆ NotifyWinEvent()

void WINAPI NotifyWinEvent ( DWORD  event,
HWND  hwnd,
LONG  idObject,
LONG  idChild 
)

Definition at line 325 of file hook.c.

331{
332// "Servers call NotifyWinEvent to announce the event to the system after the
333// event has occurred; they must never notify the system of an event before
334// the event has occurred." msdn on NotifyWinEvent.
335 if (gpsi->dwInstalledEventHooks & GetMaskFromEvent(event)) // Check to see.
336 NtUserNotifyWinEvent(event, hwnd, idObject, idChild);
337}
PSERVERINFO gpsi
Definition: imm.c:18
struct _cl_event * event
Definition: glext.h:7739
VOID NTAPI NtUserNotifyWinEvent(DWORD Event, HWND hWnd, LONG idObject, LONG idChild)
Definition: event.c:254
DWORD dwInstalledEventHooks
Definition: ntuser.h:1071
static DWORD FASTCALL GetMaskFromEvent(DWORD Event)
Definition: hook.c:46
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023

Referenced by init_procs(), and MessageBoxProc().

◆ SendInput()

UINT WINAPI SendInput ( UINT  nInputs,
LPINPUT  pInputs,
int  cbSize 
)

Definition at line 344 of file ntwrapper.h.

345{
346 return NtUserSendInput(nInputs, pInputs, cbSize);
347}
UINT NTAPI NtUserSendInput(UINT nInputs, LPINPUT pInput, INT cbSize)
Definition: input.c:708

Referenced by click_menu(), do_test(), OSK_Command(), OSK_ReleaseKey(), PressKey(), send_key(), simulate_click(), test_dik_codes(), test_input_message_source(), test_inputdesktop(), test_restore_messages(), and test_unicode_keys().

◆ SetWinEventHook()

HWINEVENTHOOK WINAPI SetWinEventHook ( UINT  eventMin,
UINT  eventMax,
HMODULE  hmodWinEventProc,
WINEVENTPROC  pfnWinEventProc,
DWORD  idProcess,
DWORD  idThread,
UINT  dwFlags 
)

Definition at line 344 of file hook.c.

353{
355 UNICODE_STRING USModuleName;
356 PUNICODE_STRING pusmodName;
357
358 RtlInitUnicodeString(&USModuleName, NULL);
359
360 if ((hmodWinEventProc != NULL) && (dwFlags & WINEVENT_INCONTEXT))
361 {
362 if (0 == GetModuleFileNameW(hmodWinEventProc, ModuleName, MAX_PATH))
363 {
364 return NULL;
365 }
366 RtlInitUnicodeString(&USModuleName, ModuleName);
367 pusmodName = &USModuleName;
368 }
369 else
370 {
371 pusmodName = NULL;
372 }
373
374 return NtUserSetWinEventHook(eventMin,
375 eventMax,
376 hmodWinEventProc,
377 pusmodName,
378 pfnWinEventProc,
379 idProcess,
380 idThread,
381 dwFlags);
382}
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 ACPI_STATUS const char UINT32 ACPI_STATUS const char UINT32 const char const char * ModuleName
Definition: acpixf.h:1280
#define NULL
Definition: types.h:112
#define MAX_PATH
Definition: compat.h:34
DWORD WINAPI GetModuleFileNameW(HINSTANCE hModule, LPWSTR lpFilename, DWORD nSize)
Definition: loader.c:600
HWINEVENTHOOK NTAPI NtUserSetWinEventHook(UINT eventMin, UINT eventMax, HMODULE hmodWinEventProc, PUNICODE_STRING puString, WINEVENTPROC lpfnWinEventProc, DWORD idProcess, DWORD idThread, UINT dwflags)
Definition: event.c:286
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define WINEVENT_INCONTEXT
Definition: winable.h:35
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1176
__wchar_t WCHAR
Definition: xmlstorage.h:180

Referenced by init_procs().

◆ UnhookWinEvent()

BOOL WINAPI UnhookWinEvent ( HWINEVENTHOOK  )

Referenced by init_procs().