zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

windef.h (3819B) - Raw


      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 <winapifamily.h>
      9 #include <minwindef.h>
     10 
     11 #ifdef __cplusplus
     12 extern "C" {
     13 #endif
     14 
     15 #ifndef WINVER
     16 #define WINVER 0x0502
     17 #endif
     18 
     19 /* Make sure winnt.h is included.  */
     20 #ifndef NT_INCLUDED
     21 #include <winnt.h>
     22 #endif
     23 
     24 #ifndef WIN_INTERNAL
     25 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
     26 DECLARE_HANDLE (HWND);
     27 DECLARE_HANDLE (HHOOK);
     28 #endif
     29 #ifdef WINABLE
     30 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
     31 DECLARE_HANDLE (HEVENT);
     32 #endif
     33 #endif
     34 #endif
     35 
     36 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
     37 #ifdef STRICT
     38   typedef void *HGDIOBJ;
     39 #else
     40   DECLARE_HANDLE (HGDIOBJ);
     41 #endif
     42 
     43 DECLARE_HANDLE(HACCEL);
     44 DECLARE_HANDLE(HBITMAP);
     45 DECLARE_HANDLE(HBRUSH);
     46 DECLARE_HANDLE(HCOLORSPACE);
     47 DECLARE_HANDLE(HDC);
     48 DECLARE_HANDLE(HGLRC);
     49 DECLARE_HANDLE(HDESK);
     50 DECLARE_HANDLE(HENHMETAFILE);
     51 DECLARE_HANDLE(HFONT);
     52 DECLARE_HANDLE(HICON);
     53 DECLARE_HANDLE(HMENU);
     54 DECLARE_HANDLE(HPALETTE);
     55 DECLARE_HANDLE(HPEN);
     56 DECLARE_HANDLE(HMONITOR);
     57 #define HMONITOR_DECLARED 1
     58 DECLARE_HANDLE(HWINEVENTHOOK);
     59 
     60 typedef HICON HCURSOR;
     61 typedef DWORD COLORREF;
     62 #endif
     63 
     64 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
     65 DECLARE_HANDLE(HUMPD);
     66 
     67 typedef DWORD *LPCOLORREF;
     68 
     69 #define HFILE_ERROR ((HFILE)-1)
     70 #endif
     71 
     72 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
     73 typedef struct tagRECT {
     74   LONG left;
     75   LONG top;
     76   LONG right;
     77   LONG bottom;
     78 } RECT,*PRECT,*NPRECT,*LPRECT;
     79 
     80 typedef const RECT *LPCRECT;
     81 
     82 typedef struct _RECTL {
     83   LONG left;
     84   LONG top;
     85   LONG right;
     86   LONG bottom;
     87 } RECTL,*PRECTL,*LPRECTL;
     88 
     89 typedef const RECTL *LPCRECTL;
     90 
     91 typedef struct tagPOINT {
     92   LONG x;
     93   LONG y;
     94 } POINT,*PPOINT,*NPPOINT,*LPPOINT;
     95 
     96 typedef struct _POINTL {
     97   LONG x;
     98   LONG y;
     99 } POINTL,*PPOINTL;
    100 
    101 typedef struct tagSIZE {
    102   LONG cx;
    103   LONG cy;
    104 } SIZE,*PSIZE,*LPSIZE;
    105 
    106 typedef SIZE SIZEL;
    107 typedef SIZE *PSIZEL,*LPSIZEL;
    108 
    109 typedef struct tagPOINTS {
    110   SHORT x;
    111   SHORT y;
    112 } POINTS,*PPOINTS,*LPPOINTS;
    113 
    114 #define APP_LOCAL_DEVICE_ID_SIZE 32
    115 
    116 typedef struct APP_LOCAL_DEVICE_ID {
    117   BYTE value[APP_LOCAL_DEVICE_ID_SIZE];
    118 } APP_LOCAL_DEVICE_ID;
    119 
    120 #endif /* WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP) */
    121 
    122 #define DM_UPDATE 1
    123 #define DM_COPY 2
    124 #define DM_PROMPT 4
    125 #define DM_MODIFY 8
    126 
    127 #define DM_IN_BUFFER DM_MODIFY
    128 #define DM_IN_PROMPT DM_PROMPT
    129 #define DM_OUT_BUFFER DM_COPY
    130 #define DM_OUT_DEFAULT DM_UPDATE
    131 
    132 #define DC_FIELDS 1
    133 #define DC_PAPERS 2
    134 #define DC_PAPERSIZE 3
    135 #define DC_MINEXTENT 4
    136 #define DC_MAXEXTENT 5
    137 #define DC_BINS 6
    138 #define DC_DUPLEX 7
    139 #define DC_SIZE 8
    140 #define DC_EXTRA 9
    141 #define DC_VERSION 10
    142 #define DC_DRIVER 11
    143 #define DC_BINNAMES 12
    144 #define DC_ENUMRESOLUTIONS 13
    145 #define DC_FILEDEPENDENCIES 14
    146 #define DC_TRUETYPE 15
    147 #define DC_PAPERNAMES 16
    148 #define DC_ORIENTATION 17
    149 #define DC_COPIES 18
    150 
    151 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
    152 
    153 #define _DPI_AWARENESS_CONTEXTS_
    154 
    155 DECLARE_HANDLE(DPI_AWARENESS_CONTEXT);
    156 
    157 typedef enum DPI_AWARENESS {
    158   DPI_AWARENESS_INVALID = -1,
    159   DPI_AWARENESS_UNAWARE = 0,
    160   DPI_AWARENESS_SYSTEM_AWARE = 1,
    161   DPI_AWARENESS_PER_MONITOR_AWARE = 2
    162 } DPI_AWARENESS;
    163 
    164 #define DPI_AWARENESS_CONTEXT_UNAWARE ((DPI_AWARENESS_CONTEXT)-1)
    165 #define DPI_AWARENESS_CONTEXT_SYSTEM_AWARE ((DPI_AWARENESS_CONTEXT)-2)
    166 #define DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE ((DPI_AWARENESS_CONTEXT)-3)
    167 #define DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2 ((DPI_AWARENESS_CONTEXT)-4)
    168 #define DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED ((DPI_AWARENESS_CONTEXT)-5)
    169 
    170 typedef enum DPI_HOSTING_BEHAVIOR {
    171   DPI_HOSTING_BEHAVIOR_INVALID = -1,
    172   DPI_HOSTING_BEHAVIOR_DEFAULT = 0,
    173   DPI_HOSTING_BEHAVIOR_MIXED = 1
    174 } DPI_HOSTING_BEHAVIOR;
    175 
    176 #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
    177 
    178 #ifdef __cplusplus
    179 }
    180 #endif
    181 
    182 #endif /* _WINDEF_ */