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