shtypes.h 8.7 KB

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