1 #ifndef __WINE_WINTYPES_H
2 #define __WINE_WINTYPES_H
22 typedef unsigned short WORD
;
23 typedef unsigned long DWORD
;
24 typedef unsigned short BOOL
;
25 typedef unsigned char BYTE
;
29 typedef unsigned int UINT
;
38 typedef unsigned short UINT
;
50 typedef const char *LPCSTR
;
55 typedef DWORD
*LPDWORD
;
58 typedef const void *LPCVOID
;
59 typedef WORD CATCHBUF
[9];
60 typedef WORD
*LPCATCHBUF
;
62 #define DECLARE_HANDLE(a) typedef HANDLE a;
64 DECLARE_HANDLE(HBITMAP
);
65 DECLARE_HANDLE(HBRUSH
);
66 DECLARE_HANDLE(HCLASS
);
67 DECLARE_HANDLE(HCURSOR
);
69 DECLARE_HANDLE(HDROP
);
70 DECLARE_HANDLE(HDRVR
);
72 DECLARE_HANDLE(HFONT
);
73 DECLARE_HANDLE(HGLOBAL
);
74 DECLARE_HANDLE(HICON
);
75 DECLARE_HANDLE(HINSTANCE
);
76 DECLARE_HANDLE(HLOCAL
);
77 DECLARE_HANDLE(HMENU
);
78 DECLARE_HANDLE(HMETAFILE
);
79 DECLARE_HANDLE(HMODULE
);
80 DECLARE_HANDLE(HPALETTE
);
83 DECLARE_HANDLE(HRSRC
);
84 DECLARE_HANDLE(HTASK
);
86 DECLARE_HANDLE(LOCALHANDLE
);
89 typedef long (*FARPROC
)();
90 typedef LRESULT (*WNDPROC
)(HWND
,UINT
,WPARAM
,LPARAM
);
92 typedef SEGPTR FARPROC
;
93 typedef SEGPTR WNDPROC
;
95 typedef FARPROC DLGPROC
;
96 typedef FARPROC HOOKPROC
;
100 #define CW_USEDEFAULT ((INT)0x8000)
105 #define WINAPI PASCAL
106 #define CALLBACK PASCAL
114 #define WINE_PACKED __attribute__ ((packed))
117 #define LOBYTE(w) ((BYTE)(UINT)(w))
118 #define HIBYTE(w) ((BYTE)((UINT)(w) >> 8))
120 #define LOWORD(l) ((WORD)(DWORD)(l))
121 #define HIWORD(l) ((WORD)((DWORD)(l) >> 16))
123 #define SLOWORD(l) ((INT)(LONG)(l))
124 #define SHIWORD(l) ((INT)((LONG)(l) >> 16))
126 #define MAKELONG(low, high) ((LONG)(((WORD)(low)) | \
127 (((DWORD)((WORD)(high))) << 16)))
129 #define SELECTOROF(ptr) (HIWORD(ptr))
130 #define OFFSETOF(ptr) (LOWORD(ptr))
133 #define MAX(a,b) (((a) > (b)) ? (a) : (b))
137 #define MIN(a,b) (((a) < (b)) ? (a) : (b))
140 #endif /* __WINE_WINTYPES_H */