Home | History | Annotate | Download | only in include
      1 /**
      2  * This file is part of the mingw-w64 runtime package.
      3  * No warranty is given; refer to the file DISCLAIMER within this package.
      4  */
      5 #ifndef _WINDEF_
      6 #define _WINDEF_
      7 
      8 #include <minwindef.h>
      9 
     10 #ifdef __cplusplus
     11 extern "C" {
     12 #endif
     13 
     14 #ifndef WINVER
     15 #define WINVER 0x0502
     16 #endif
     17 
     18 /* Make sure winnt.h is included.  */
     19 #ifndef NT_INCLUDED
     20 #include <winnt.h>
     21 #endif
     22 
     23 #ifndef WIN_INTERNAL
     24 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
     25 DECLARE_HANDLE (HWND);
     26 DECLARE_HANDLE (HHOOK);
     27 #endif
     28 #ifdef WINABLE
     29 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
     30 DECLARE_HANDLE (HEVENT);
     31 #endif
     32 #endif
     33 #endif
     34 
     35 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
     36 #ifdef STRICT
     37   typedef void *HGDIOBJ;
     38 #else
     39   DECLARE_HANDLE (HGDIOBJ);
     40 #endif
     41 
     42 DECLARE_HANDLE(HACCEL);
     43 DECLARE_HANDLE(HBITMAP);
     44 DECLARE_HANDLE(HBRUSH);
     45 DECLARE_HANDLE(HCOLORSPACE);
     46 DECLARE_HANDLE(HDC);
     47 DECLARE_HANDLE(HGLRC);
     48 DECLARE_HANDLE(HDESK);
     49 DECLARE_HANDLE(HENHMETAFILE);
     50 DECLARE_HANDLE(HFONT);
     51 DECLARE_HANDLE(HICON);
     52 DECLARE_HANDLE(HMENU);
     53 DECLARE_HANDLE(HPALETTE);
     54 DECLARE_HANDLE(HPEN);
     55 DECLARE_HANDLE(HMONITOR);
     56 DECLARE_HANDLE(HWINEVENTHOOK);
     57 
     58 typedef HICON HCURSOR;
     59 typedef DWORD COLORREF;
     60 #endif
     61 
     62 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
     63 DECLARE_HANDLE(HUMPD);
     64 
     65 typedef DWORD *LPCOLORREF;
     66 
     67 #define HFILE_ERROR ((HFILE)-1)
     68 #endif
     69 
     70 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
     71 typedef struct tagRECT {
     72   LONG left;
     73   LONG top;
     74   LONG right;
     75   LONG bottom;
     76 } RECT,*PRECT,*NPRECT,*LPRECT;
     77 
     78 typedef const RECT *LPCRECT;
     79 
     80 typedef struct _RECTL {
     81   LONG left;
     82   LONG top;
     83   LONG right;
     84   LONG bottom;
     85 } RECTL,*PRECTL,*LPRECTL;
     86 
     87 typedef const RECTL *LPCRECTL;
     88 
     89 typedef struct tagPOINT {
     90   LONG x;
     91   LONG y;
     92 } POINT,*PPOINT,*NPPOINT,*LPPOINT;
     93 
     94 typedef struct _POINTL {
     95   LONG x;
     96   LONG y;
     97 } POINTL,*PPOINTL;
     98 
     99 typedef struct tagSIZE {
    100   LONG cx;
    101   LONG cy;
    102 } SIZE,*PSIZE,*LPSIZE;
    103 
    104 typedef SIZE SIZEL;
    105 typedef SIZE *PSIZEL,*LPSIZEL;
    106 
    107 typedef struct tagPOINTS {
    108   SHORT x;
    109   SHORT y;
    110 } POINTS,*PPOINTS,*LPPOINTS;
    111 #endif
    112 
    113 #define DM_UPDATE 1
    114 #define DM_COPY 2
    115 #define DM_PROMPT 4
    116 #define DM_MODIFY 8
    117 
    118 #define DM_IN_BUFFER DM_MODIFY
    119 #define DM_IN_PROMPT DM_PROMPT
    120 #define DM_OUT_BUFFER DM_COPY
    121 #define DM_OUT_DEFAULT DM_UPDATE
    122 
    123 #define DC_FIELDS 1
    124 #define DC_PAPERS 2
    125 #define DC_PAPERSIZE 3
    126 #define DC_MINEXTENT 4
    127 #define DC_MAXEXTENT 5
    128 #define DC_BINS 6
    129 #define DC_DUPLEX 7
    130 #define DC_SIZE 8
    131 #define DC_EXTRA 9
    132 #define DC_VERSION 10
    133 #define DC_DRIVER 11
    134 #define DC_BINNAMES 12
    135 #define DC_ENUMRESOLUTIONS 13
    136 #define DC_FILEDEPENDENCIES 14
    137 #define DC_TRUETYPE 15
    138 #define DC_PAPERNAMES 16
    139 #define DC_ORIENTATION 17
    140 #define DC_COPIES 18
    141 
    142 #ifdef __cplusplus
    143 }
    144 #endif
    145 
    146 #endif /* _WINDEF_ */
    147 
    148