From b7d611a80f5ab4ea8cc69163547447acd3baa4de Mon Sep 17 00:00:00 2001 From: Nikolay Sivov Date: Sun, 18 Apr 2010 18:54:43 +0400 Subject: [PATCH] shell32: Move IShellIcon definition to idl source. --- include/shlguid.h | 1 - include/shlobj.h | 27 --------------------------- include/shobjidl.idl | 15 +++++++++++++++ 3 files changed, 15 insertions(+), 28 deletions(-) diff --git a/include/shlguid.h b/include/shlguid.h index 88d70ce633f..0055d381989 100644 --- a/include/shlguid.h +++ b/include/shlguid.h @@ -38,7 +38,6 @@ DEFINE_OLEGUID(CGID_ShellDocView, 0x000214D1L, 0, 0); DEFINE_OLEGUID(CGID_ShellServiceObject, 0x000214D2L, 0, 0); DEFINE_OLEGUID(CGID_ExplorerBarDoc, 0x000214D3L, 0, 0); -DEFINE_OLEGUID(IID_IShellIcon, 0x000214E5L, 0, 0); DEFINE_OLEGUID(IID_IShellDetails, 0x000214ECL, 0, 0); DEFINE_OLEGUID(IID_IDelayedRelease, 0x000214EDL, 0, 0); DEFINE_OLEGUID(IID_IShellCopyHookA, 0x000214EFL, 0, 0); diff --git a/include/shlobj.h b/include/shlobj.h index a463ca1c591..df1fc930f24 100644 --- a/include/shlobj.h +++ b/include/shlobj.h @@ -369,33 +369,6 @@ DECLARE_INTERFACE_(IShellDetails, IUnknown) #define IShellDetails_ColumnClick(p,a) (p)->lpVtbl->ColumnClick(p,a) #endif -/**************************************************************************** - * IShellIcon interface - */ - -#define INTERFACE IShellIcon -DECLARE_INTERFACE_(IShellIcon,IUnknown) -{ - /*** IUnknown methods ***/ - STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - /*** IShellIcon methods ***/ - STDMETHOD(GetIconOf)(THIS_ LPCITEMIDLIST pidl, UINT flags, LPINT lpIconIndex) PURE; -}; -#undef INTERFACE - -#if !defined(__cplusplus) || defined(CINTERFACE) -/*** IUnknown methods ***/ -#define IShellIcon_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IShellIcon_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IShellIcon_Release(p) (p)->lpVtbl->Release(p) -/*** IShellIcon methods ***/ -#define IShellIcon_GetIconOf(p,a,b,c) (p)->lpVtbl->GetIconOf(p,a,b,c) -#endif - -typedef IShellIcon *LPSHELLICON; - /* IQueryInfo interface */ #define INTERFACE IQueryInfo DECLARE_INTERFACE_(IQueryInfo,IUnknown) diff --git a/include/shobjidl.idl b/include/shobjidl.idl index a050b39c4a5..7c4fb78ae04 100644 --- a/include/shobjidl.idl +++ b/include/shobjidl.idl @@ -422,6 +422,21 @@ typedef struct } FOLDERSETTINGS, *PFOLDERSETTINGS, *LPFOLDERSETTINGS; typedef const FOLDERSETTINGS *LPCFOLDERSETTINGS; +/***************************************************************************** + * IShellIcon interface + */ +[ + uuid(000214e5-0000-0000-c000-000000000046), + object, + pointer_default(unique) +] +interface IShellIcon : IUnknown +{ + HRESULT GetIconOf( + [in] PCUITEMID_CHILD pidl, + [in] UINT flags, + [out] int *pIconIndex); +} /***************************************************************************** * IShellView interface