Biswapriyo Nath : include: Update thumbcache.idl file.
Alexandre Julliard
julliard at winehq.org
Thu Jan 23 15:48:49 CST 2020
Module: wine
Branch: master
Commit: 8d1b119b2e3248170a910b0daef92f528aaa63e9
URL: https://source.winehq.org/git/wine.git/?a=commit;h=8d1b119b2e3248170a910b0daef92f528aaa63e9
Author: Biswapriyo Nath <nathbappai at gmail.com>
Date: Tue Jan 22 07:18:00 2019 +0530
include: Update thumbcache.idl file.
Signed-off-by: Biswapriyo Nath <nathbappai at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
include/thumbcache.idl | 137 +++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 137 insertions(+)
diff --git a/include/thumbcache.idl b/include/thumbcache.idl
index f79d879ab0..38cf23da17 100644
--- a/include/thumbcache.idl
+++ b/include/thumbcache.idl
@@ -18,6 +18,7 @@
import "oaidl.idl";
import "shtypes.idl";
+import "shobjidl.idl";
typedef [v1_enum] enum WTS_FLAGS
{
@@ -40,9 +41,145 @@ typedef [v1_enum] enum WTS_FLAGS
WTS_SCALEUP = 0x00010000,
} WTS_FLAGS;
+cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(WTS_FLAGS)")
+
+typedef [v1_enum] enum WTS_CACHEFLAGS
+{
+ WTS_DEFAULT = 0x00000000,
+ WTS_LOWQUALITY = 0x00000001,
+ WTS_CACHED = 0x00000002,
+} WTS_CACHEFLAGS;
+
+cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(WTS_CACHEFLAGS)")
+
+typedef [v1_enum] enum WTS_CONTEXTFLAGS
+{
+ WTSCF_DEFAULT = 0x00000000,
+ WTSCF_APPSTYLE = 0x00000001,
+ WTSCF_SQUARE = 0x00000002,
+ WTSCF_WIDE = 0x00000004,
+ WTSCF_FAST = 0x00000008,
+} WTS_CONTEXTFLAGS;
+
+cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(WTS_CONTEXTFLAGS)")
+
typedef [v1_enum] enum WTS_ALPHATYPE
{
WTSAT_UNKNOWN = 0,
WTSAT_RGB = 1,
WTSAT_ARGB = 2
} WTS_ALPHATYPE;
+
+typedef struct WTS_THUMBNAILID
+{
+ BYTE rgbKey[16];
+} WTS_THUMBNAILID;
+
+
+cpp_quote("#define WTS_E_FAILEDEXTRACTION MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb200)")
+cpp_quote("#define WTS_E_EXTRACTIONTIMEDOUT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb201)")
+cpp_quote("#define WTS_E_SURROGATEUNAVAILABLE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb202)")
+cpp_quote("#define WTS_E_FASTEXTRACTIONNOTSUPPORTED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb203)")
+cpp_quote("#define WTS_E_DATAFILEUNAVAILABLE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb204)")
+cpp_quote("#define WTS_E_EXTRACTIONPENDING MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb205)")
+cpp_quote("#define WTS_E_EXTRACTIONBLOCKED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xb206)")
+
+[
+ uuid(091162a4-bc96-411f-aae8-c5122cd03363),
+ pointer_default(unique),
+]
+interface ISharedBitmap : IUnknown
+{
+ HRESULT GetSharedBitmap([out] HBITMAP *phbm);
+ HRESULT GetSize([out] SIZE *pSize);
+ HRESULT GetFormat([out] WTS_ALPHATYPE *pat);
+ HRESULT InitializeBitmap([in] HBITMAP hbm, [in] WTS_ALPHATYPE wtsAT);
+ HRESULT Detach([out] HBITMAP *phbm);
+}
+
+[
+ object,
+ uuid(f676c15d-596a-4ce2-8234-33996f445db1),
+]
+interface IThumbnailCache : IUnknown
+{
+ [local]
+ HRESULT GetThumbnail([in] IShellItem *pShellItem,
+ [in] UINT cxyRequestedThumbSize,
+ [in] WTS_FLAGS flags,
+ [out, unique] ISharedBitmap **ppvThumb,
+ [out, unique] WTS_CACHEFLAGS *pOutFlags,
+ [out, unique] WTS_THUMBNAILID *pThumbnailID);
+
+ [call_as(GetThumbnail)]
+ HRESULT RemoteGetThumbnail([in] IShellItem *pShellItem,
+ [in] UINT cxyRequestedThumbSize,
+ [in] WTS_FLAGS flags,
+ [out] ISharedBitmap **ppvThumb,
+ [out] WTS_CACHEFLAGS *pOutFlags,
+ [out] WTS_THUMBNAILID *pThumbnailID);
+
+ [local]
+ HRESULT GetThumbnailByID([in] WTS_THUMBNAILID thumbnailID,
+ [in] UINT cxyRequestedThumbSize,
+ [out, unique] ISharedBitmap **ppvThumb,
+ [out, unique] WTS_CACHEFLAGS *pOutFlags);
+
+ [call_as(GetThumbnailByID)]
+ HRESULT RemoteGetThumbnailByID([in] WTS_THUMBNAILID thumbnailID,
+ [in] UINT cxyRequestedThumbSize,
+ [out] ISharedBitmap **ppvThumb,
+ [out] WTS_CACHEFLAGS *pOutFlags);
+}
+
+[
+ uuid(e357fccd-a995-4576-b01f-234630154e96),
+]
+interface IThumbnailProvider : IUnknown
+{
+ HRESULT GetThumbnail([in] UINT cx,
+ [out] HBITMAP *phbmp,
+ [out] WTS_ALPHATYPE *pdwAlpha);
+}
+
+[
+ uuid(f4376f00-bef5-4d45-80f3-1e023bbf1209),
+]
+interface IThumbnailSettings : IUnknown
+{
+ HRESULT SetContext([in] WTS_CONTEXTFLAGS dwContext);
+}
+
+[
+ uuid(0f03f8fe-2b26-46f0-965a-212aa8d66b76),
+ object,
+ pointer_default(unique)
+]
+interface IThumbnailCachePrimer : IUnknown
+{
+ HRESULT PageInThumbnail([in] IShellItem *psi,
+ [in] WTS_FLAGS wtsFlags,
+ [in] UINT cxyRequestedThumbSize);
+}
+
+[
+ uuid(4c857096-0514-4d4d-abd5-dfaaa3c326d2)
+]
+library ThumbCacheLib
+{
+ [
+ uuid(50ef4544-ac9f-4a8e-b21b-8a26180db13f)
+ ]
+ coclass LocalThumbnailCache
+ {
+ interface IThumbnailCache;
+ }
+
+ [
+ uuid(4db26476-6787-4046-b836-e8412a9e8a27)
+ ]
+ coclass SharedBitmap
+ {
+ interface ISharedBitmap;
+ }
+}
More information about the wine-cvs
mailing list