2 * Basic type definitions for 16 bit variations on Windows types.
3 * These types are provided mostly to insure compatibility with
7 #ifndef __WINE_WINDEF16_H
8 #define __WINE_WINDEF16_H
12 /* Standard data types */
15 typedef unsigned short UINT16
;
16 typedef unsigned short BOOL16
;
18 typedef UINT16 HANDLE16
;
19 typedef HANDLE16
*LPHANDLE16
;
21 typedef UINT16 WPARAM16
;
22 typedef INT16
*LPINT16
;
23 typedef UINT16
*LPUINT16
;
25 #define DECLARE_HANDLE16(a) \
26 typedef HANDLE16 a##16; \
27 typedef a##16 *P##a##16; \
28 typedef a##16 *NP##a##16; \
29 typedef a##16 *LP##a##16
31 DECLARE_HANDLE16(HACMDRIVERID
);
32 DECLARE_HANDLE16(HACMDRIVER
);
33 DECLARE_HANDLE16(HACMOBJ
);
34 DECLARE_HANDLE16(HACMSTREAM
);
35 DECLARE_HANDLE16(HMETAFILEPICT
);
37 DECLARE_HANDLE16(HACCEL
);
38 DECLARE_HANDLE16(HBITMAP
);
39 DECLARE_HANDLE16(HBRUSH
);
40 DECLARE_HANDLE16(HCOLORSPACE
);
41 DECLARE_HANDLE16(HCURSOR
);
42 DECLARE_HANDLE16(HDC
);
43 DECLARE_HANDLE16(HDROP
);
44 DECLARE_HANDLE16(HDRVR
);
45 DECLARE_HANDLE16(HDWP
);
46 DECLARE_HANDLE16(HENHMETAFILE
);
47 DECLARE_HANDLE16(HFILE
);
48 DECLARE_HANDLE16(HFONT
);
49 DECLARE_HANDLE16(HICON
);
50 DECLARE_HANDLE16(HINSTANCE
);
51 DECLARE_HANDLE16(HKEY
);
52 DECLARE_HANDLE16(HMENU
);
53 DECLARE_HANDLE16(HMETAFILE
);
54 DECLARE_HANDLE16(HMIDI
);
55 DECLARE_HANDLE16(HMIDIIN
);
56 DECLARE_HANDLE16(HMIDIOUT
);
57 DECLARE_HANDLE16(HMIDISTRM
);
58 DECLARE_HANDLE16(HMIXER
);
59 DECLARE_HANDLE16(HMIXEROBJ
);
60 DECLARE_HANDLE16(HMMIO
);
61 DECLARE_HANDLE16(HPALETTE
);
62 DECLARE_HANDLE16(HPEN
);
63 DECLARE_HANDLE16(HQUEUE
);
64 DECLARE_HANDLE16(HRGN
);
65 DECLARE_HANDLE16(HRSRC
);
66 DECLARE_HANDLE16(HTASK
);
67 DECLARE_HANDLE16(HWAVE
);
68 DECLARE_HANDLE16(HWAVEIN
);
69 DECLARE_HANDLE16(HWAVEOUT
);
70 DECLARE_HANDLE16(HWINSTA
);
71 DECLARE_HANDLE16(HDESK
);
72 DECLARE_HANDLE16(HWND
);
73 DECLARE_HANDLE16(HKL
);
74 DECLARE_HANDLE16(HIC
);
75 DECLARE_HANDLE16(HRASCONN
);
76 #undef DECLARE_HANDLE16
78 typedef HINSTANCE16 HMODULE16
;
79 typedef HANDLE16 HGDIOBJ16
;
80 typedef HANDLE16 HGLOBAL16
;
81 typedef HANDLE16 HLOCAL16
;
83 /* The SIZE structure */
88 } SIZE16
, *PSIZE16
, *LPSIZE16
;
90 /* The POINT structure */
96 } POINT16
, *PPOINT16
, *LPPOINT16
;
98 /* The RECT structure */
108 /* Callback function pointers types */
110 typedef LRESULT (CALLBACK
*DRIVERPROC16
)(DWORD
,HDRVR16
,UINT16
,LPARAM
,LPARAM
);
111 typedef BOOL16 (CALLBACK
*DLGPROC16
)(HWND16
,UINT16
,WPARAM16
,LPARAM
);
112 typedef INT16 (CALLBACK
*EDITWORDBREAKPROC16
)(LPSTR
,INT16
,INT16
,INT16
);
113 typedef LRESULT (CALLBACK
*FARPROC16
)();
114 typedef INT16 (CALLBACK
*PROC16
)();
115 typedef BOOL16 (CALLBACK
*GRAYSTRINGPROC16
)(HDC16
,LPARAM
,INT16
);
116 typedef LRESULT (CALLBACK
*HOOKPROC16
)(INT16
,WPARAM16
,LPARAM
);
117 typedef BOOL16 (CALLBACK
*PROPENUMPROC16
)(HWND16
,SEGPTR
,HANDLE16
);
118 typedef VOID (CALLBACK
*TIMERPROC16
)(HWND16
,UINT16
,UINT16
,DWORD
);
119 typedef LRESULT (CALLBACK
*WNDENUMPROC16
)(HWND16
,LPARAM
);
120 typedef LRESULT (CALLBACK
*WNDPROC16
)(HWND16
,UINT16
,WPARAM16
,LPARAM
);
122 #endif /* __WINE_WINDEF16_H */