master
  1/*** Autogenerated by WIDL 10.4 from include/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
 27extern "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>
 53typedef 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
 64typedef SHITEMID *LPSHITEMID;
 65typedef const SHITEMID *LPCSHITEMID;
 66
 67#include <pshpack1.h>
 68typedef 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
 77typedef ITEMIDLIST ITEMIDLIST_RELATIVE;
 78typedef ITEMIDLIST ITEMID_CHILD;
 79typedef ITEMIDLIST ITEMIDLIST_ABSOLUTE;
 80#endif
 81#include <poppack.h>
 82
 83typedef BYTE_BLOB *wirePIDL;
 84typedef ITEMIDLIST *LPITEMIDLIST;
 85typedef const ITEMIDLIST *LPCITEMIDLIST;
 86#if defined(STRICT_TYPED_ITEMIDS) && defined(__cplusplus)
 87typedef ITEMIDLIST_ABSOLUTE *PIDLIST_ABSOLUTE;
 88typedef const ITEMIDLIST_ABSOLUTE *PCIDLIST_ABSOLUTE;
 89typedef const ITEMIDLIST_ABSOLUTE *PCUIDLIST_ABSOLUTE;
 90typedef ITEMIDLIST_RELATIVE *PIDLIST_RELATIVE;
 91typedef const ITEMIDLIST_RELATIVE *PCIDLIST_RELATIVE;
 92typedef ITEMIDLIST_RELATIVE *PUIDLIST_RELATIVE;
 93typedef const ITEMIDLIST_RELATIVE *PCUIDLIST_RELATIVE;
 94typedef ITEMID_CHILD *PITEMID_CHILD;
 95typedef const ITEMID_CHILD *PCITEMID_CHILD;
 96typedef ITEMID_CHILD *PUITEMID_CHILD;
 97typedef const ITEMID_CHILD *PCUITEMID_CHILD;
 98typedef const PCUITEMID_CHILD *PCUITEMID_CHILD_ARRAY;
 99typedef const PCUIDLIST_RELATIVE *PCUIDLIST_RELATIVE_ARRAY;
100typedef const PCIDLIST_ABSOLUTE *PCIDLIST_ABSOLUTE_ARRAY;
101typedef 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
121typedef 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;
133typedef struct _WIN32_FIND_DATAA *PWIN32_FIND_DATAA;
134typedef struct _WIN32_FIND_DATAA *LPWIN32_FIND_DATAA;
135
136typedef 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;
148typedef struct _WIN32_FIND_DATAW *PWIN32_FIND_DATAW;
149typedef struct _WIN32_FIND_DATAW *LPWIN32_FIND_DATAW;
150#endif
151
152typedef enum tagSTRRET_TYPE {
153    STRRET_WSTR = 0x0,
154    STRRET_OFFSET = 0x1,
155    STRRET_CSTR = 0x2
156} STRRET_TYPE;
157
158#include <pshpack8.h>
159typedef 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
169typedef STRRET *LPSTRRET;
170
171#include <pshpack1.h>
172typedef struct _SHELLDETAILS {
173    int fmt;
174    int cxChar;
175    STRRET str;
176} SHELLDETAILS;
177typedef struct _SHELLDETAILS *LPSHELLDETAILS;
178#include <poppack.h>
179
180#if _WIN32_IE >= _WIN32_IE_IE60SP2
181typedef 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
208typedef DWORD PERCEIVEDFLAG;
209#endif
210
211typedef struct _COMDLG_FILTERSPEC {
212    LPCWSTR pszName;
213    LPCWSTR pszSpec;
214} COMDLG_FILTERSPEC;
215
216typedef GUID KNOWNFOLDERID;
217
218#if 0
219typedef 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
228typedef DWORD KF_REDIRECT_FLAGS;
229
230typedef GUID FOLDERTYPEID;
231
232#if 0
233typedef 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
242typedef GUID TASKOWNERID;
243
244#if 0
245typedef 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
254typedef GUID ELEMENTID;
255
256#if 0
257typedef 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
267typedef 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
284typedef 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
301typedef LOGFONTA LOGFONT;
302#endif
303
304typedef 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
327typedef DWORD SHCOLSTATEF;
328typedef PROPERTYKEY SHCOLUMNID;
329typedef const SHCOLUMNID *LPCSHCOLUMNID;
330
331typedef 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__ */