1 /*** Autogenerated by WIDL 4.5 from shtypes.idl - Do not edit ***/ 2 3 #ifdef _WIN32 4 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 5 #define __REQUIRED_RPCNDR_H_VERSION__ 475 6 #endif 7 #include <rpc.h> 8 #include <rpcndr.h> 9 #endif 10 11 #ifndef COM_NO_WINDOWS_H 12 #include <windows.h> 13 #include <ole2.h> 14 #endif 15 16 #ifndef __shtypes_h__ 17 #define __shtypes_h__ 18 19 /* Forward declarations */ 20 21 /* Headers for imported files */ 22 23 #include <unknwn.h> 24 #include <wtypes.h> 25 26 #ifdef __cplusplus 27 extern "C" { 28 #endif 29 30 /** 31 * This file is part of the mingw-w64 runtime package. 32 * No warranty is given; refer to the file DISCLAIMER within this package. 33 */ 34 35 36 #ifndef DUMMYUNIONNAME 37 #ifdef NONAMELESSUNION 38 #define DUMMYUNIONNAME u 39 #define DUMMYUNIONNAME2 u2 40 #define DUMMYUNIONNAME3 u3 41 #define DUMMYUNIONNAME4 u4 42 #define DUMMYUNIONNAME5 u5 43 #else 44 #define DUMMYUNIONNAME 45 #define DUMMYUNIONNAME2 46 #define DUMMYUNIONNAME3 47 #define DUMMYUNIONNAME4 48 #define DUMMYUNIONNAME5 49 #endif 50 #endif 51 52 #include <pshpack1.h> 53 typedef struct _SHITEMID { 54 USHORT cb; 55 BYTE abID[1]; 56 } SHITEMID; 57 #include <poppack.h> 58 59 #if (defined(_X86_) && !defined(__x86_64)) 60 #undef __unaligned 61 #define __unaligned 62 #endif 63 64 typedef SHITEMID *LPSHITEMID; 65 typedef const SHITEMID *LPCSHITEMID; 66 67 #include <pshpack1.h> 68 typedef struct _ITEMIDLIST { 69 SHITEMID mkid; 70 } ITEMIDLIST; 71 72 #if defined(STRICT_TYPED_ITEMIDS) && defined(__cplusplus) 73 typedef struct _ITEMIDLIST_RELATIVE : ITEMIDLIST { } ITEMIDLIST_RELATIVE; 74 typedef struct _ITEMID_CHILD : ITEMIDLIST_RELATIVE { } ITEMID_CHILD; 75 typedef struct _ITEMIDLIST_ABSOLUTE : ITEMIDLIST_RELATIVE { } ITEMIDLIST_ABSOLUTE; 76 #else 77 typedef ITEMIDLIST ITEMIDLIST_RELATIVE; 78 typedef ITEMIDLIST ITEMID_CHILD; 79 typedef ITEMIDLIST ITEMIDLIST_ABSOLUTE; 80 #endif 81 #include <poppack.h> 82 83 typedef BYTE_BLOB *wirePIDL; 84 typedef ITEMIDLIST *LPITEMIDLIST; 85 typedef const ITEMIDLIST *LPCITEMIDLIST; 86 #if defined(STRICT_TYPED_ITEMIDS) && defined(__cplusplus) 87 typedef ITEMIDLIST_ABSOLUTE *PIDLIST_ABSOLUTE; 88 typedef const ITEMIDLIST_ABSOLUTE *PCIDLIST_ABSOLUTE; 89 typedef const ITEMIDLIST_ABSOLUTE *PCUIDLIST_ABSOLUTE; 90 typedef ITEMIDLIST_RELATIVE *PIDLIST_RELATIVE; 91 typedef const ITEMIDLIST_RELATIVE *PCIDLIST_RELATIVE; 92 typedef ITEMIDLIST_RELATIVE *PUIDLIST_RELATIVE; 93 typedef const ITEMIDLIST_RELATIVE *PCUIDLIST_RELATIVE; 94 typedef ITEMID_CHILD *PITEMID_CHILD; 95 typedef const ITEMID_CHILD *PCITEMID_CHILD; 96 typedef ITEMID_CHILD *PUITEMID_CHILD; 97 typedef const ITEMID_CHILD *PCUITEMID_CHILD; 98 typedef const PCUITEMID_CHILD *PCUITEMID_CHILD_ARRAY; 99 typedef const PCUIDLIST_RELATIVE *PCUIDLIST_RELATIVE_ARRAY; 100 typedef const PCIDLIST_ABSOLUTE *PCIDLIST_ABSOLUTE_ARRAY; 101 typedef const PCUIDLIST_ABSOLUTE *PCUIDLIST_ABSOLUTE_ARRAY; 102 #else 103 #define PIDLIST_ABSOLUTE LPITEMIDLIST 104 #define PCIDLIST_ABSOLUTE LPCITEMIDLIST 105 #define PCUIDLIST_ABSOLUTE LPCITEMIDLIST 106 #define PIDLIST_RELATIVE LPITEMIDLIST 107 #define PCIDLIST_RELATIVE LPCITEMIDLIST 108 #define PUIDLIST_RELATIVE LPITEMIDLIST 109 #define PCUIDLIST_RELATIVE LPCITEMIDLIST 110 #define PITEMID_CHILD LPITEMIDLIST 111 #define PCITEMID_CHILD LPCITEMIDLIST 112 #define PUITEMID_CHILD LPITEMIDLIST 113 #define PCUITEMID_CHILD LPCITEMIDLIST 114 #define PCUITEMID_CHILD_ARRAY LPCITEMIDLIST * 115 #define PCUIDLIST_RELATIVE_ARRAY LPCITEMIDLIST * 116 #define PCIDLIST_ABSOLUTE_ARRAY LPCITEMIDLIST * 117 #define PCUIDLIST_ABSOLUTE_ARRAY LPCITEMIDLIST * 118 #endif 119 120 #if 0 121 typedef struct _WIN32_FIND_DATAA { 122 DWORD dwFileAttributes; 123 FILETIME ftCreationTime; 124 FILETIME ftLastAccessTime; 125 FILETIME ftLastWriteTime; 126 DWORD nFileSizeHigh; 127 DWORD nFileSizeLow; 128 DWORD dwReserved0; 129 DWORD dwReserved1; 130 CHAR cFileName[260]; 131 CHAR cAlternateFileName[14]; 132 } WIN32_FIND_DATAA; 133 typedef struct _WIN32_FIND_DATAA *PWIN32_FIND_DATAA; 134 typedef struct _WIN32_FIND_DATAA *LPWIN32_FIND_DATAA; 135 136 typedef struct _WIN32_FIND_DATAW { 137 DWORD dwFileAttributes; 138 FILETIME ftCreationTime; 139 FILETIME ftLastAccessTime; 140 FILETIME ftLastWriteTime; 141 DWORD nFileSizeHigh; 142 DWORD nFileSizeLow; 143 DWORD dwReserved0; 144 DWORD dwReserved1; 145 WCHAR cFileName[260]; 146 WCHAR cAlternateFileName[14]; 147 } WIN32_FIND_DATAW; 148 typedef struct _WIN32_FIND_DATAW *PWIN32_FIND_DATAW; 149 typedef struct _WIN32_FIND_DATAW *LPWIN32_FIND_DATAW; 150 #endif 151 152 typedef enum tagSTRRET_TYPE { 153 STRRET_WSTR = 0x0, 154 STRRET_OFFSET = 0x1, 155 STRRET_CSTR = 0x2 156 } STRRET_TYPE; 157 158 #include <pshpack8.h> 159 typedef struct _STRRET { 160 UINT uType; 161 __C89_NAMELESS union { 162 LPWSTR pOleStr; 163 UINT uOffset; 164 char cStr[260]; 165 } __C89_NAMELESSUNIONNAME; 166 } STRRET; 167 #include <poppack.h> 168 169 typedef STRRET *LPSTRRET; 170 171 #include <pshpack1.h> 172 typedef struct _SHELLDETAILS { 173 int fmt; 174 int cxChar; 175 STRRET str; 176 } SHELLDETAILS; 177 typedef struct _SHELLDETAILS *LPSHELLDETAILS; 178 #include <poppack.h> 179 180 #if _WIN32_IE >= _WIN32_IE_IE60SP2 181 typedef enum tagPERCEIVED { 182 PERCEIVED_TYPE_FIRST = -3, 183 PERCEIVED_TYPE_CUSTOM = -3, 184 PERCEIVED_TYPE_UNSPECIFIED = -2, 185 PERCEIVED_TYPE_FOLDER = -1, 186 PERCEIVED_TYPE_UNKNOWN = 0, 187 PERCEIVED_TYPE_TEXT = 1, 188 PERCEIVED_TYPE_IMAGE = 2, 189 PERCEIVED_TYPE_AUDIO = 3, 190 PERCEIVED_TYPE_VIDEO = 4, 191 PERCEIVED_TYPE_COMPRESSED = 5, 192 PERCEIVED_TYPE_DOCUMENT = 6, 193 PERCEIVED_TYPE_SYSTEM = 7, 194 PERCEIVED_TYPE_APPLICATION = 8, 195 PERCEIVED_TYPE_GAMEMEDIA = 9, 196 PERCEIVED_TYPE_CONTACTS = 10, 197 PERCEIVED_TYPE_LAST = 10 198 } PERCEIVED; 199 200 #define PERCEIVEDFLAG_UNDEFINED 0x0000 201 #define PERCEIVEDFLAG_SOFTCODED 0x0001 202 #define PERCEIVEDFLAG_HARDCODED 0x0002 203 #define PERCEIVEDFLAG_NATIVESUPPORT 0x0004 204 #define PERCEIVEDFLAG_GDIPLUS 0x0010 205 #define PERCEIVEDFLAG_WMSDK 0x0020 206 #define PERCEIVEDFLAG_ZIPFOLDER 0x0040 207 208 typedef DWORD PERCEIVEDFLAG; 209 #endif 210 211 typedef struct _COMDLG_FILTERSPEC { 212 LPCWSTR pszName; 213 LPCWSTR pszSpec; 214 } COMDLG_FILTERSPEC; 215 216 typedef GUID KNOWNFOLDERID; 217 218 #if 0 219 typedef KNOWNFOLDERID *REFKNOWNFOLDERID; 220 #endif 221 222 #ifdef __cplusplus 223 #define REFKNOWNFOLDERID const KNOWNFOLDERID & 224 #else 225 #define REFKNOWNFOLDERID const KNOWNFOLDERID * __MIDL_CONST 226 #endif 227 228 typedef DWORD KF_REDIRECT_FLAGS; 229 230 typedef GUID FOLDERTYPEID; 231 232 #if 0 233 typedef FOLDERTYPEID *REFFOLDERTYPEID; 234 #endif 235 236 #ifdef __cplusplus 237 #define REFFOLDERTYPEID const FOLDERTYPEID & 238 #else 239 #define REFFOLDERTYPEID const FOLDERTYPEID * __MIDL_CONST 240 #endif 241 242 typedef GUID TASKOWNERID; 243 244 #if 0 245 typedef TASKOWNERID *REFTASKOWNERID; 246 #endif 247 248 #ifdef __cplusplus 249 #define REFTASKOWNERID const TASKOWNERID & 250 #else 251 #define REFTASKOWNERID const TASKOWNERID * __MIDL_CONST 252 #endif 253 254 typedef GUID ELEMENTID; 255 256 #if 0 257 typedef ELEMENTID *REFELEMENTID; 258 #endif 259 260 #ifdef __cplusplus 261 #define REFELEMENTID const ELEMENTID & 262 #else 263 #define REFELEMENTID const ELEMENTID * __MIDL_CONST 264 #endif 265 266 #ifndef LF_FACESIZE 267 typedef struct tagLOGFONTA { 268 LONG lfHeight; 269 LONG lfWidth; 270 LONG lfEscapement; 271 LONG lfOrientation; 272 LONG lfWeight; 273 BYTE lfItalic; 274 BYTE lfUnderline; 275 BYTE lfStrikeOut; 276 BYTE lfCharSet; 277 BYTE lfOutPrecision; 278 BYTE lfClipPrecision; 279 BYTE lfQuality; 280 BYTE lfPitchAndFamily; 281 CHAR lfFaceName[32]; 282 } LOGFONTA; 283 284 typedef struct tagLOGFONTW { 285 LONG lfHeight; 286 LONG lfWidth; 287 LONG lfEscapement; 288 LONG lfOrientation; 289 LONG lfWeight; 290 BYTE lfItalic; 291 BYTE lfUnderline; 292 BYTE lfStrikeOut; 293 BYTE lfCharSet; 294 BYTE lfOutPrecision; 295 BYTE lfClipPrecision; 296 BYTE lfQuality; 297 BYTE lfPitchAndFamily; 298 WCHAR lfFaceName[32]; 299 } LOGFONTW; 300 301 typedef LOGFONTA LOGFONT; 302 #endif 303 304 typedef enum tagSHCOLSTATE { 305 SHCOLSTATE_DEFAULT = 0x0, 306 SHCOLSTATE_TYPE_STR = 0x1, 307 SHCOLSTATE_TYPE_INT = 0x2, 308 SHCOLSTATE_TYPE_DATE = 0x3, 309 SHCOLSTATE_TYPEMASK = 0xf, 310 SHCOLSTATE_ONBYDEFAULT = 0x10, 311 SHCOLSTATE_SLOW = 0x20, 312 SHCOLSTATE_EXTENDED = 0x40, 313 SHCOLSTATE_SECONDARYUI = 0x80, 314 SHCOLSTATE_HIDDEN = 0x100, 315 SHCOLSTATE_PREFER_VARCMP = 0x200, 316 SHCOLSTATE_PREFER_FMTCMP = 0x400, 317 SHCOLSTATE_NOSORTBYFOLDERNESS = 0x800, 318 SHCOLSTATE_VIEWONLY = 0x10000, 319 SHCOLSTATE_BATCHREAD = 0x20000, 320 SHCOLSTATE_NO_GROUPBY = 0x40000, 321 SHCOLSTATE_FIXED_WIDTH = 0x1000, 322 SHCOLSTATE_NODPISCALE = 0x2000, 323 SHCOLSTATE_FIXED_RATIO = 0x4000, 324 SHCOLSTATE_DISPLAYMASK = 0xf000 325 } SHCOLSTATE; 326 327 typedef DWORD SHCOLSTATEF; 328 typedef PROPERTYKEY SHCOLUMNID; 329 typedef const SHCOLUMNID *LPCSHCOLUMNID; 330 331 typedef enum DEVICE_SCALE_FACTOR { 332 DEVICE_SCALE_FACTOR_INVALID = 0, 333 SCALE_100_PERCENT = 100, 334 SCALE_120_PERCENT = 120, 335 SCALE_125_PERCENT = 125, 336 SCALE_140_PERCENT = 140, 337 SCALE_150_PERCENT = 150, 338 SCALE_160_PERCENT = 160, 339 SCALE_175_PERCENT = 175, 340 SCALE_180_PERCENT = 180, 341 SCALE_200_PERCENT = 200, 342 SCALE_225_PERCENT = 225, 343 SCALE_250_PERCENT = 250, 344 SCALE_300_PERCENT = 300, 345 SCALE_350_PERCENT = 350, 346 SCALE_400_PERCENT = 400, 347 SCALE_450_PERCENT = 450, 348 SCALE_500_PERCENT = 500 349 } DEVICE_SCALE_FACTOR; 350 /* Begin additional prototypes for all interfaces */ 351 352 353 /* End additional prototypes */ 354 355 #ifdef __cplusplus 356 } 357 #endif 358 359 #endif /* __shtypes_h__ */ 360