source: Daodan/MinGW/include/winable.h@ 1163

Last change on this file since 1163 was 1046, checked in by alloc, 8 years ago

Daodan: Added Windows MinGW and build batch file

File size: 2.4 KB
Line 
1#ifndef _WINABLE_H
2#define _WINABLE_H
3#if __GNUC__ >=3
4#pragma GCC system_header
5#endif
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11#if (_WIN32_WINNT < 0x0403)
12#define INPUT_MOUSE 0x00000000
13#define INPUT_KEYBOARD 0x00000001
14#define INPUT_HARDWARE 0x00000002
15#endif /* (_WIN32_WINNT < 0x04030) */
16#if (WINVER < 0x0500)
17#define CHILDID_SELF 0
18#define OBJID_WINDOW 0x00000000
19#define OBJID_SYSMENU 0xFFFFFFFF
20#define OBJID_TITLEBAR 0xFFFFFFFE
21#define OBJID_MENU 0xFFFFFFFD
22#define OBJID_CLIENT 0xFFFFFFFC
23#define OBJID_VSCROLL 0xFFFFFFFB
24#define OBJID_HSCROLL 0xFFFFFFFA
25#define OBJID_SIZEGRIP 0xFFFFFFF9
26#define OBJID_CARET 0xFFFFFFF8
27#define OBJID_CURSOR 0xFFFFFFF7
28#define OBJID_ALERT 0xFFFFFFF6
29#define OBJID_SOUND 0xFFFFFFF5
30#define GUI_CARETBLINKING 0x00000001
31#define GUI_INMOVESIZE 0x00000002
32#define GUI_INMENUMODE 0x00000004
33#define GUI_SYSTEMMENUMODE 0x00000008
34#define GUI_POPUPMENUMODE 0x00000010
35#define WINEVENT_OUTOFCONTEXT 0x0000
36#define WINEVENT_SKIPOWNTHREAD 0x0001
37#define WINEVENT_SKIPOWNPROCESS 0x0002
38#define WINEVENT_INCONTEXT 0x0004
39#endif /* (WINVER < 0x0500) */
40#if (_WIN32_WINNT < 0x0403)
41typedef struct tagMOUSEINPUT {
42 LONG dx;
43 LONG dy;
44 DWORD mouseData;
45 DWORD dwFlags;
46 DWORD time;
47 ULONG_PTR dwExtraInfo;
48} MOUSEINPUT,*PMOUSEINPUT;
49typedef struct tagKEYBDINPUT {
50 WORD wVk;
51 WORD wScan;
52 DWORD dwFlags;
53 DWORD time;
54 ULONG_PTR dwExtraInfo;
55} KEYBDINPUT,*PKEYBDINPUT;
56typedef struct tagHARDWAREINPUT {
57 DWORD uMsg;
58 WORD wParamL;
59 WORD wParamH;
60} HARDWAREINPUT,*PHARDWAREINPUT;
61typedef struct tagINPUT {
62 DWORD type;
63 _ANONYMOUS_UNION union {
64 MOUSEINPUT mi;
65 KEYBDINPUT ki;
66 HARDWAREINPUT hi;
67 } DUMMYUNIONNAME;
68} INPUT,*PINPUT,*LPINPUT;
69#endif /* (_WIN32_WINNT < 0x0403) */
70#if (WINVER < 0x0500)
71typedef VOID (*WINEVENTPROC)(HWINEVENTHOOK,DWORD,HWND,LONG,LONG,DWORD,DWORD);
72typedef struct tagGUITHREADINFO {
73 DWORD cbSize;
74 DWORD flags;
75 HWND hwndActive;
76 HWND hwndFocus;
77 HWND hwndCapture;
78 HWND hwndMenuOwner;
79 HWND hwndMoveSize;
80 HWND hwndCaret;
81 RECT rcCaret;
82} GUITHREADINFO,*PGUITHREADINFO,*LPGUITHREADINFO;
83#endif /* (WINVER < 0x0500) */
84
85BOOL WINAPI BlockInput(BOOL);
86#if (_WIN32_WINNT < 0x0403)
87UINT WINAPI SendInput(UINT,LPINPUT,int);
88#endif
89#if (WINVER < 0x0500)
90BOOL WINAPI GetGUIThreadInfo(DWORD,LPGUITHREADINFO);
91void WINAPI NotifyWinEvent(DWORD,HWND,LONG,LONG);
92HWINEVENTHOOK WINAPI SetWinEventHook(UINT,UINT,HMODULE,WINEVENTPROC,DWORD,DWORD,UINT);
93BOOL WINAPI UnhookWinEvent(HWINEVENTHOOK);
94#endif /* (WINVER < 0x0500) */
95
96#ifdef __cplusplus
97}
98#endif
99#endif
Note: See TracBrowser for help on using the repository browser.