summary refs log tree commit diff stats
path: root/tinyc/win32/include/winapi/windef.h
diff options
context:
space:
mode:
Diffstat (limited to 'tinyc/win32/include/winapi/windef.h')
-rw-r--r--tinyc/win32/include/winapi/windef.h425
1 files changed, 239 insertions, 186 deletions
diff --git a/tinyc/win32/include/winapi/windef.h b/tinyc/win32/include/winapi/windef.h
index 1ee3f39f6..d63bdef13 100644
--- a/tinyc/win32/include/winapi/windef.h
+++ b/tinyc/win32/include/winapi/windef.h
@@ -1,7 +1,13 @@
-#ifndef _WINDEF_H
-#define _WINDEF_H
-#if __GNUC__ >=3
-#pragma GCC system_header
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the w64 mingw-runtime package.
+ * No warranty is given; refer to the file DISCLAIMER within this package.
+ */
+#ifndef _WINDEF_
+#define _WINDEF_
+
+#ifndef STRICT
+#define STRICT 1
 #endif
 
 #ifdef __cplusplus
@@ -9,230 +15,277 @@ extern "C" {
 #endif
 
 #ifndef WINVER
-#define WINVER 0x0400
-#endif
-#ifndef _WIN32_WINNT
-#define _WIN32_WINNT WINVER
-#endif
-#ifndef WIN32
-#define WIN32
+#define WINVER 0x0502
 #endif
-#ifndef _WIN32
-#define _WIN32
-#endif
-#define FAR
-#define far
-#define NEAR
-#define near
-#ifndef CONST
-#define CONST const
+
+#ifndef BASETYPES
+#define BASETYPES
+  typedef unsigned long ULONG;
+  typedef ULONG *PULONG;
+  typedef unsigned short USHORT;
+  typedef USHORT *PUSHORT;
+  typedef unsigned char UCHAR;
+  typedef UCHAR *PUCHAR;
+  typedef char *PSZ;
 #endif
-#undef MAX_PATH
+
 #define MAX_PATH 260
 
 #ifndef NULL
 #ifdef __cplusplus
 #define NULL 0
 #else
-#define NULL ((void*)0)
+#define NULL ((void *)0)
 #endif
 #endif
+
 #ifndef FALSE
 #define FALSE 0
 #endif
+
 #ifndef TRUE
 #define TRUE 1
 #endif
+
+#ifndef IN
 #define IN
+#endif
+
+#ifndef OUT
 #define OUT
+#endif
+
 #ifndef OPTIONAL
 #define OPTIONAL
 #endif
 
-#ifdef __GNUC__
-#define PACKED __attribute__((packed))
-#ifndef _stdcall
-#define _stdcall __attribute__((stdcall))
-#endif
-#ifndef __stdcall
-#define __stdcall __attribute__((stdcall))
-#endif
-#ifndef _cdecl
-#define _cdecl __attribute__((cdecl))
+#undef far
+#undef near
+#undef pascal
+
+#define far
+#define near
+#define pascal __stdcall
+
+#define cdecl
+#ifndef CDECL
+#define CDECL
 #endif
-#ifndef __cdecl
-#define __cdecl __attribute__((cdecl))
+#ifndef CALLBACK
+#define CALLBACK __stdcall
 #endif
-#ifndef __declspec
-#define __declspec(e) __attribute__((e))
+#ifndef WINAPI
+#define WINAPI __stdcall
 #endif
-#ifndef _declspec
-#define _declspec(e) __attribute__((e))
+#define WINAPIV __cdecl
+#define APIENTRY WINAPI
+#define APIPRIVATE WINAPI
+#define PASCAL WINAPI
+#define WINAPI_INLINE WINAPI
+
+#undef FAR
+#undef NEAR
+#define FAR
+#define NEAR
+#ifndef CONST
+#define CONST const
 #endif
-#else
-#define PACKED
-#define _cdecl
-#define __cdecl
+
+  typedef unsigned long DWORD;
+  typedef int WINBOOL;
+#define BOOL WINBOOL
+  typedef unsigned char BYTE;
+  typedef unsigned short WORD;
+  typedef float FLOAT;
+  typedef FLOAT *PFLOAT;
+  typedef WINBOOL *PBOOL;
+  typedef WINBOOL *LPBOOL;
+  typedef BYTE *PBYTE;
+  typedef BYTE *LPBYTE;
+  typedef int *PINT;
+  typedef int *LPINT;
+  typedef WORD *PWORD;
+  typedef WORD *LPWORD;
+  typedef long *LPLONG;
+  typedef DWORD *PDWORD;
+  typedef DWORD *LPDWORD;
+  typedef void *LPVOID;
+# ifndef _LPCVOID_DEFINED
+#define _LPCVOID_DEFINED
+typedef CONST void *LPCVOID;
 #endif
+  typedef int INT;
+  typedef unsigned int UINT;
+  typedef unsigned int *PUINT;
 
-#undef pascal
-#undef _pascal
-#undef __pascal
-#define pascal __stdcall
-#define _pascal __stdcall
-#define __pascal __stdcall
-#define PASCAL _pascal
-#define CDECL _cdecl
-#define STDCALL __stdcall
-#define WINAPI __stdcall
-#define WINAPIV __cdecl
-#define APIENTRY __stdcall
-#define CALLBACK __stdcall
-#define APIPRIVATE __stdcall
-
-#define DECLSPEC_IMPORT __declspec(dllimport)
-#define DECLSPEC_EXPORT __declspec(dllexport)
-#ifdef __GNUC__
-#define DECLSPEC_NORETURN __declspec(noreturn)
-#define DECLARE_STDCALL_P( type ) __stdcall type
-#elif defined(__WATCOMC__)
-#define DECLSPEC_NORETURN
-#define DECLARE_STDCALL_P( type ) type __stdcall
-#endif /* __GNUC__/__WATCOMC__ */
-#define MAKEWORD(a,b)	((WORD)(((BYTE)(a))|(((WORD)((BYTE)(b)))<<8)))
-#define MAKELONG(a,b)	((LONG)(((WORD)(a))|(((DWORD)((WORD)(b)))<<16)))
-#define LOWORD(l)	((WORD)((DWORD)(l)))
-#define HIWORD(l)	((WORD)(((DWORD)(l)>>16)&0xFFFF))
-#define LOBYTE(w)	((BYTE)(w))
-#define HIBYTE(w)	((BYTE)(((WORD)(w)>>8)&0xFF))
-
-#ifndef _export
-#define _export
-#endif
-#ifndef __export
-#define __export
+#ifndef NT_INCLUDED
+#include <winnt.h>
 #endif
 
+//gr #include <specstrings.h>
+
+  typedef UINT_PTR WPARAM;
+  typedef LONG_PTR LPARAM;
+  typedef LONG_PTR LRESULT;
+
+#ifndef __cplusplus
 #ifndef NOMINMAX
 #ifndef max
-#define max(a,b) ((a)>(b)?(a):(b))
+#define max(a,b) (((a) > (b)) ? (a) : (b))
 #endif
+
 #ifndef min
-#define min(a,b) ((a)<(b)?(a):(b))
+#define min(a,b) (((a) < (b)) ? (a) : (b))
+#endif
 #endif
 #endif
 
-#define UNREFERENCED_PARAMETER(P) {(P)=(P);}
-#define UNREFERENCED_LOCAL_VARIABLE(L) {(L)=(L);}
-#define DBG_UNREFERENCED_PARAMETER(P)
-#define DBG_UNREFERENCED_LOCAL_VARIABLE(L)
+#define MAKEWORD(a,b) ((WORD)(((BYTE)((DWORD_PTR)(a) & 0xff)) | ((WORD)((BYTE)((DWORD_PTR)(b) & 0xff))) << 8))
+#define MAKELONG(a,b) ((LONG)(((WORD)((DWORD_PTR)(a) & 0xffff)) | ((DWORD)((WORD)((DWORD_PTR)(b) & 0xffff))) << 16))
+#define LOWORD(l) ((WORD)((DWORD_PTR)(l) & 0xffff))
+#define HIWORD(l) ((WORD)((DWORD_PTR)(l) >> 16))
+#define LOBYTE(w) ((BYTE)((DWORD_PTR)(w) & 0xff))
+#define HIBYTE(w) ((BYTE)((DWORD_PTR)(w) >> 8))
 
-typedef unsigned long DWORD;
-typedef int WINBOOL,*PWINBOOL,*LPWINBOOL;
-/* FIXME: Is there a good solution to this? */
-#ifndef XFree86Server
-#ifndef __OBJC__
-typedef WINBOOL BOOL;
+#ifndef WIN_INTERNAL
+  DECLARE_HANDLE (HWND);
+  DECLARE_HANDLE (HHOOK);
+#ifdef WINABLE
+  DECLARE_HANDLE (HEVENT);
+#endif
+#endif
+
+  typedef WORD ATOM;
+
+  typedef HANDLE *SPHANDLE;
+  typedef HANDLE *LPHANDLE;
+  typedef HANDLE HGLOBAL;
+  typedef HANDLE HLOCAL;
+  typedef HANDLE GLOBALHANDLE;
+  typedef HANDLE LOCALHANDLE;
+#ifdef _WIN64
+  typedef INT_PTR (WINAPI *FARPROC)();
+  typedef INT_PTR (WINAPI *NEARPROC)();
+  typedef INT_PTR (WINAPI *PROC)();
 #else
-#define BOOL WINBOOL
+  typedef int (WINAPI *FARPROC)();
+  typedef int (WINAPI *NEARPROC)();
+  typedef int (WINAPI *PROC)();
 #endif
-typedef unsigned char BYTE;
-#endif /* ndef XFree86Server */
-typedef BOOL *PBOOL,*LPBOOL;
-typedef unsigned short WORD;
-typedef float FLOAT;
-typedef FLOAT *PFLOAT;
-typedef BYTE *PBYTE,*LPBYTE;
-typedef int *PINT,*LPINT;
-typedef WORD *PWORD,*LPWORD;
-typedef long *LPLONG;
-typedef DWORD *PDWORD,*LPDWORD;
-typedef void *PVOID,*LPVOID;
-typedef CONST void *PCVOID,*LPCVOID;
-typedef int INT;
-typedef unsigned int UINT,*PUINT,*LPUINT;
 
-#include <winnt.h>
+  typedef void *HGDIOBJ;
+
+  DECLARE_HANDLE(HKEY);
+  typedef HKEY *PHKEY;
+
+  DECLARE_HANDLE(HACCEL);
+  DECLARE_HANDLE(HBITMAP);
+  DECLARE_HANDLE(HBRUSH);
+  DECLARE_HANDLE(HCOLORSPACE);
+  DECLARE_HANDLE(HDC);
+  DECLARE_HANDLE(HGLRC);
+  DECLARE_HANDLE(HDESK);
+  DECLARE_HANDLE(HENHMETAFILE);
+  DECLARE_HANDLE(HFONT);
+  DECLARE_HANDLE(HICON);
+  DECLARE_HANDLE(HMENU);
+  DECLARE_HANDLE(HMETAFILE);
+  DECLARE_HANDLE(HINSTANCE);
+  typedef HINSTANCE HMODULE;
+  DECLARE_HANDLE(HPALETTE);
+  DECLARE_HANDLE(HPEN);
+  DECLARE_HANDLE(HRGN);
+  DECLARE_HANDLE(HRSRC);
+  DECLARE_HANDLE(HSTR);
+  DECLARE_HANDLE(HTASK);
+  DECLARE_HANDLE(HWINSTA);
+  DECLARE_HANDLE(HKL);
+  DECLARE_HANDLE(HMONITOR);
+  DECLARE_HANDLE(HWINEVENTHOOK);
+  DECLARE_HANDLE(HUMPD);
+
+  typedef int HFILE;
+  typedef HICON HCURSOR;
+  typedef DWORD COLORREF;
+  typedef DWORD *LPCOLORREF;
+
+#define HFILE_ERROR ((HFILE)-1)
+
+  typedef struct tagRECT {
+    LONG left;
+    LONG top;
+    LONG right;
+    LONG bottom;
+  } RECT,*PRECT,*NPRECT,*LPRECT;
+
+  typedef const RECT *LPCRECT;
+
+  typedef struct _RECTL {
+    LONG left;
+    LONG top;
+    LONG right;
+    LONG bottom;
+  } RECTL,*PRECTL,*LPRECTL;
+
+  typedef const RECTL *LPCRECTL;
+
+  typedef struct tagPOINT {
+    LONG x;
+    LONG y;
+  } POINT,*PPOINT,*NPPOINT,*LPPOINT;
+
+  typedef struct _POINTL {
+    LONG x;
+    LONG y;
+  } POINTL,*PPOINTL;
+
+  typedef struct tagSIZE {
+    LONG cx;
+    LONG cy;
+  } SIZE,*PSIZE,*LPSIZE;
+
+  typedef SIZE SIZEL;
+  typedef SIZE *PSIZEL,*LPSIZEL;
+
+  typedef struct tagPOINTS {
+    SHORT x;
+    SHORT y;
+  } POINTS,*PPOINTS,*LPPOINTS;
+
+  typedef struct _FILETIME {
+    DWORD dwLowDateTime;
+    DWORD dwHighDateTime;
+  } FILETIME,*PFILETIME,*LPFILETIME;
+#define _FILETIME_
+
+#define DM_UPDATE 1
+#define DM_COPY 2
+#define DM_PROMPT 4
+#define DM_MODIFY 8
+
+#define DM_IN_BUFFER DM_MODIFY
+#define DM_IN_PROMPT DM_PROMPT
+#define DM_OUT_BUFFER DM_COPY
+#define DM_OUT_DEFAULT DM_UPDATE
 
-typedef UINT WPARAM;
-typedef LONG LPARAM;
-typedef LONG LRESULT;
-#ifndef _HRESULT_DEFINED
-typedef LONG HRESULT;
-#define _HRESULT_DEFINED
-#endif
-#ifndef XFree86Server
-typedef WORD ATOM;
-#endif /* XFree86Server */
-typedef HANDLE HGLOBAL;
-typedef HANDLE HLOCAL;
-typedef HANDLE GLOBALHANDLE;
-typedef HANDLE LOCALHANDLE;
-typedef void *HGDIOBJ;
-DECLARE_HANDLE(HACCEL);
-DECLARE_HANDLE(HBITMAP);
-DECLARE_HANDLE(HBRUSH);
-DECLARE_HANDLE(HCOLORSPACE);
-DECLARE_HANDLE(HDC);
-DECLARE_HANDLE(HGLRC);
-DECLARE_HANDLE(HDESK);
-DECLARE_HANDLE(HENHMETAFILE);
-DECLARE_HANDLE(HFONT);
-DECLARE_HANDLE(HICON);
-DECLARE_HANDLE(HKEY);
-/* FIXME: How to handle these. SM_CMONITORS etc in winuser.h also. */
-/* #if (WINVER >= 0x0500) */
-DECLARE_HANDLE(HMONITOR);
-#define HMONITOR_DECLARED 1
-DECLARE_HANDLE(HTERMINAL);
-DECLARE_HANDLE(HWINEVENTHOOK);
-/* #endif */
-typedef HKEY *PHKEY;
-DECLARE_HANDLE(HMENU);
-DECLARE_HANDLE(HMETAFILE);
-DECLARE_HANDLE(HINSTANCE);
-typedef HINSTANCE HMODULE;
-DECLARE_HANDLE(HPALETTE);
-DECLARE_HANDLE(HPEN);
-DECLARE_HANDLE(HRGN);
-DECLARE_HANDLE(HRSRC);
-DECLARE_HANDLE(HSTR);
-DECLARE_HANDLE(HTASK);
-DECLARE_HANDLE(HWND);
-DECLARE_HANDLE(HWINSTA);
-DECLARE_HANDLE(HKL);
-typedef int HFILE;
-typedef HICON HCURSOR;
-typedef DWORD COLORREF;
-typedef int (WINAPI *FARPROC)();
-typedef int (WINAPI *NEARPROC)();
-typedef int (WINAPI *PROC)();
-typedef struct tagRECT {
-	LONG left;
-	LONG top;
-	LONG right;
-	LONG bottom;
-} RECT,*PRECT,*LPRECT;
-typedef const RECT *LPCRECT;
-typedef struct tagRECTL {
-	LONG left;
-	LONG top;
-	LONG right;
-	LONG bottom;
-} RECTL,*PRECTL,*LPRECTL;
-typedef const RECTL *LPCRECTL;
-typedef struct tagPOINT {
-	LONG x;
-	LONG y;
-} POINT,POINTL,*PPOINT,*LPPOINT,*PPOINTL,*LPPOINTL;
-typedef struct tagSIZE {
-	LONG cx;
-	LONG cy;
-} SIZE,SIZEL,*PSIZE,*LPSIZE,*PSIZEL,*LPSIZEL;
-typedef struct tagPOINTS {
-	SHORT x;
-	SHORT y;
-} POINTS,*PPOINTS,*LPPOINTS;
+#define DC_FIELDS 1
+#define DC_PAPERS 2
+#define DC_PAPERSIZE 3
+#define DC_MINEXTENT 4
+#define DC_MAXEXTENT 5
+#define DC_BINS 6
+#define DC_DUPLEX 7
+#define DC_SIZE 8
+#define DC_EXTRA 9
+#define DC_VERSION 10
+#define DC_DRIVER 11
+#define DC_BINNAMES 12
+#define DC_ENUMRESOLUTIONS 13
+#define DC_FILEDEPENDENCIES 14
+#define DC_TRUETYPE 15
+#define DC_PAPERNAMES 16
+#define DC_ORIENTATION 17
+#define DC_COPIES 18
 
 #ifdef __cplusplus
 }