69 lines
2.1 KiB
C
69 lines
2.1 KiB
C
//===========================================================================
|
|
//
|
|
// Copyright (c) Microsoft Corporation 1991-1998
|
|
//
|
|
// File: shlobj.h
|
|
//
|
|
//===========================================================================
|
|
|
|
//;begin_both
|
|
#ifndef RC_INVOKED
|
|
#pragma pack(1) /* Assume byte packing throughout */
|
|
#endif /* !RC_INVOKED */
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" { /* Assume C declarations for C++ */
|
|
#endif /* __cplusplus */
|
|
//;end_both
|
|
|
|
|
|
// --- IExtractImage
|
|
//-------------------------------------------------------------------------
|
|
//
|
|
// IThumbnail interface
|
|
//
|
|
//
|
|
// [Member functions]
|
|
//
|
|
// IThumbnail::Init(HWND hwnd, UINT uMsg)
|
|
// Must initialize interface before use. The hwnd given will receive the
|
|
// uMsg message when the bitmap is computed (cf. GetBitmap()).
|
|
//
|
|
// IThumbnail::GetBitmap(LPCWSTR pwszFile, DWORD dwItem, LONG lWidth, LONG lHeight)
|
|
// Call this function to actually compute and return the bitmap. pszFile is
|
|
// the file UNC whose bitmap is to be computed. lWidth and lHeight are the
|
|
// width and height respectively of the rectangle containing the thumbnail,
|
|
// i.e. the size of the resultant bitmap. When the bitmap is computed, the
|
|
// uMsg is sent to the hwnd (cf. Init()) where LPARAM is the HBITMAP, and
|
|
// WPARAM is dwItem (so it's an ID to identify the bitmap).
|
|
// NOTE: Call GetBitmap(NULL,...) to cancel any pending requests.
|
|
//
|
|
//-------------------------------------------------------------------------
|
|
|
|
#undef INTERFACE
|
|
#define INTERFACE IThumbnail
|
|
|
|
DECLARE_INTERFACE_(IThumbnail, IUnknown)
|
|
{
|
|
// *** IUnknown methods ***
|
|
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID *ppvObj) PURE;
|
|
STDMETHOD_(ULONG, AddRef) (THIS) PURE;
|
|
STDMETHOD_(ULONG, Release) (THIS) PURE;
|
|
|
|
// *** IThumbnail specific methods ***
|
|
STDMETHOD(Init) (THIS_ HWND hwnd, UINT uMsg) PURE;
|
|
STDMETHOD(GetBitmap) (THIS_ LPCWSTR wszFile, DWORD dwItem, LONG lWidth, LONG lHeight) PURE;
|
|
};
|
|
|
|
|
|
//;begin_both
|
|
#ifdef __cplusplus
|
|
}
|
|
|
|
#endif /* __cplusplus */
|
|
|
|
#ifndef RC_INVOKED
|
|
#pragma pack()
|
|
#endif /* !RC_INVOKED */
|
|
//;end_both
|