241 lines
7.5 KiB
C
241 lines
7.5 KiB
C
/*
|
|
* winable.h Win32 accessibility functions
|
|
*
|
|
* =========================================================================
|
|
*
|
|
* Open Watcom Project
|
|
*
|
|
* Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved.
|
|
*
|
|
* This file is automatically generated. Do not edit directly.
|
|
*
|
|
* =========================================================================
|
|
*/
|
|
|
|
/* This file is retained solely for compatibility purposes. For current versions of
|
|
* Windows, the functions declared in this file are in winuser.h. New code should not
|
|
* use this header.
|
|
*/
|
|
|
|
#ifndef _WINABLE_
|
|
#define _WINABLE_
|
|
|
|
#ifndef _ENABLE_AUTODEPEND
|
|
#pragma read_only_file;
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* Macro to specify accessibility functions */
|
|
#define WINABLEAPI DECLSPEC_IMPORT
|
|
|
|
/* Windows event hook handle data type */
|
|
#if (WINVER < 0x0400)
|
|
typedef DWORD HWINEVENTHOOK;
|
|
#endif
|
|
|
|
/* GUI thread information flags */
|
|
#if (WINVER < 0x0500)
|
|
#define GUI_CARETBLINKING 0x00000001L
|
|
#define GUI_INMOVESIZE 0x00000002L
|
|
#define GUI_INMENUMODE 0x00000004L
|
|
#define GUI_SYSTEMMENUMODE 0x00000008L
|
|
#define GUI_POPUPMENUMODE 0x00000010L
|
|
#endif
|
|
|
|
/* Input types */
|
|
#if (_WIN32_WINNT < 0x0400)
|
|
#define INPUT_MOUSE 0L
|
|
#define INPUT_KEYBOARD 1L
|
|
#define INPUT_HARDWARE 2L
|
|
#endif
|
|
|
|
/* Common object identifiers */
|
|
#if (WINVER < 0x0500)
|
|
#define CHILDID_SELF 0
|
|
#endif
|
|
|
|
/* System object identifiers */
|
|
#if (WINVER < 0x0500)
|
|
#define OBJID_WINDOW 0x00000000L
|
|
#define OBJID_SYSMENU 0xFFFFFFFFL
|
|
#define OBJID_TITLEBAR 0xFFFFFFFEL
|
|
#define OBJID_MENU 0xFFFFFFFDL
|
|
#define OBJID_CLIENT 0xFFFFFFFCL
|
|
#define OBJID_VSCROLL 0xFFFFFFFBL
|
|
#define OBJID_HSCROLL 0xFFFFFFFAL
|
|
#define OBJID_SIZEGRIP 0xFFFFFFF9L
|
|
#define OBJID_CARET 0xFFFFFFF8L
|
|
#define OBJID_CURSOR 0xFFFFFFF7L
|
|
#define OBJID_ALERT 0xFFFFFFF6L
|
|
#define OBJID_SOUND 0xFFFFFFF5L
|
|
#endif
|
|
|
|
/* System alerts */
|
|
#if (WINVER < 0x0500)
|
|
#define ALERT_SYSTEM_INFORMATIONAL 1L
|
|
#define ALERT_SYSTEM_WARNING 2L
|
|
#define ALERT_SYSTEM_ERROR 3L
|
|
#define ALERT_SYSTEM_QUERY 4L
|
|
#define ALERT_SYSTEM_CRITICAL 5L
|
|
#define CALERT_SYSTEM 6L
|
|
#endif
|
|
|
|
/* SetWinEventHook() flags */
|
|
#if (WINVER < 0x0500)
|
|
#define WINEVENT_OUTOFCONTEXT 0x00000000L
|
|
#define WINEVENT_SKIPOWNTHREAD 0x00000001L
|
|
#define WINEVENT_SKIPOWNPROCESS 0x00000002L
|
|
#define WINEVENT_INCONTEXT 0x00000004L
|
|
#endif
|
|
|
|
/* Accessibility events */
|
|
#if (WINVER < 0x0500)
|
|
#define EVENT_MIN 0x00000001L
|
|
#define EVENT_MAX 0x7FFFFFFFL
|
|
#define EVENT_SYSTEM_SOUND 0x00000001L
|
|
#define EVENT_SYSTEM_ALERT 0x00000002L
|
|
#define EVENT_SYSTEM_FOREGROUND 0x00000003L
|
|
#define EVENT_SYSTEM_MENUSTART 0x00000004L
|
|
#define EVENT_SYSTEM_MENUEND 0x00000005L
|
|
#define EVENT_SYSTEM_MENUPOPUPSTART 0x00000006L
|
|
#define EVENT_SYSTEM_MENUPOPUPEND 0x00000007L
|
|
#define EVENT_SYSTEM_CAPTURESTART 0x00000008L
|
|
#define EVENT_SYSTEM_CAPTUREEND 0x00000009L
|
|
#define EVENT_SYSTEM_MOVESIZESTART 0x0000000AL
|
|
#define EVENT_SYSTEM_MOVESIZEEND 0x0000000BL
|
|
#define EVENT_SYSTEM_CONTEXTHELPSTART 0x0000000CL
|
|
#define EVENT_SYSTEM_CONTEXTHELPEND 0x0000000DL
|
|
#define EVENT_SYSTEM_DRAGDROPSTART 0x0000000EL
|
|
#define EVENT_SYSTEM_DRAGDROPEND 0x0000000FL
|
|
#define EVENT_SYSTEM_DIALOGSTART 0x00000010L
|
|
#define EVENT_SYSTEM_DIALOGEND 0x00000011L
|
|
#define EVENT_SYSTEM_SCROLLINGSTART 0x00000012L
|
|
#define EVENT_SYSTEM_SCROLLINGEND 0x00000013L
|
|
#define EVENT_SYSTEM_SWITCHSTART 0x00000014L
|
|
#define EVENT_SYSTEM_SWITCHEND 0x00000015L
|
|
#define EVENT_SYSTEM_MINIMIZESTART 0x00000016L
|
|
#define EVENT_SYSTEM_MINIMIZEEND 0x00000017L
|
|
#define EVENT_OBJECT_CREATE 0x00008000L
|
|
#define EVENT_OBJECT_DESTROY 0x00008001L
|
|
#define EVENT_OBJECT_SHOW 0x00008002L
|
|
#define EVENT_OBJECT_HIDE 0x00008003L
|
|
#define EVENT_OBJECT_REORDER 0x00008004L
|
|
#define EVENT_OBJECT_FOCUS 0x00008005L
|
|
#define EVENT_OBJECT_SELECTION 0x00008006L
|
|
#define EVENT_OBJECT_SELECTIONADD 0x00008007L
|
|
#define EVENT_OBJECT_SELECTIONREMOVE 0x00008008L
|
|
#define EVENT_OBJECT_SELECTIONWITHIN 0x00008009L
|
|
#define EVENT_OBJECT_STATECHANGE 0x0000800AL
|
|
#define EVENT_OBJECT_LOCATIONCHANGE 0x0000800BL
|
|
#define EVENT_OBJECT_NAMECHANGE 0x0000800CL
|
|
#define EVENT_OBJECT_DESCRIPTIONCHANGE 0x0000800DL
|
|
#define EVENT_OBJECT_VALUECHANGE 0x0000800EL
|
|
#define EVENT_OBJECT_PARENTCHANGE 0x0000800FL
|
|
#define EVENT_OBJECT_HELPCHANGE 0x00008010L
|
|
#define EVENT_OBJECT_DEFACTIONCHANGE 0x00008011L
|
|
#define EVENT_OBJECT_ACCELERATORCHANGE 0x00008012L
|
|
#endif
|
|
|
|
/* GUI thread information */
|
|
#if (WINVER < 0x0500)
|
|
typedef struct tagGUITHREADINFO {
|
|
DWORD cbSize;
|
|
DWORD flags;
|
|
HWND hwndActive;
|
|
HWND hwndFocus;
|
|
HWND hwndCapture;
|
|
HWND hwndMenuOwner;
|
|
HWND hwndMoveSize;
|
|
HWND hwndCaret;
|
|
RECT rcCaret;
|
|
} GUITHREADINFO;
|
|
typedef GUITHREADINFO *PGUITHREADINFO;
|
|
typedef GUITHREADINFO *LPGUITHREADINFO;
|
|
#endif
|
|
|
|
/* Mouse input information */
|
|
#if (_WIN32_WINNT < 0x0400)
|
|
typedef struct tagMOUSEINPUT {
|
|
LONG dx;
|
|
LONG dy;
|
|
DWORD mouseData;
|
|
DWORD dwFlags;
|
|
DWORD time;
|
|
ULONG_PTR dwExtraInfo;
|
|
} MOUSEINPUT;
|
|
typedef MOUSEINPUT *PMOUSEINPUT;
|
|
typedef MOUSEINPUT *LPMOUSEINPUT;
|
|
#endif
|
|
|
|
/* Keyboard input information */
|
|
#if (_WIN32_WINNT < 0x0400)
|
|
typedef struct tagKEYBDINPUT {
|
|
WORD wVk;
|
|
WORD wScan;
|
|
DWORD dwFlags;
|
|
DWORD time;
|
|
ULONG_PTR dwExtraInfo;
|
|
} KEYBDINPUT;
|
|
typedef KEYBDINPUT *PKEYBDINPUT;
|
|
typedef KEYBDINPUT *LPKEYBDINPUT;
|
|
#endif
|
|
|
|
/* Hardware input information */
|
|
#if (_WIN32_WINNT < 0x0400)
|
|
typedef struct tagHARDWAREINPUT {
|
|
DWORD uMsg;
|
|
WORD wParamL;
|
|
WORD wParamH;
|
|
} HARDWAREINPUT;
|
|
typedef HARDWAREINPUT *PHARDWAREINPUT;
|
|
typedef HARDWAREINPUT *LPHARDWAREINPUT;
|
|
#endif
|
|
|
|
/* Input information */
|
|
#if (_WIN32_WINNT < 0x0400)
|
|
typedef struct tagINPUT {
|
|
DWORD type;
|
|
union {
|
|
MOUSEINPUT mi;
|
|
KEYBDINPUT ki;
|
|
HARDWAREINPUT hi;
|
|
};
|
|
} INPUT;
|
|
typedef INPUT *PINPUT;
|
|
typedef INPUT *LPINPUT;
|
|
#endif
|
|
|
|
/* WinEvent hook callback */
|
|
#if (WINVER < 0x0500)
|
|
typedef VOID (CALLBACK *WINEVENTPROC)( HWINEVENTHOOK, DWORD, HWND, LONG, LONG, DWORD, DWORD );
|
|
#endif
|
|
|
|
/* Functions in USER32.DLL */
|
|
#if (WINVER < 0x0500)
|
|
WINABLEAPI BOOL WINAPI GetGUIThreadInfo( DWORD, PGUITHREADINFO );
|
|
WINABLEAPI UINT WINAPI GetWindowModuleFileNameA( HWND, LPSTR, UINT );
|
|
WINABLEAPI UINT WINAPI GetWindowModuleFileNameW( HWND, LPWSTR, UINT );
|
|
WINABLEAPI VOID WINAPI NotifyWinEvent( DWORD, HWND, LONG, LONG );
|
|
WINABLEAPI HWINEVENTHOOK WINAPI SetWinEventHook( DWORD, DWORD, HMODULE, WINEVENTPROC, DWORD, DWORD, DWORD );
|
|
WINABLEAPI BOOL WINAPI UnhookWinEvent( HWINEVENTHOOK );
|
|
#endif
|
|
#if (_WIN32_WINNT < 0x0400)
|
|
WINABLEAPI UINT WINAPI SendInput( UINT, LPINPUT, int );
|
|
#endif
|
|
|
|
/* Map generic function names to the appropriate ANSI or Unicode version. */
|
|
#ifdef UNICODE
|
|
#define GetWindowModuleFileName GetWindowModuleFileNameW
|
|
#else
|
|
#define GetWindowModuleFileName GetWindowModuleFileNameA
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
} /* extern "C" */
|
|
#endif
|
|
|
|
#endif /* _WINABLE_ */
|