Replace the _ICOM_THIS_From macros by inline functions the way it's
already done in shelllink.c.
This commit is contained in:
parent
54508df527
commit
b1a9701bb5
|
@ -55,6 +55,16 @@ typedef struct
|
|||
|
||||
} IShellBrowserImpl;
|
||||
|
||||
static inline IShellBrowserImpl *impl_from_ICommDlgBrowser( ICommDlgBrowser *iface )
|
||||
{
|
||||
return (IShellBrowserImpl *)((char*)iface - FIELD_OFFSET(IShellBrowserImpl, lpVtblCommDlgBrowser));
|
||||
}
|
||||
|
||||
static inline IShellBrowserImpl *impl_from_IServiceProvider( IServiceProvider *iface )
|
||||
{
|
||||
return (IShellBrowserImpl *)((char*)iface - FIELD_OFFSET(IShellBrowserImpl, lpVtblServiceProvider));
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* vtable
|
||||
*/
|
||||
|
@ -728,11 +738,11 @@ static HRESULT WINAPI IShellBrowserImpl_ICommDlgBrowser_QueryInterface(
|
|||
REFIID riid,
|
||||
LPVOID *ppvObj)
|
||||
{
|
||||
_ICOM_THIS_FromICommDlgBrowser(IShellBrowser,iface);
|
||||
IShellBrowserImpl *This = impl_from_ICommDlgBrowser(iface);
|
||||
|
||||
TRACE("(%p)\n", This);
|
||||
|
||||
return IShellBrowserImpl_QueryInterface(This,riid,ppvObj);
|
||||
return IShellBrowserImpl_QueryInterface((IShellBrowser *)This,riid,ppvObj);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
@ -740,11 +750,11 @@ static HRESULT WINAPI IShellBrowserImpl_ICommDlgBrowser_QueryInterface(
|
|||
*/
|
||||
static ULONG WINAPI IShellBrowserImpl_ICommDlgBrowser_AddRef(ICommDlgBrowser * iface)
|
||||
{
|
||||
_ICOM_THIS_FromICommDlgBrowser(IShellBrowser,iface);
|
||||
IShellBrowserImpl *This = impl_from_ICommDlgBrowser(iface);
|
||||
|
||||
TRACE("(%p)\n", This);
|
||||
|
||||
return IShellBrowserImpl_AddRef(This);
|
||||
return IShellBrowserImpl_AddRef((IShellBrowser *)This);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
@ -752,11 +762,11 @@ static ULONG WINAPI IShellBrowserImpl_ICommDlgBrowser_AddRef(ICommDlgBrowser * i
|
|||
*/
|
||||
static ULONG WINAPI IShellBrowserImpl_ICommDlgBrowser_Release(ICommDlgBrowser * iface)
|
||||
{
|
||||
_ICOM_THIS_FromICommDlgBrowser(IShellBrowser,iface);
|
||||
IShellBrowserImpl *This = impl_from_ICommDlgBrowser(iface);
|
||||
|
||||
TRACE("(%p)\n", This);
|
||||
|
||||
return IShellBrowserImpl_Release(This);
|
||||
return IShellBrowserImpl_Release((IShellBrowser *)This);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
@ -770,7 +780,7 @@ static HRESULT WINAPI IShellBrowserImpl_ICommDlgBrowser_OnDefaultCommand(ICommDl
|
|||
LPITEMIDLIST pidl;
|
||||
FileOpenDlgInfos *fodInfos;
|
||||
|
||||
_ICOM_THIS_FromICommDlgBrowser(IShellBrowserImpl,iface);
|
||||
IShellBrowserImpl *This = impl_from_ICommDlgBrowser(iface);
|
||||
|
||||
TRACE("(%p)\n", This);
|
||||
|
||||
|
@ -812,7 +822,7 @@ static HRESULT WINAPI IShellBrowserImpl_ICommDlgBrowser_OnStateChange(ICommDlgBr
|
|||
ULONG uChange)
|
||||
{
|
||||
|
||||
_ICOM_THIS_FromICommDlgBrowser(IShellBrowserImpl,iface);
|
||||
IShellBrowserImpl *This = impl_from_ICommDlgBrowser(iface);
|
||||
|
||||
TRACE("(%p shv=%p)\n", This, ppshv);
|
||||
|
||||
|
@ -855,7 +865,7 @@ static HRESULT WINAPI IShellBrowserImpl_ICommDlgBrowser_IncludeObject(ICommDlgBr
|
|||
STRRET str;
|
||||
WCHAR szPathW[MAX_PATH];
|
||||
|
||||
_ICOM_THIS_FromICommDlgBrowser(IShellBrowserImpl,iface);
|
||||
IShellBrowserImpl *This = impl_from_ICommDlgBrowser(iface);
|
||||
|
||||
TRACE("(%p)\n", This);
|
||||
|
||||
|
@ -895,7 +905,7 @@ static HRESULT IShellBrowserImpl_ICommDlgBrowser_OnSelChange(ICommDlgBrowser *if
|
|||
{
|
||||
FileOpenDlgInfos *fodInfos;
|
||||
|
||||
_ICOM_THIS_FromICommDlgBrowser(IShellBrowserImpl,iface);
|
||||
IShellBrowserImpl *This = impl_from_ICommDlgBrowser(iface);
|
||||
|
||||
fodInfos = (FileOpenDlgInfos *) GetPropA(This->hwndOwner,FileOpenDlgInfosStr);
|
||||
TRACE("(%p do=%p view=%p)\n", This, fodInfos->Shell.FOIDataObject, fodInfos->Shell.FOIShellView);
|
||||
|
@ -942,11 +952,11 @@ static HRESULT WINAPI IShellBrowserImpl_IServiceProvider_QueryInterface(
|
|||
REFIID riid,
|
||||
LPVOID *ppvObj)
|
||||
{
|
||||
_ICOM_THIS_FromIServiceProvider(IShellBrowser,iface);
|
||||
IShellBrowserImpl *This = impl_from_IServiceProvider(iface);
|
||||
|
||||
FIXME("(%p)\n", This);
|
||||
|
||||
return IShellBrowserImpl_QueryInterface(This,riid,ppvObj);
|
||||
return IShellBrowserImpl_QueryInterface((IShellBrowser *)This,riid,ppvObj);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
@ -954,11 +964,11 @@ static HRESULT WINAPI IShellBrowserImpl_IServiceProvider_QueryInterface(
|
|||
*/
|
||||
static ULONG WINAPI IShellBrowserImpl_IServiceProvider_AddRef(IServiceProvider * iface)
|
||||
{
|
||||
_ICOM_THIS_FromIServiceProvider(IShellBrowser,iface);
|
||||
IShellBrowserImpl *This = impl_from_IServiceProvider(iface);
|
||||
|
||||
FIXME("(%p)\n", This);
|
||||
|
||||
return IShellBrowserImpl_AddRef(This);
|
||||
return IShellBrowserImpl_AddRef((IShellBrowser *)This);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
@ -966,11 +976,11 @@ static ULONG WINAPI IShellBrowserImpl_IServiceProvider_AddRef(IServiceProvider *
|
|||
*/
|
||||
static ULONG WINAPI IShellBrowserImpl_IServiceProvider_Release(IServiceProvider * iface)
|
||||
{
|
||||
_ICOM_THIS_FromIServiceProvider(IShellBrowser,iface);
|
||||
IShellBrowserImpl *This = impl_from_IServiceProvider(iface);
|
||||
|
||||
FIXME("(%p)\n", This);
|
||||
|
||||
return IShellBrowserImpl_Release(This);
|
||||
return IShellBrowserImpl_Release((IShellBrowser *)This);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
@ -990,14 +1000,14 @@ static HRESULT WINAPI IShellBrowserImpl_IServiceProvider_QueryService(
|
|||
REFIID riid,
|
||||
void** ppv)
|
||||
{
|
||||
_ICOM_THIS_FromIServiceProvider(IShellBrowser,iface);
|
||||
IShellBrowserImpl *This = impl_from_IServiceProvider(iface);
|
||||
|
||||
FIXME("(%p)\n\t%s\n\t%s\n", This,debugstr_guid(guidService), debugstr_guid(riid) );
|
||||
|
||||
*ppv = NULL;
|
||||
if(guidService && IsEqualIID(guidService, &SID_STopLevelBrowser))
|
||||
{
|
||||
return IShellBrowserImpl_QueryInterface(This,riid,ppv);
|
||||
return IShellBrowserImpl_QueryInterface((IShellBrowser *)This,riid,ppv);
|
||||
}
|
||||
FIXME("(%p) unknown interface requested\n", This);
|
||||
return E_NOINTERFACE;
|
||||
|
|
|
@ -37,11 +37,6 @@
|
|||
/***********************************************************************
|
||||
* Defines and global variables
|
||||
*/
|
||||
#define _ICommDlgBrowser_Offset ((int)(&(((IShellBrowserImpl*)0)->lpVtblCommDlgBrowser)))
|
||||
#define _ICOM_THIS_FromICommDlgBrowser(class, name) class* This = (class*)(((char*)name)-_ICommDlgBrowser_Offset);
|
||||
|
||||
#define _IServiceProvider_Offset ((int)(&(((IShellBrowserImpl*)0)->lpVtblServiceProvider)))
|
||||
#define _ICOM_THIS_FromIServiceProvider(class, name) class* This = (class*)(((char*)name)-_IServiceProvider_Offset);
|
||||
|
||||
/* dialog internal property */
|
||||
|
||||
|
|
|
@ -53,6 +53,11 @@ typedef struct AntiMonikerImpl{
|
|||
|
||||
} AntiMonikerImpl;
|
||||
|
||||
static inline IMoniker *impl_from_IROTData( IROTData *iface )
|
||||
{
|
||||
return (IMoniker *)((char*)iface - FIELD_OFFSET(AntiMonikerImpl, lpvtbl2));
|
||||
}
|
||||
|
||||
|
||||
/*******************************************************************************
|
||||
* AntiMoniker_QueryInterface
|
||||
|
@ -485,7 +490,7 @@ AntiMonikerImpl_IsSystemMoniker(IMoniker* iface,DWORD* pwdMksys)
|
|||
static HRESULT WINAPI
|
||||
AntiMonikerROTDataImpl_QueryInterface(IROTData *iface,REFIID riid,VOID** ppvObject)
|
||||
{
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p,%p,%p)\n",iface,riid,ppvObject);
|
||||
|
||||
|
@ -497,7 +502,7 @@ AntiMonikerROTDataImpl_QueryInterface(IROTData *iface,REFIID riid,VOID** ppvObje
|
|||
*/
|
||||
static ULONG WINAPI AntiMonikerROTDataImpl_AddRef(IROTData *iface)
|
||||
{
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p)\n",iface);
|
||||
|
||||
|
@ -509,7 +514,7 @@ static ULONG WINAPI AntiMonikerROTDataImpl_AddRef(IROTData *iface)
|
|||
*/
|
||||
static ULONG WINAPI AntiMonikerROTDataImpl_Release(IROTData* iface)
|
||||
{
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p)\n",iface);
|
||||
|
||||
|
|
|
@ -80,6 +80,10 @@ typedef struct EnumMonikerImpl{
|
|||
|
||||
} EnumMonikerImpl;
|
||||
|
||||
static inline IMoniker *impl_from_IROTData( IROTData *iface )
|
||||
{
|
||||
return (IMoniker *)((char*)iface - FIELD_OFFSET(CompositeMonikerImpl, lpvtbl2));
|
||||
}
|
||||
|
||||
static HRESULT EnumMonikerImpl_CreateEnumMoniker(IMoniker** tabMoniker,ULONG tabSize,ULONG currentPos,BOOL leftToRigth,IEnumMoniker ** ppmk);
|
||||
|
||||
|
@ -1208,7 +1212,7 @@ CompositeMonikerROTDataImpl_QueryInterface(IROTData *iface,REFIID riid,
|
|||
VOID** ppvObject)
|
||||
{
|
||||
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p,%p,%p)\n",iface,riid,ppvObject);
|
||||
|
||||
|
@ -1221,7 +1225,7 @@ CompositeMonikerROTDataImpl_QueryInterface(IROTData *iface,REFIID riid,
|
|||
static ULONG WINAPI
|
||||
CompositeMonikerROTDataImpl_AddRef(IROTData *iface)
|
||||
{
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p)\n",iface);
|
||||
|
||||
|
@ -1233,7 +1237,7 @@ CompositeMonikerROTDataImpl_AddRef(IROTData *iface)
|
|||
*/
|
||||
static ULONG WINAPI CompositeMonikerROTDataImpl_Release(IROTData* iface)
|
||||
{
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p)\n",iface);
|
||||
|
||||
|
|
|
@ -93,12 +93,12 @@ struct DataCache
|
|||
/*
|
||||
* List all interface VTables here
|
||||
*/
|
||||
const IDataObjectVtbl* lpvtbl1;
|
||||
const IUnknownVtbl* lpvtbl2;
|
||||
const IPersistStorageVtbl* lpvtbl3;
|
||||
const IViewObject2Vtbl* lpvtbl4;
|
||||
const IOleCache2Vtbl* lpvtbl5;
|
||||
const IOleCacheControlVtbl* lpvtbl6;
|
||||
const IDataObjectVtbl* lpVtbl;
|
||||
const IUnknownVtbl* lpvtblNDIUnknown;
|
||||
const IPersistStorageVtbl* lpvtblIPersistStorage;
|
||||
const IViewObject2Vtbl* lpvtblIViewObject;
|
||||
const IOleCache2Vtbl* lpvtblIOleCache2;
|
||||
const IOleCacheControlVtbl* lpvtblIOleCacheControl;
|
||||
|
||||
/*
|
||||
* Reference count of this object
|
||||
|
@ -136,12 +136,37 @@ typedef struct DataCache DataCache;
|
|||
* There is a version to accommodate all of the VTables implemented
|
||||
* by this object.
|
||||
*/
|
||||
#define _ICOM_THIS_From_IDataObject(class,name) class* this = (class*)name
|
||||
#define _ICOM_THIS_From_NDIUnknown(class, name) class* this = (class*)(((char*)name)-sizeof(void*))
|
||||
#define _ICOM_THIS_From_IPersistStorage(class, name) class* this = (class*)(((char*)name)-2*sizeof(void*))
|
||||
#define _ICOM_THIS_From_IViewObject2(class, name) class* this = (class*)(((char*)name)-3*sizeof(void*))
|
||||
#define _ICOM_THIS_From_IOleCache2(class, name) class* this = (class*)(((char*)name)-4*sizeof(void*))
|
||||
#define _ICOM_THIS_From_IOleCacheControl(class, name) class* this = (class*)(((char*)name)-5*sizeof(void*))
|
||||
|
||||
static inline DataCache *impl_from_IDataObject( IDataObject *iface )
|
||||
{
|
||||
return (DataCache *)((char*)iface - FIELD_OFFSET(DataCache, lpVtbl));
|
||||
}
|
||||
|
||||
static inline DataCache *impl_from_NDIUnknown( IUnknown *iface )
|
||||
{
|
||||
return (DataCache *)((char*)iface - FIELD_OFFSET(DataCache, lpvtblNDIUnknown));
|
||||
}
|
||||
|
||||
static inline DataCache *impl_from_IPersistStorage( IPersistStorage *iface )
|
||||
{
|
||||
return (DataCache *)((char*)iface - FIELD_OFFSET(DataCache, lpvtblIPersistStorage));
|
||||
}
|
||||
|
||||
static inline DataCache *impl_from_IViewObject2( IViewObject2 *iface )
|
||||
{
|
||||
return (DataCache *)((char*)iface - FIELD_OFFSET(DataCache, lpvtblIViewObject));
|
||||
}
|
||||
|
||||
static inline DataCache *impl_from_IOleCache2( IOleCache2 *iface )
|
||||
{
|
||||
return (DataCache *)((char*)iface - FIELD_OFFSET(DataCache, lpvtblIOleCache2));
|
||||
}
|
||||
|
||||
static inline DataCache *impl_from_IOleCacheControl( IOleCacheControl *iface )
|
||||
{
|
||||
return (DataCache *)((char*)iface - FIELD_OFFSET(DataCache, lpvtblIOleCacheControl));
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Prototypes for the methods of the DataCache class.
|
||||
|
@ -489,7 +514,7 @@ static HRESULT WINAPI DataCache_NDIUnknown_QueryInterface(
|
|||
REFIID riid,
|
||||
void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_NDIUnknown(DataCache, iface);
|
||||
DataCache *this = impl_from_NDIUnknown(iface);
|
||||
|
||||
/*
|
||||
* Perform a sanity check on the parameters.
|
||||
|
@ -511,26 +536,26 @@ static HRESULT WINAPI DataCache_NDIUnknown_QueryInterface(
|
|||
}
|
||||
else if (memcmp(&IID_IDataObject, riid, sizeof(IID_IDataObject)) == 0)
|
||||
{
|
||||
*ppvObject = (IDataObject*)&(this->lpvtbl1);
|
||||
*ppvObject = (IDataObject*)&(this->lpVtbl);
|
||||
}
|
||||
else if ( (memcmp(&IID_IPersistStorage, riid, sizeof(IID_IPersistStorage)) == 0) ||
|
||||
(memcmp(&IID_IPersist, riid, sizeof(IID_IPersist)) == 0) )
|
||||
{
|
||||
*ppvObject = (IPersistStorage*)&(this->lpvtbl3);
|
||||
*ppvObject = (IPersistStorage*)&(this->lpvtblIPersistStorage);
|
||||
}
|
||||
else if ( (memcmp(&IID_IViewObject, riid, sizeof(IID_IViewObject)) == 0) ||
|
||||
(memcmp(&IID_IViewObject2, riid, sizeof(IID_IViewObject2)) == 0) )
|
||||
{
|
||||
*ppvObject = (IViewObject2*)&(this->lpvtbl4);
|
||||
*ppvObject = (IViewObject2*)&(this->lpvtblIViewObject);
|
||||
}
|
||||
else if ( (memcmp(&IID_IOleCache, riid, sizeof(IID_IOleCache)) == 0) ||
|
||||
(memcmp(&IID_IOleCache2, riid, sizeof(IID_IOleCache2)) == 0) )
|
||||
{
|
||||
*ppvObject = (IOleCache2*)&(this->lpvtbl5);
|
||||
*ppvObject = (IOleCache2*)&(this->lpvtblIOleCache2);
|
||||
}
|
||||
else if (memcmp(&IID_IOleCacheControl, riid, sizeof(IID_IOleCacheControl)) == 0)
|
||||
{
|
||||
*ppvObject = (IOleCacheControl*)&(this->lpvtbl6);
|
||||
*ppvObject = (IOleCacheControl*)&(this->lpvtblIOleCacheControl);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -562,7 +587,7 @@ static HRESULT WINAPI DataCache_NDIUnknown_QueryInterface(
|
|||
static ULONG WINAPI DataCache_NDIUnknown_AddRef(
|
||||
IUnknown* iface)
|
||||
{
|
||||
_ICOM_THIS_From_NDIUnknown(DataCache, iface);
|
||||
DataCache *this = impl_from_NDIUnknown(iface);
|
||||
return InterlockedIncrement(&this->ref);
|
||||
}
|
||||
|
||||
|
@ -577,7 +602,7 @@ static ULONG WINAPI DataCache_NDIUnknown_AddRef(
|
|||
static ULONG WINAPI DataCache_NDIUnknown_Release(
|
||||
IUnknown* iface)
|
||||
{
|
||||
_ICOM_THIS_From_NDIUnknown(DataCache, iface);
|
||||
DataCache *this = impl_from_NDIUnknown(iface);
|
||||
ULONG ref;
|
||||
|
||||
/*
|
||||
|
@ -608,7 +633,7 @@ static HRESULT WINAPI DataCache_IDataObject_QueryInterface(
|
|||
REFIID riid,
|
||||
void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IDataObject(DataCache, iface);
|
||||
DataCache *this = impl_from_IDataObject(iface);
|
||||
|
||||
return IUnknown_QueryInterface(this->outerUnknown, riid, ppvObject);
|
||||
}
|
||||
|
@ -621,7 +646,7 @@ static HRESULT WINAPI DataCache_IDataObject_QueryInterface(
|
|||
static ULONG WINAPI DataCache_IDataObject_AddRef(
|
||||
IDataObject* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDataObject(DataCache, iface);
|
||||
DataCache *this = impl_from_IDataObject(iface);
|
||||
|
||||
return IUnknown_AddRef(this->outerUnknown);
|
||||
}
|
||||
|
@ -634,7 +659,7 @@ static ULONG WINAPI DataCache_IDataObject_AddRef(
|
|||
static ULONG WINAPI DataCache_IDataObject_Release(
|
||||
IDataObject* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDataObject(DataCache, iface);
|
||||
DataCache *this = impl_from_IDataObject(iface);
|
||||
|
||||
return IUnknown_Release(this->outerUnknown);
|
||||
}
|
||||
|
@ -886,7 +911,7 @@ static HRESULT WINAPI DataCache_IPersistStorage_QueryInterface(
|
|||
REFIID riid,
|
||||
void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistStorage(DataCache, iface);
|
||||
DataCache *this = impl_from_IPersistStorage(iface);
|
||||
|
||||
return IUnknown_QueryInterface(this->outerUnknown, riid, ppvObject);
|
||||
}
|
||||
|
@ -899,7 +924,7 @@ static HRESULT WINAPI DataCache_IPersistStorage_QueryInterface(
|
|||
static ULONG WINAPI DataCache_IPersistStorage_AddRef(
|
||||
IPersistStorage* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistStorage(DataCache, iface);
|
||||
DataCache *this = impl_from_IPersistStorage(iface);
|
||||
|
||||
return IUnknown_AddRef(this->outerUnknown);
|
||||
}
|
||||
|
@ -912,7 +937,7 @@ static ULONG WINAPI DataCache_IPersistStorage_AddRef(
|
|||
static ULONG WINAPI DataCache_IPersistStorage_Release(
|
||||
IPersistStorage* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistStorage(DataCache, iface);
|
||||
DataCache *this = impl_from_IPersistStorage(iface);
|
||||
|
||||
return IUnknown_Release(this->outerUnknown);
|
||||
}
|
||||
|
@ -979,7 +1004,7 @@ static HRESULT WINAPI DataCache_Load(
|
|||
IPersistStorage* iface,
|
||||
IStorage* pStg)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistStorage(DataCache, iface);
|
||||
DataCache *this = impl_from_IPersistStorage(iface);
|
||||
|
||||
TRACE("(%p, %p)\n", iface, pStg);
|
||||
|
||||
|
@ -1012,7 +1037,7 @@ static HRESULT WINAPI DataCache_Save(
|
|||
IStorage* pStg,
|
||||
BOOL fSameAsLoad)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistStorage(DataCache, iface);
|
||||
DataCache *this = impl_from_IPersistStorage(iface);
|
||||
|
||||
TRACE("(%p, %p, %d)\n", iface, pStg, fSameAsLoad);
|
||||
|
||||
|
@ -1072,7 +1097,7 @@ static HRESULT WINAPI DataCache_SaveCompleted(
|
|||
static HRESULT WINAPI DataCache_HandsOffStorage(
|
||||
IPersistStorage* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistStorage(DataCache, iface);
|
||||
DataCache *this = impl_from_IPersistStorage(iface);
|
||||
|
||||
TRACE("(%p)\n", iface);
|
||||
|
||||
|
@ -1100,7 +1125,7 @@ static HRESULT WINAPI DataCache_IViewObject2_QueryInterface(
|
|||
REFIID riid,
|
||||
void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IViewObject2(DataCache, iface);
|
||||
DataCache *this = impl_from_IViewObject2(iface);
|
||||
|
||||
return IUnknown_QueryInterface(this->outerUnknown, riid, ppvObject);
|
||||
}
|
||||
|
@ -1113,7 +1138,7 @@ static HRESULT WINAPI DataCache_IViewObject2_QueryInterface(
|
|||
static ULONG WINAPI DataCache_IViewObject2_AddRef(
|
||||
IViewObject2* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IViewObject2(DataCache, iface);
|
||||
DataCache *this = impl_from_IViewObject2(iface);
|
||||
|
||||
return IUnknown_AddRef(this->outerUnknown);
|
||||
}
|
||||
|
@ -1126,7 +1151,7 @@ static ULONG WINAPI DataCache_IViewObject2_AddRef(
|
|||
static ULONG WINAPI DataCache_IViewObject2_Release(
|
||||
IViewObject2* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IViewObject2(DataCache, iface);
|
||||
DataCache *this = impl_from_IViewObject2(iface);
|
||||
|
||||
return IUnknown_Release(this->outerUnknown);
|
||||
}
|
||||
|
@ -1156,7 +1181,7 @@ static HRESULT WINAPI DataCache_Draw(
|
|||
HMETAFILE presMetafile = 0;
|
||||
HRESULT hres;
|
||||
|
||||
_ICOM_THIS_From_IViewObject2(DataCache, iface);
|
||||
DataCache *this = impl_from_IViewObject2(iface);
|
||||
|
||||
TRACE("(%p, %lx, %ld, %p, %p, %p, %p, %p, %p, %lx)\n",
|
||||
iface,
|
||||
|
@ -1295,7 +1320,7 @@ static HRESULT WINAPI DataCache_SetAdvise(
|
|||
DWORD advf,
|
||||
IAdviseSink* pAdvSink)
|
||||
{
|
||||
_ICOM_THIS_From_IViewObject2(DataCache, iface);
|
||||
DataCache *this = impl_from_IViewObject2(iface);
|
||||
|
||||
TRACE("(%p, %lx, %lx, %p)\n", iface, aspects, advf, pAdvSink);
|
||||
|
||||
|
@ -1350,7 +1375,7 @@ static HRESULT WINAPI DataCache_GetAdvise(
|
|||
DWORD* pAdvf,
|
||||
IAdviseSink** ppAdvSink)
|
||||
{
|
||||
_ICOM_THIS_From_IViewObject2(DataCache, iface);
|
||||
DataCache *this = impl_from_IViewObject2(iface);
|
||||
|
||||
TRACE("(%p, %p, %p, %p)\n", iface, pAspects, pAdvf, ppAdvSink);
|
||||
|
||||
|
@ -1390,7 +1415,7 @@ static HRESULT WINAPI DataCache_GetExtent(
|
|||
PresentationDataHeader presData;
|
||||
HRESULT hres = E_FAIL;
|
||||
|
||||
_ICOM_THIS_From_IViewObject2(DataCache, iface);
|
||||
DataCache *this = impl_from_IViewObject2(iface);
|
||||
|
||||
TRACE("(%p, %lx, %ld, %p, %p)\n",
|
||||
iface, dwDrawAspect, lindex, ptd, lpsizel);
|
||||
|
@ -1459,7 +1484,7 @@ static HRESULT WINAPI DataCache_IOleCache2_QueryInterface(
|
|||
REFIID riid,
|
||||
void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IOleCache2(DataCache, iface);
|
||||
DataCache *this = impl_from_IOleCache2(iface);
|
||||
|
||||
return IUnknown_QueryInterface(this->outerUnknown, riid, ppvObject);
|
||||
}
|
||||
|
@ -1472,7 +1497,7 @@ static HRESULT WINAPI DataCache_IOleCache2_QueryInterface(
|
|||
static ULONG WINAPI DataCache_IOleCache2_AddRef(
|
||||
IOleCache2* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IOleCache2(DataCache, iface);
|
||||
DataCache *this = impl_from_IOleCache2(iface);
|
||||
|
||||
return IUnknown_AddRef(this->outerUnknown);
|
||||
}
|
||||
|
@ -1485,7 +1510,7 @@ static ULONG WINAPI DataCache_IOleCache2_AddRef(
|
|||
static ULONG WINAPI DataCache_IOleCache2_Release(
|
||||
IOleCache2* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IOleCache2(DataCache, iface);
|
||||
DataCache *this = impl_from_IOleCache2(iface);
|
||||
|
||||
return IUnknown_Release(this->outerUnknown);
|
||||
}
|
||||
|
@ -1568,7 +1593,7 @@ static HRESULT WINAPI DataCache_IOleCacheControl_QueryInterface(
|
|||
REFIID riid,
|
||||
void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IOleCacheControl(DataCache, iface);
|
||||
DataCache *this = impl_from_IOleCacheControl(iface);
|
||||
|
||||
return IUnknown_QueryInterface(this->outerUnknown, riid, ppvObject);
|
||||
}
|
||||
|
@ -1581,7 +1606,7 @@ static HRESULT WINAPI DataCache_IOleCacheControl_QueryInterface(
|
|||
static ULONG WINAPI DataCache_IOleCacheControl_AddRef(
|
||||
IOleCacheControl* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IOleCacheControl(DataCache, iface);
|
||||
DataCache *this = impl_from_IOleCacheControl(iface);
|
||||
|
||||
return IUnknown_AddRef(this->outerUnknown);
|
||||
}
|
||||
|
@ -1594,7 +1619,7 @@ static ULONG WINAPI DataCache_IOleCacheControl_AddRef(
|
|||
static ULONG WINAPI DataCache_IOleCacheControl_Release(
|
||||
IOleCacheControl* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IOleCacheControl(DataCache, iface);
|
||||
DataCache *this = impl_from_IOleCacheControl(iface);
|
||||
|
||||
return IUnknown_Release(this->outerUnknown);
|
||||
}
|
||||
|
@ -1735,13 +1760,13 @@ HRESULT WINAPI CreateDataCache(
|
|||
/*
|
||||
* Make sure it supports the interface required by the caller.
|
||||
*/
|
||||
hr = IUnknown_QueryInterface((IUnknown*)&(newCache->lpvtbl2), riid, ppvObj);
|
||||
hr = IUnknown_QueryInterface((IUnknown*)&(newCache->lpvtblNDIUnknown), riid, ppvObj);
|
||||
|
||||
/*
|
||||
* Release the reference obtained in the constructor. If
|
||||
* the QueryInterface was unsuccessful, it will free the class.
|
||||
*/
|
||||
IUnknown_Release((IUnknown*)&(newCache->lpvtbl2));
|
||||
IUnknown_Release((IUnknown*)&(newCache->lpvtblNDIUnknown));
|
||||
|
||||
return hr;
|
||||
}
|
||||
|
@ -1766,12 +1791,12 @@ static DataCache* DataCache_Construct(
|
|||
/*
|
||||
* Initialize the virtual function table.
|
||||
*/
|
||||
newObject->lpvtbl1 = &DataCache_IDataObject_VTable;
|
||||
newObject->lpvtbl2 = &DataCache_NDIUnknown_VTable;
|
||||
newObject->lpvtbl3 = &DataCache_IPersistStorage_VTable;
|
||||
newObject->lpvtbl4 = &DataCache_IViewObject2_VTable;
|
||||
newObject->lpvtbl5 = &DataCache_IOleCache2_VTable;
|
||||
newObject->lpvtbl6 = &DataCache_IOleCacheControl_VTable;
|
||||
newObject->lpVtbl = &DataCache_IDataObject_VTable;
|
||||
newObject->lpvtblNDIUnknown = &DataCache_NDIUnknown_VTable;
|
||||
newObject->lpvtblIPersistStorage = &DataCache_IPersistStorage_VTable;
|
||||
newObject->lpvtblIViewObject = &DataCache_IViewObject2_VTable;
|
||||
newObject->lpvtblIOleCache2 = &DataCache_IOleCache2_VTable;
|
||||
newObject->lpvtblIOleCacheControl = &DataCache_IOleCacheControl_VTable;
|
||||
|
||||
/*
|
||||
* Start with one reference count. The caller of this function
|
||||
|
@ -1786,7 +1811,7 @@ static DataCache* DataCache_Construct(
|
|||
* lifetime.
|
||||
*/
|
||||
if (pUnkOuter==NULL)
|
||||
pUnkOuter = (IUnknown*)&(newObject->lpvtbl2);
|
||||
pUnkOuter = (IUnknown*)&(newObject->lpvtblNDIUnknown);
|
||||
|
||||
newObject->outerUnknown = pUnkOuter;
|
||||
|
||||
|
|
|
@ -70,10 +70,10 @@ struct DefaultHandler
|
|||
/*
|
||||
* List all interface VTables here
|
||||
*/
|
||||
const IOleObjectVtbl* lpvtbl1;
|
||||
const IUnknownVtbl* lpvtbl2;
|
||||
const IDataObjectVtbl* lpvtbl3;
|
||||
const IRunnableObjectVtbl* lpvtbl4;
|
||||
const IOleObjectVtbl* lpVtbl;
|
||||
const IUnknownVtbl* lpvtblIUnknown;
|
||||
const IDataObjectVtbl* lpvtblIDataObject;
|
||||
const IRunnableObjectVtbl* lpvtblIRunnableObject;
|
||||
|
||||
/*
|
||||
* Reference count of this object
|
||||
|
@ -82,7 +82,7 @@ struct DefaultHandler
|
|||
|
||||
/*
|
||||
* IUnknown implementation of the outer object.
|
||||
*/
|
||||
p */
|
||||
IUnknown* outerUnknown;
|
||||
|
||||
/*
|
||||
|
@ -123,15 +123,31 @@ struct DefaultHandler
|
|||
typedef struct DefaultHandler DefaultHandler;
|
||||
|
||||
/*
|
||||
* Here, I define utility macros to help with the casting of the
|
||||
* Here, I define utility functions to help with the casting of the
|
||||
* "this" parameter.
|
||||
* There is a version to accommodate all of the VTables implemented
|
||||
* by this object.
|
||||
*/
|
||||
#define _ICOM_THIS_From_IOleObject(class,name) class* this = (class*)name
|
||||
#define _ICOM_THIS_From_NDIUnknown(class, name) class* this = (class*)(((char*)name)-sizeof(void*))
|
||||
#define _ICOM_THIS_From_IDataObject(class, name) class* this = (class*)(((char*)name)-2*sizeof(void*))
|
||||
#define _ICOM_THIS_From_IRunnableObject(class, name) class* this = (class*)(((char*)name)-3*sizeof(void*))
|
||||
static inline DefaultHandler *impl_from_IOleObject( IOleObject *iface )
|
||||
{
|
||||
return (DefaultHandler *)((char*)iface - FIELD_OFFSET(DefaultHandler, lpVtbl));
|
||||
}
|
||||
|
||||
static inline DefaultHandler *impl_from_NDIUnknown( IUnknown *iface )
|
||||
{
|
||||
return (DefaultHandler *)((char*)iface - FIELD_OFFSET(DefaultHandler, lpvtblIUnknown));
|
||||
}
|
||||
|
||||
static inline DefaultHandler *impl_from_IDataObject( IDataObject *iface )
|
||||
{
|
||||
return (DefaultHandler *)((char*)iface - FIELD_OFFSET(DefaultHandler, lpvtblIDataObject));
|
||||
}
|
||||
|
||||
static inline DefaultHandler *impl_from_IRunnableObject( IRunnableObject *iface )
|
||||
{
|
||||
return (DefaultHandler *)((char*)iface - FIELD_OFFSET(DefaultHandler, lpvtblIRunnableObject));
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Prototypes for the methods of the DefaultHandler class.
|
||||
|
@ -432,13 +448,13 @@ HRESULT WINAPI OleCreateDefaultHandler(
|
|||
/*
|
||||
* Make sure it supports the interface required by the caller.
|
||||
*/
|
||||
hr = IUnknown_QueryInterface((IUnknown*)&(newHandler->lpvtbl2), riid, ppvObj);
|
||||
hr = IUnknown_QueryInterface((IUnknown*)&(newHandler->lpvtblIUnknown), riid, ppvObj);
|
||||
|
||||
/*
|
||||
* Release the reference obtained in the constructor. If
|
||||
* the QueryInterface was unsuccessful, it will free the class.
|
||||
*/
|
||||
IUnknown_Release((IUnknown*)&(newHandler->lpvtbl2));
|
||||
IUnknown_Release((IUnknown*)&(newHandler->lpvtblIUnknown));
|
||||
|
||||
return hr;
|
||||
}
|
||||
|
@ -463,10 +479,10 @@ static DefaultHandler* DefaultHandler_Construct(
|
|||
/*
|
||||
* Initialize the virtual function table.
|
||||
*/
|
||||
newObject->lpvtbl1 = &DefaultHandler_IOleObject_VTable;
|
||||
newObject->lpvtbl2 = &DefaultHandler_NDIUnknown_VTable;
|
||||
newObject->lpvtbl3 = &DefaultHandler_IDataObject_VTable;
|
||||
newObject->lpvtbl4 = &DefaultHandler_IRunnableObject_VTable;
|
||||
newObject->lpVtbl = &DefaultHandler_IOleObject_VTable;
|
||||
newObject->lpvtblIUnknown = &DefaultHandler_NDIUnknown_VTable;
|
||||
newObject->lpvtblIDataObject = &DefaultHandler_IDataObject_VTable;
|
||||
newObject->lpvtblIRunnableObject = &DefaultHandler_IRunnableObject_VTable;
|
||||
|
||||
/*
|
||||
* Start with one reference count. The caller of this function
|
||||
|
@ -481,7 +497,7 @@ static DefaultHandler* DefaultHandler_Construct(
|
|||
* lifetime.
|
||||
*/
|
||||
if (pUnkOuter==NULL)
|
||||
pUnkOuter = (IUnknown*)&(newObject->lpvtbl2);
|
||||
pUnkOuter = (IUnknown*)&(newObject->lpvtblIUnknown);
|
||||
|
||||
newObject->outerUnknown = pUnkOuter;
|
||||
|
||||
|
@ -580,7 +596,7 @@ static HRESULT WINAPI DefaultHandler_NDIUnknown_QueryInterface(
|
|||
REFIID riid,
|
||||
void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_NDIUnknown(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_NDIUnknown(iface);
|
||||
|
||||
/*
|
||||
* Perform a sanity check on the parameters.
|
||||
|
@ -602,15 +618,15 @@ static HRESULT WINAPI DefaultHandler_NDIUnknown_QueryInterface(
|
|||
}
|
||||
else if (memcmp(&IID_IOleObject, riid, sizeof(IID_IOleObject)) == 0)
|
||||
{
|
||||
*ppvObject = (IOleObject*)&(this->lpvtbl1);
|
||||
*ppvObject = (IOleObject*)&(this->lpVtbl);
|
||||
}
|
||||
else if (memcmp(&IID_IDataObject, riid, sizeof(IID_IDataObject)) == 0)
|
||||
{
|
||||
*ppvObject = (IDataObject*)&(this->lpvtbl3);
|
||||
*ppvObject = (IDataObject*)&(this->lpvtblIDataObject);
|
||||
}
|
||||
else if (memcmp(&IID_IRunnableObject, riid, sizeof(IID_IRunnableObject)) == 0)
|
||||
{
|
||||
*ppvObject = (IRunnableObject*)&(this->lpvtbl4);
|
||||
*ppvObject = (IRunnableObject*)&(this->lpvtblIRunnableObject);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -650,7 +666,7 @@ static HRESULT WINAPI DefaultHandler_NDIUnknown_QueryInterface(
|
|||
static ULONG WINAPI DefaultHandler_NDIUnknown_AddRef(
|
||||
IUnknown* iface)
|
||||
{
|
||||
_ICOM_THIS_From_NDIUnknown(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_NDIUnknown(iface);
|
||||
return InterlockedIncrement(&this->ref);
|
||||
}
|
||||
|
||||
|
@ -665,7 +681,7 @@ static ULONG WINAPI DefaultHandler_NDIUnknown_AddRef(
|
|||
static ULONG WINAPI DefaultHandler_NDIUnknown_Release(
|
||||
IUnknown* iface)
|
||||
{
|
||||
_ICOM_THIS_From_NDIUnknown(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_NDIUnknown(iface);
|
||||
ULONG ref;
|
||||
|
||||
/*
|
||||
|
@ -696,7 +712,7 @@ static HRESULT WINAPI DefaultHandler_QueryInterface(
|
|||
REFIID riid,
|
||||
void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
return IUnknown_QueryInterface(this->outerUnknown, riid, ppvObject);
|
||||
}
|
||||
|
@ -709,7 +725,7 @@ static HRESULT WINAPI DefaultHandler_QueryInterface(
|
|||
static ULONG WINAPI DefaultHandler_AddRef(
|
||||
IOleObject* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
return IUnknown_AddRef(this->outerUnknown);
|
||||
}
|
||||
|
@ -722,7 +738,7 @@ static ULONG WINAPI DefaultHandler_AddRef(
|
|||
static ULONG WINAPI DefaultHandler_Release(
|
||||
IOleObject* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
return IUnknown_Release(this->outerUnknown);
|
||||
}
|
||||
|
@ -739,7 +755,7 @@ static HRESULT WINAPI DefaultHandler_SetClientSite(
|
|||
IOleObject* iface,
|
||||
IOleClientSite* pClientSite)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
TRACE("(%p, %p)\n", iface, pClientSite);
|
||||
|
||||
|
@ -774,7 +790,7 @@ static HRESULT WINAPI DefaultHandler_GetClientSite(
|
|||
IOleObject* iface,
|
||||
IOleClientSite** ppClientSite)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
/*
|
||||
* Sanity check.
|
||||
|
@ -805,7 +821,7 @@ static HRESULT WINAPI DefaultHandler_SetHostNames(
|
|||
LPCOLESTR szContainerApp,
|
||||
LPCOLESTR szContainerObj)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
TRACE("(%p, %s, %s)\n",
|
||||
iface,
|
||||
|
@ -888,7 +904,7 @@ static HRESULT WINAPI DefaultHandler_GetMoniker(
|
|||
DWORD dwWhichMoniker,
|
||||
IMoniker** ppmk)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
TRACE("(%p, %ld, %ld, %p)\n",
|
||||
iface, dwAssign, dwWhichMoniker, ppmk);
|
||||
|
@ -967,7 +983,7 @@ static HRESULT WINAPI DefaultHandler_EnumVerbs(
|
|||
IOleObject* iface,
|
||||
IEnumOLEVERB** ppEnumOleVerb)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
TRACE("(%p, %p)\n", iface, ppEnumOleVerb);
|
||||
|
||||
|
@ -1007,7 +1023,7 @@ static HRESULT WINAPI DefaultHandler_GetUserClassID(
|
|||
IOleObject* iface,
|
||||
CLSID* pClsid)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
TRACE("(%p, %p)\n", iface, pClsid);
|
||||
|
||||
|
@ -1035,7 +1051,7 @@ static HRESULT WINAPI DefaultHandler_GetUserType(
|
|||
DWORD dwFormOfType,
|
||||
LPOLESTR* pszUserType)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
TRACE("(%p, %ld, %p)\n", iface, dwFormOfType, pszUserType);
|
||||
|
||||
|
@ -1076,7 +1092,7 @@ static HRESULT WINAPI DefaultHandler_GetExtent(
|
|||
IViewObject2* cacheView = NULL;
|
||||
HRESULT hres;
|
||||
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
TRACE("(%p, %lx, %p)\n", iface, dwDrawAspect, psizel);
|
||||
|
||||
|
@ -1123,7 +1139,7 @@ static HRESULT WINAPI DefaultHandler_Advise(
|
|||
DWORD* pdwConnection)
|
||||
{
|
||||
HRESULT hres = S_OK;
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
TRACE("(%p, %p, %p)\n", iface, pAdvSink, pdwConnection);
|
||||
|
||||
|
@ -1157,7 +1173,7 @@ static HRESULT WINAPI DefaultHandler_Unadvise(
|
|||
IOleObject* iface,
|
||||
DWORD dwConnection)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
TRACE("(%p, %ld)\n", iface, dwConnection);
|
||||
|
||||
|
@ -1184,7 +1200,7 @@ static HRESULT WINAPI DefaultHandler_EnumAdvise(
|
|||
IOleObject* iface,
|
||||
IEnumSTATDATA** ppenumAdvise)
|
||||
{
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
TRACE("(%p, %p)\n", iface, ppenumAdvise);
|
||||
|
||||
|
@ -1220,7 +1236,7 @@ static HRESULT WINAPI DefaultHandler_GetMiscStatus(
|
|||
DWORD* pdwStatus)
|
||||
{
|
||||
HRESULT hres;
|
||||
_ICOM_THIS_From_IOleObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IOleObject(iface);
|
||||
|
||||
TRACE("(%p, %lx, %p)\n", iface, dwAspect, pdwStatus);
|
||||
|
||||
|
@ -1262,7 +1278,7 @@ static HRESULT WINAPI DefaultHandler_IDataObject_QueryInterface(
|
|||
REFIID riid,
|
||||
void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IDataObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IDataObject(iface);
|
||||
|
||||
return IUnknown_QueryInterface(this->outerUnknown, riid, ppvObject);
|
||||
}
|
||||
|
@ -1275,7 +1291,7 @@ static HRESULT WINAPI DefaultHandler_IDataObject_QueryInterface(
|
|||
static ULONG WINAPI DefaultHandler_IDataObject_AddRef(
|
||||
IDataObject* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDataObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IDataObject(iface);
|
||||
|
||||
return IUnknown_AddRef(this->outerUnknown);
|
||||
}
|
||||
|
@ -1288,7 +1304,7 @@ static ULONG WINAPI DefaultHandler_IDataObject_AddRef(
|
|||
static ULONG WINAPI DefaultHandler_IDataObject_Release(
|
||||
IDataObject* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDataObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IDataObject(iface);
|
||||
|
||||
return IUnknown_Release(this->outerUnknown);
|
||||
}
|
||||
|
@ -1308,7 +1324,7 @@ static HRESULT WINAPI DefaultHandler_GetData(
|
|||
IDataObject* cacheDataObject = NULL;
|
||||
HRESULT hres;
|
||||
|
||||
_ICOM_THIS_From_IDataObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IDataObject(iface);
|
||||
|
||||
TRACE("(%p, %p, %p)\n", iface, pformatetcIn, pmedium);
|
||||
|
||||
|
@ -1352,7 +1368,7 @@ static HRESULT WINAPI DefaultHandler_QueryGetData(
|
|||
IDataObject* cacheDataObject = NULL;
|
||||
HRESULT hres;
|
||||
|
||||
_ICOM_THIS_From_IDataObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IDataObject(iface);
|
||||
|
||||
TRACE("(%p, %p)\n", iface, pformatetc);
|
||||
|
||||
|
@ -1405,7 +1421,7 @@ static HRESULT WINAPI DefaultHandler_SetData(
|
|||
IDataObject* cacheDataObject = NULL;
|
||||
HRESULT hres;
|
||||
|
||||
_ICOM_THIS_From_IDataObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IDataObject(iface);
|
||||
|
||||
TRACE("(%p, %p, %p, %d)\n", iface, pformatetc, pmedium, fRelease);
|
||||
|
||||
|
@ -1440,7 +1456,7 @@ static HRESULT WINAPI DefaultHandler_EnumFormatEtc(
|
|||
IEnumFORMATETC** ppenumFormatEtc)
|
||||
{
|
||||
HRESULT hres;
|
||||
_ICOM_THIS_From_IDataObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IDataObject(iface);
|
||||
|
||||
TRACE("(%p, %lx, %p)\n", iface, dwDirection, ppenumFormatEtc);
|
||||
|
||||
|
@ -1465,7 +1481,7 @@ static HRESULT WINAPI DefaultHandler_DAdvise(
|
|||
DWORD* pdwConnection)
|
||||
{
|
||||
HRESULT hres = S_OK;
|
||||
_ICOM_THIS_From_IDataObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IDataObject(iface);
|
||||
|
||||
TRACE("(%p, %p, %ld, %p, %p)\n",
|
||||
iface, pformatetc, advf, pAdvSink, pdwConnection);
|
||||
|
@ -1503,7 +1519,7 @@ static HRESULT WINAPI DefaultHandler_DUnadvise(
|
|||
IDataObject* iface,
|
||||
DWORD dwConnection)
|
||||
{
|
||||
_ICOM_THIS_From_IDataObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IDataObject(iface);
|
||||
|
||||
TRACE("(%p, %ld)\n", iface, dwConnection);
|
||||
|
||||
|
@ -1532,7 +1548,7 @@ static HRESULT WINAPI DefaultHandler_EnumDAdvise(
|
|||
IDataObject* iface,
|
||||
IEnumSTATDATA** ppenumAdvise)
|
||||
{
|
||||
_ICOM_THIS_From_IDataObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IDataObject(iface);
|
||||
|
||||
TRACE("(%p, %p)\n", iface, ppenumAdvise);
|
||||
|
||||
|
@ -1574,7 +1590,7 @@ static HRESULT WINAPI DefaultHandler_IRunnableObject_QueryInterface(
|
|||
REFIID riid,
|
||||
void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IRunnableObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IRunnableObject(iface);
|
||||
|
||||
return IUnknown_QueryInterface(this->outerUnknown, riid, ppvObject);
|
||||
}
|
||||
|
@ -1587,7 +1603,7 @@ static HRESULT WINAPI DefaultHandler_IRunnableObject_QueryInterface(
|
|||
static ULONG WINAPI DefaultHandler_IRunnableObject_AddRef(
|
||||
IRunnableObject* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IRunnableObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IRunnableObject(iface);
|
||||
|
||||
return IUnknown_AddRef(this->outerUnknown);
|
||||
}
|
||||
|
@ -1600,7 +1616,7 @@ static ULONG WINAPI DefaultHandler_IRunnableObject_AddRef(
|
|||
static ULONG WINAPI DefaultHandler_IRunnableObject_Release(
|
||||
IRunnableObject* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IRunnableObject(DefaultHandler, iface);
|
||||
DefaultHandler *this = impl_from_IRunnableObject(iface);
|
||||
|
||||
return IUnknown_Release(this->outerUnknown);
|
||||
}
|
||||
|
|
|
@ -147,14 +147,22 @@ static const ISupportErrorInfoVtbl ISupportErrorInfoImpl_VTable;
|
|||
/*
|
||||
converts an object pointer to This
|
||||
*/
|
||||
#define _IErrorInfo_Offset ((int)(&(((ErrorInfoImpl*)0)->lpvtei)))
|
||||
#define _ICOM_THIS_From_IErrorInfo(class, name) class* This = (class*)(((char*)name)-_IErrorInfo_Offset)
|
||||
|
||||
#define _ICreateErrorInfo_Offset ((int)(&(((ErrorInfoImpl*)0)->lpvtcei)))
|
||||
#define _ICOM_THIS_From_ICreateErrorInfo(class, name) class* This = (class*)(((char*)name)-_ICreateErrorInfo_Offset)
|
||||
static inline ErrorInfoImpl *impl_from_IErrorInfo( IErrorInfo *iface )
|
||||
{
|
||||
return (ErrorInfoImpl *)((char*)iface - FIELD_OFFSET(ErrorInfoImpl, lpvtei));
|
||||
}
|
||||
|
||||
static inline ErrorInfoImpl *impl_from_ICreateErrorInfo( ICreateErrorInfo *iface )
|
||||
{
|
||||
return (ErrorInfoImpl *)((char*)iface - FIELD_OFFSET(ErrorInfoImpl, lpvtcei));
|
||||
}
|
||||
|
||||
static inline ErrorInfoImpl *impl_from_ISupportErrorInfo( ISupportErrorInfo *iface )
|
||||
{
|
||||
return (ErrorInfoImpl *)((char*)iface - FIELD_OFFSET(ErrorInfoImpl, lpvtsei));
|
||||
}
|
||||
|
||||
#define _ISupportErrorInfo_Offset ((int)(&(((ErrorInfoImpl*)0)->lpvtsei)))
|
||||
#define _ICOM_THIS_From_ISupportErrorInfo(class, name) class* This = (class*)(((char*)name)-_ISupportErrorInfo_Offset)
|
||||
|
||||
/*
|
||||
converts This to an object pointer
|
||||
|
@ -186,7 +194,7 @@ static HRESULT WINAPI IErrorInfoImpl_QueryInterface(
|
|||
REFIID riid,
|
||||
VOID** ppvoid)
|
||||
{
|
||||
_ICOM_THIS_From_IErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_IErrorInfo(iface);
|
||||
TRACE("(%p)->(\n\tIID:\t%s,%p)\n",This,debugstr_guid(riid),ppvoid);
|
||||
|
||||
*ppvoid = NULL;
|
||||
|
@ -217,7 +225,7 @@ static HRESULT WINAPI IErrorInfoImpl_QueryInterface(
|
|||
static ULONG WINAPI IErrorInfoImpl_AddRef(
|
||||
IErrorInfo* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_IErrorInfo(iface);
|
||||
TRACE("(%p)->(count=%lu)\n",This,This->ref);
|
||||
return InterlockedIncrement(&This->ref);
|
||||
}
|
||||
|
@ -225,7 +233,7 @@ static ULONG WINAPI IErrorInfoImpl_AddRef(
|
|||
static ULONG WINAPI IErrorInfoImpl_Release(
|
||||
IErrorInfo* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_IErrorInfo(iface);
|
||||
ULONG ref = InterlockedDecrement(&This->ref);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n",This,ref+1);
|
||||
|
@ -243,7 +251,7 @@ static HRESULT WINAPI IErrorInfoImpl_GetGUID(
|
|||
IErrorInfo* iface,
|
||||
GUID * pGUID)
|
||||
{
|
||||
_ICOM_THIS_From_IErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_IErrorInfo(iface);
|
||||
TRACE("(%p)->(count=%lu)\n",This,This->ref);
|
||||
if(!pGUID )return E_INVALIDARG;
|
||||
memcpy(pGUID, &This->m_Guid, sizeof(GUID));
|
||||
|
@ -254,7 +262,7 @@ static HRESULT WINAPI IErrorInfoImpl_GetSource(
|
|||
IErrorInfo* iface,
|
||||
BSTR *pBstrSource)
|
||||
{
|
||||
_ICOM_THIS_From_IErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_IErrorInfo(iface);
|
||||
TRACE("(%p)->(pBstrSource=%p)\n",This,pBstrSource);
|
||||
if (pBstrSource == NULL)
|
||||
return E_INVALIDARG;
|
||||
|
@ -266,7 +274,7 @@ static HRESULT WINAPI IErrorInfoImpl_GetDescription(
|
|||
IErrorInfo* iface,
|
||||
BSTR *pBstrDescription)
|
||||
{
|
||||
_ICOM_THIS_From_IErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_IErrorInfo(iface);
|
||||
|
||||
TRACE("(%p)->(pBstrDescription=%p)\n",This,pBstrDescription);
|
||||
if (pBstrDescription == NULL)
|
||||
|
@ -280,7 +288,7 @@ static HRESULT WINAPI IErrorInfoImpl_GetHelpFile(
|
|||
IErrorInfo* iface,
|
||||
BSTR *pBstrHelpFile)
|
||||
{
|
||||
_ICOM_THIS_From_IErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_IErrorInfo(iface);
|
||||
|
||||
TRACE("(%p)->(pBstrHelpFile=%p)\n",This, pBstrHelpFile);
|
||||
if (pBstrHelpFile == NULL)
|
||||
|
@ -294,7 +302,7 @@ static HRESULT WINAPI IErrorInfoImpl_GetHelpContext(
|
|||
IErrorInfo* iface,
|
||||
DWORD *pdwHelpContext)
|
||||
{
|
||||
_ICOM_THIS_From_IErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_IErrorInfo(iface);
|
||||
TRACE("(%p)->(pdwHelpContext=%p)\n",This, pdwHelpContext);
|
||||
if (pdwHelpContext == NULL)
|
||||
return E_INVALIDARG;
|
||||
|
@ -322,7 +330,7 @@ static HRESULT WINAPI ICreateErrorInfoImpl_QueryInterface(
|
|||
REFIID riid,
|
||||
VOID** ppvoid)
|
||||
{
|
||||
_ICOM_THIS_From_ICreateErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ICreateErrorInfo(iface);
|
||||
TRACE("(%p)\n", This);
|
||||
return IErrorInfo_QueryInterface(_IErrorInfo_(This), riid, ppvoid);
|
||||
}
|
||||
|
@ -330,7 +338,7 @@ static HRESULT WINAPI ICreateErrorInfoImpl_QueryInterface(
|
|||
static ULONG WINAPI ICreateErrorInfoImpl_AddRef(
|
||||
ICreateErrorInfo* iface)
|
||||
{
|
||||
_ICOM_THIS_From_ICreateErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ICreateErrorInfo(iface);
|
||||
TRACE("(%p)\n", This);
|
||||
return IErrorInfo_AddRef(_IErrorInfo_(This));
|
||||
}
|
||||
|
@ -338,7 +346,7 @@ static ULONG WINAPI ICreateErrorInfoImpl_AddRef(
|
|||
static ULONG WINAPI ICreateErrorInfoImpl_Release(
|
||||
ICreateErrorInfo* iface)
|
||||
{
|
||||
_ICOM_THIS_From_ICreateErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ICreateErrorInfo(iface);
|
||||
TRACE("(%p)\n", This);
|
||||
return IErrorInfo_Release(_IErrorInfo_(This));
|
||||
}
|
||||
|
@ -348,7 +356,7 @@ static HRESULT WINAPI ICreateErrorInfoImpl_SetGUID(
|
|||
ICreateErrorInfo* iface,
|
||||
REFGUID rguid)
|
||||
{
|
||||
_ICOM_THIS_From_ICreateErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ICreateErrorInfo(iface);
|
||||
TRACE("(%p)->(%s)\n", This, debugstr_guid(rguid));
|
||||
memcpy(&This->m_Guid, rguid, sizeof(GUID));
|
||||
return S_OK;
|
||||
|
@ -358,7 +366,7 @@ static HRESULT WINAPI ICreateErrorInfoImpl_SetSource(
|
|||
ICreateErrorInfo* iface,
|
||||
LPOLESTR szSource)
|
||||
{
|
||||
_ICOM_THIS_From_ICreateErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ICreateErrorInfo(iface);
|
||||
TRACE("(%p): %s\n",This, debugstr_w(szSource));
|
||||
if (This->bstrSource != NULL)
|
||||
ERRORINFO_SysFreeString(This->bstrSource);
|
||||
|
@ -371,7 +379,7 @@ static HRESULT WINAPI ICreateErrorInfoImpl_SetDescription(
|
|||
ICreateErrorInfo* iface,
|
||||
LPOLESTR szDescription)
|
||||
{
|
||||
_ICOM_THIS_From_ICreateErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ICreateErrorInfo(iface);
|
||||
TRACE("(%p): %s\n",This, debugstr_w(szDescription));
|
||||
if (This->bstrDescription != NULL)
|
||||
ERRORINFO_SysFreeString(This->bstrDescription);
|
||||
|
@ -384,7 +392,7 @@ static HRESULT WINAPI ICreateErrorInfoImpl_SetHelpFile(
|
|||
ICreateErrorInfo* iface,
|
||||
LPOLESTR szHelpFile)
|
||||
{
|
||||
_ICOM_THIS_From_ICreateErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ICreateErrorInfo(iface);
|
||||
TRACE("(%p,%s)\n",This,debugstr_w(szHelpFile));
|
||||
if (This->bstrHelpFile != NULL)
|
||||
ERRORINFO_SysFreeString(This->bstrHelpFile);
|
||||
|
@ -396,7 +404,7 @@ static HRESULT WINAPI ICreateErrorInfoImpl_SetHelpContext(
|
|||
ICreateErrorInfo* iface,
|
||||
DWORD dwHelpContext)
|
||||
{
|
||||
_ICOM_THIS_From_ICreateErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ICreateErrorInfo(iface);
|
||||
TRACE("(%p,%ld)\n",This,dwHelpContext);
|
||||
This->m_dwHelpContext = dwHelpContext;
|
||||
return S_OK;
|
||||
|
@ -420,7 +428,7 @@ static HRESULT WINAPI ISupportErrorInfoImpl_QueryInterface(
|
|||
REFIID riid,
|
||||
VOID** ppvoid)
|
||||
{
|
||||
_ICOM_THIS_From_ISupportErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ISupportErrorInfo(iface);
|
||||
TRACE("(%p)\n", This);
|
||||
|
||||
return IErrorInfo_QueryInterface(_IErrorInfo_(This), riid, ppvoid);
|
||||
|
@ -429,7 +437,7 @@ static HRESULT WINAPI ISupportErrorInfoImpl_QueryInterface(
|
|||
static ULONG WINAPI ISupportErrorInfoImpl_AddRef(
|
||||
ISupportErrorInfo* iface)
|
||||
{
|
||||
_ICOM_THIS_From_ISupportErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ISupportErrorInfo(iface);
|
||||
TRACE("(%p)\n", This);
|
||||
return IErrorInfo_AddRef(_IErrorInfo_(This));
|
||||
}
|
||||
|
@ -437,7 +445,7 @@ static ULONG WINAPI ISupportErrorInfoImpl_AddRef(
|
|||
static ULONG WINAPI ISupportErrorInfoImpl_Release(
|
||||
ISupportErrorInfo* iface)
|
||||
{
|
||||
_ICOM_THIS_From_ISupportErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ISupportErrorInfo(iface);
|
||||
TRACE("(%p)\n", This);
|
||||
return IErrorInfo_Release(_IErrorInfo_(This));
|
||||
}
|
||||
|
@ -447,7 +455,7 @@ static HRESULT WINAPI ISupportErrorInfoImpl_InterfaceSupportsErrorInfo(
|
|||
ISupportErrorInfo* iface,
|
||||
REFIID riid)
|
||||
{
|
||||
_ICOM_THIS_From_ISupportErrorInfo(ErrorInfoImpl, iface);
|
||||
ErrorInfoImpl *This = impl_from_ISupportErrorInfo(iface);
|
||||
TRACE("(%p)->(%s)\n", This, debugstr_guid(riid));
|
||||
return (IsEqualIID(riid, &This->m_Guid)) ? S_OK : S_FALSE;
|
||||
}
|
||||
|
|
|
@ -60,6 +60,11 @@ typedef struct FileMonikerImpl{
|
|||
IUnknown *pMarshal; /* custom marshaler */
|
||||
} FileMonikerImpl;
|
||||
|
||||
static inline IMoniker *impl_from_IROTData( IROTData *iface )
|
||||
{
|
||||
return (IMoniker *)((char*)iface - FIELD_OFFSET(FileMonikerImpl, lpvtbl2));
|
||||
}
|
||||
|
||||
/* Local function used by filemoniker implementation */
|
||||
static HRESULT WINAPI FileMonikerImpl_Construct(FileMonikerImpl* iface, LPCOLESTR lpszPathName);
|
||||
static HRESULT WINAPI FileMonikerImpl_Destroy(FileMonikerImpl* iface);
|
||||
|
@ -1198,7 +1203,7 @@ static HRESULT WINAPI
|
|||
FileMonikerROTDataImpl_QueryInterface(IROTData *iface,REFIID riid,VOID** ppvObject)
|
||||
{
|
||||
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p,%s,%p)\n",This,debugstr_guid(riid),ppvObject);
|
||||
|
||||
|
@ -1211,7 +1216,7 @@ FileMonikerROTDataImpl_QueryInterface(IROTData *iface,REFIID riid,VOID** ppvObje
|
|||
static ULONG WINAPI
|
||||
FileMonikerROTDataImpl_AddRef(IROTData *iface)
|
||||
{
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p)\n",This);
|
||||
|
||||
|
@ -1224,7 +1229,7 @@ FileMonikerROTDataImpl_AddRef(IROTData *iface)
|
|||
static ULONG WINAPI
|
||||
FileMonikerROTDataImpl_Release(IROTData* iface)
|
||||
{
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p)\n",This);
|
||||
|
||||
|
@ -1238,7 +1243,7 @@ static HRESULT WINAPI
|
|||
FileMonikerROTDataImpl_GetComparisonData(IROTData* iface, BYTE* pbData,
|
||||
ULONG cbMax, ULONG* pcbData)
|
||||
{
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
FileMonikerImpl *This1 = (FileMonikerImpl *)This;
|
||||
int len = (strlenW(This1->filePathName)+1);
|
||||
int i;
|
||||
|
|
|
@ -47,8 +47,10 @@ typedef struct _FTMarshalImpl {
|
|||
#define _IFTMUnknown_(This)(IUnknown*)&(This->lpVtbl)
|
||||
#define _IFTMarshal_(This) (IMarshal*)&(This->lpvtblFTM)
|
||||
|
||||
#define _IFTMarshall_Offset ((int)(&(((FTMarshalImpl*)0)->lpvtblFTM)))
|
||||
#define _ICOM_THIS_From_IFTMarshal(class, name) class* This = (class*)(((char*)name)-_IFTMarshall_Offset);
|
||||
static inline FTMarshalImpl *impl_from_IMarshal( IMarshal *iface )
|
||||
{
|
||||
return (FTMarshalImpl *)((char*)iface - FIELD_OFFSET(FTMarshalImpl, lpvtblFTM));
|
||||
}
|
||||
|
||||
/* inner IUnknown to handle aggregation */
|
||||
static HRESULT WINAPI
|
||||
|
@ -104,7 +106,7 @@ static HRESULT WINAPI
|
|||
FTMarshalImpl_QueryInterface (LPMARSHAL iface, REFIID riid, LPVOID * ppv)
|
||||
{
|
||||
|
||||
_ICOM_THIS_From_IFTMarshal (FTMarshalImpl, iface);
|
||||
FTMarshalImpl *This = impl_from_IMarshal(iface);
|
||||
|
||||
TRACE ("(%p)->(\n\tIID:\t%s,%p)\n", This, debugstr_guid (riid), ppv);
|
||||
return IUnknown_QueryInterface (This->pUnkOuter, riid, ppv);
|
||||
|
@ -114,7 +116,7 @@ static ULONG WINAPI
|
|||
FTMarshalImpl_AddRef (LPMARSHAL iface)
|
||||
{
|
||||
|
||||
_ICOM_THIS_From_IFTMarshal (FTMarshalImpl, iface);
|
||||
FTMarshalImpl *This = impl_from_IMarshal(iface);
|
||||
|
||||
TRACE ("\n");
|
||||
return IUnknown_AddRef (This->pUnkOuter);
|
||||
|
@ -124,7 +126,7 @@ static ULONG WINAPI
|
|||
FTMarshalImpl_Release (LPMARSHAL iface)
|
||||
{
|
||||
|
||||
_ICOM_THIS_From_IFTMarshal (FTMarshalImpl, iface);
|
||||
FTMarshalImpl *This = impl_from_IMarshal(iface);
|
||||
|
||||
TRACE ("\n");
|
||||
return IUnknown_Release (This->pUnkOuter);
|
||||
|
@ -146,7 +148,7 @@ FTMarshalImpl_GetMarshalSizeMax (LPMARSHAL iface, REFIID riid, void *pv, DWORD d
|
|||
IMarshal *pMarshal = NULL;
|
||||
HRESULT hres;
|
||||
|
||||
_ICOM_THIS_From_IFTMarshal (FTMarshalImpl, iface);
|
||||
FTMarshalImpl *This = impl_from_IMarshal(iface);
|
||||
|
||||
FIXME ("(), stub!\n");
|
||||
|
||||
|
@ -172,7 +174,7 @@ FTMarshalImpl_MarshalInterface (LPMARSHAL iface, IStream * pStm, REFIID riid, vo
|
|||
IMarshal *pMarshal = NULL;
|
||||
HRESULT hres;
|
||||
|
||||
_ICOM_THIS_From_IFTMarshal (FTMarshalImpl, iface);
|
||||
FTMarshalImpl *This = impl_from_IMarshal(iface);
|
||||
|
||||
FIXME ("(), stub!\n");
|
||||
|
||||
|
|
|
@ -61,6 +61,11 @@ typedef struct ItemMonikerImpl{
|
|||
IUnknown *pMarshal; /* custom marshaler */
|
||||
} ItemMonikerImpl;
|
||||
|
||||
static inline IMoniker *impl_from_IROTData( IROTData *iface )
|
||||
{
|
||||
return (IMoniker *)((char*)iface - FIELD_OFFSET(ItemMonikerImpl, lpvtbl2));
|
||||
}
|
||||
|
||||
/********************************************************************************/
|
||||
/* ItemMoniker prototype functions : */
|
||||
|
||||
|
@ -929,7 +934,7 @@ HRESULT WINAPI ItemMonikerImpl_IsSystemMoniker(IMoniker* iface,DWORD* pwdMksys)
|
|||
HRESULT WINAPI ItemMonikerROTDataImpl_QueryInterface(IROTData *iface,REFIID riid,VOID** ppvObject)
|
||||
{
|
||||
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p,%p,%p)\n",iface,riid,ppvObject);
|
||||
|
||||
|
@ -941,7 +946,7 @@ HRESULT WINAPI ItemMonikerROTDataImpl_QueryInterface(IROTData *iface,REFIID riid
|
|||
*/
|
||||
ULONG WINAPI ItemMonikerROTDataImpl_AddRef(IROTData *iface)
|
||||
{
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p)\n",iface);
|
||||
|
||||
|
@ -953,7 +958,7 @@ ULONG WINAPI ItemMonikerROTDataImpl_AddRef(IROTData *iface)
|
|||
*/
|
||||
ULONG WINAPI ItemMonikerROTDataImpl_Release(IROTData* iface)
|
||||
{
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
|
||||
TRACE("(%p)\n",iface);
|
||||
|
||||
|
@ -968,7 +973,7 @@ HRESULT WINAPI ItemMonikerROTDataImpl_GetComparisonData(IROTData* iface,
|
|||
ULONG cbMax,
|
||||
ULONG* pcbData)
|
||||
{
|
||||
ICOM_THIS_From_IROTData(IMoniker, iface);
|
||||
IMoniker *This = impl_from_IROTData(iface);
|
||||
ItemMonikerImpl *This1 = (ItemMonikerImpl *)This;
|
||||
int len = (strlenW(This1->itemName)+1);
|
||||
int i;
|
||||
|
|
|
@ -981,8 +981,6 @@ static HRESULT WINAPI EnumMonikerImpl_CreateEnumROTMoniker(MInterfacePointer **m
|
|||
/* Shared implementation of moniker marshaler based on saving and loading of
|
||||
* monikers */
|
||||
|
||||
#define ICOM_THIS_From_IMoniker(class, name) class* This = (class*)(((char*)name)-FIELD_OFFSET(class, lpVtblMarshal))
|
||||
|
||||
typedef struct MonikerMarshal
|
||||
{
|
||||
const IUnknownVtbl *lpVtbl;
|
||||
|
@ -992,6 +990,11 @@ typedef struct MonikerMarshal
|
|||
IMoniker *moniker;
|
||||
} MonikerMarshal;
|
||||
|
||||
static inline MonikerMarshal *impl_from_IMarshal( IMarshal *iface )
|
||||
{
|
||||
return (MonikerMarshal *)((char*)iface - FIELD_OFFSET(MonikerMarshal, lpVtblMarshal));
|
||||
}
|
||||
|
||||
static HRESULT WINAPI MonikerMarshalInner_QueryInterface(IUnknown *iface, REFIID riid, LPVOID *ppv)
|
||||
{
|
||||
MonikerMarshal *This = (MonikerMarshal *)iface;
|
||||
|
@ -1031,19 +1034,19 @@ static const IUnknownVtbl VT_MonikerMarshalInner =
|
|||
|
||||
static HRESULT WINAPI MonikerMarshal_QueryInterface(IMarshal *iface, REFIID riid, LPVOID *ppv)
|
||||
{
|
||||
ICOM_THIS_From_IMoniker(MonikerMarshal, iface);
|
||||
MonikerMarshal *This = impl_from_IMarshal(iface);
|
||||
return IMoniker_QueryInterface(This->moniker, riid, ppv);
|
||||
}
|
||||
|
||||
static ULONG WINAPI MonikerMarshal_AddRef(IMarshal *iface)
|
||||
{
|
||||
ICOM_THIS_From_IMoniker(MonikerMarshal, iface);
|
||||
MonikerMarshal *This = impl_from_IMarshal(iface);
|
||||
return IMoniker_AddRef(This->moniker);
|
||||
}
|
||||
|
||||
static ULONG WINAPI MonikerMarshal_Release(IMarshal *iface)
|
||||
{
|
||||
ICOM_THIS_From_IMoniker(MonikerMarshal, iface);
|
||||
MonikerMarshal *This = impl_from_IMarshal(iface);
|
||||
return IMoniker_Release(This->moniker);
|
||||
}
|
||||
|
||||
|
@ -1051,7 +1054,7 @@ static HRESULT WINAPI MonikerMarshal_GetUnmarshalClass(
|
|||
LPMARSHAL iface, REFIID riid, void* pv, DWORD dwDestContext,
|
||||
void* pvDestContext, DWORD mshlflags, CLSID* pCid)
|
||||
{
|
||||
ICOM_THIS_From_IMoniker(MonikerMarshal, iface);
|
||||
MonikerMarshal *This = impl_from_IMarshal(iface);
|
||||
|
||||
TRACE("(%s, %p, %lx, %p, %lx, %p)\n", debugstr_guid(riid), pv,
|
||||
dwDestContext, pvDestContext, mshlflags, pCid);
|
||||
|
@ -1063,7 +1066,7 @@ static HRESULT WINAPI MonikerMarshal_GetMarshalSizeMax(
|
|||
LPMARSHAL iface, REFIID riid, void* pv, DWORD dwDestContext,
|
||||
void* pvDestContext, DWORD mshlflags, DWORD* pSize)
|
||||
{
|
||||
ICOM_THIS_From_IMoniker(MonikerMarshal, iface);
|
||||
MonikerMarshal *This = impl_from_IMarshal(iface);
|
||||
HRESULT hr;
|
||||
ULARGE_INTEGER size;
|
||||
|
||||
|
@ -1080,7 +1083,7 @@ static HRESULT WINAPI MonikerMarshal_MarshalInterface(LPMARSHAL iface, IStream *
|
|||
REFIID riid, void* pv, DWORD dwDestContext,
|
||||
void* pvDestContext, DWORD mshlflags)
|
||||
{
|
||||
ICOM_THIS_From_IMoniker(MonikerMarshal, iface);
|
||||
MonikerMarshal *This = impl_from_IMarshal(iface);
|
||||
|
||||
TRACE("(%p, %s, %p, %lx, %p, %lx)\n", pStm, debugstr_guid(riid), pv,
|
||||
dwDestContext, pvDestContext, mshlflags);
|
||||
|
@ -1090,7 +1093,7 @@ static HRESULT WINAPI MonikerMarshal_MarshalInterface(LPMARSHAL iface, IStream *
|
|||
|
||||
static HRESULT WINAPI MonikerMarshal_UnmarshalInterface(LPMARSHAL iface, IStream *pStm, REFIID riid, void **ppv)
|
||||
{
|
||||
ICOM_THIS_From_IMoniker(MonikerMarshal, iface);
|
||||
MonikerMarshal *This = impl_from_IMarshal(iface);
|
||||
HRESULT hr;
|
||||
|
||||
TRACE("(%p, %s, %p)\n", pStm, debugstr_guid(riid), ppv);
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
#ifndef __WINE_MONIKER_H__
|
||||
#define __WINE_MONIKER_H__
|
||||
|
||||
#define ICOM_THIS_From_IROTData(class, name) class* This = (class*)(((char*)name)-sizeof(void*))
|
||||
|
||||
extern const CLSID CLSID_FileMoniker;
|
||||
extern const CLSID CLSID_ItemMoniker;
|
||||
extern const CLSID CLSID_AntiMoniker;
|
||||
|
|
|
@ -63,9 +63,10 @@
|
|||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(storage);
|
||||
|
||||
#define _IPropertySetStorage_Offset ((int)(&(((StorageImpl*)0)->base.pssVtbl)))
|
||||
#define _ICOM_THIS_From_IPropertySetStorage(class, name) \
|
||||
class* This = (class*)(((char*)name)-_IPropertySetStorage_Offset)
|
||||
static inline StorageImpl *impl_from_IPropertySetStorage( IPropertySetStorage *iface )
|
||||
{
|
||||
return (StorageImpl *)((char*)iface - FIELD_OFFSET(StorageImpl, base.pssVtbl));
|
||||
}
|
||||
|
||||
/* These are documented in MSDN, e.g.
|
||||
* http://msdn.microsoft.com/library/en-us/stg/stg/property_set_header.asp
|
||||
|
@ -2039,7 +2040,7 @@ static HRESULT WINAPI IPropertySetStorage_fnQueryInterface(
|
|||
REFIID riid,
|
||||
void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IPropertySetStorage(StorageImpl, ppstg);
|
||||
StorageImpl *This = impl_from_IPropertySetStorage(ppstg);
|
||||
return IStorage_QueryInterface( (IStorage*)This, riid, ppvObject );
|
||||
}
|
||||
|
||||
|
@ -2051,7 +2052,7 @@ static HRESULT WINAPI IPropertySetStorage_fnQueryInterface(
|
|||
static ULONG WINAPI IPropertySetStorage_fnAddRef(
|
||||
IPropertySetStorage *ppstg)
|
||||
{
|
||||
_ICOM_THIS_From_IPropertySetStorage(StorageImpl, ppstg);
|
||||
StorageImpl *This = impl_from_IPropertySetStorage(ppstg);
|
||||
return IStorage_AddRef( (IStorage*)This );
|
||||
}
|
||||
|
||||
|
@ -2063,7 +2064,7 @@ static ULONG WINAPI IPropertySetStorage_fnAddRef(
|
|||
static ULONG WINAPI IPropertySetStorage_fnRelease(
|
||||
IPropertySetStorage *ppstg)
|
||||
{
|
||||
_ICOM_THIS_From_IPropertySetStorage(StorageImpl, ppstg);
|
||||
StorageImpl *This = impl_from_IPropertySetStorage(ppstg);
|
||||
return IStorage_Release( (IStorage*)This );
|
||||
}
|
||||
|
||||
|
@ -2078,7 +2079,7 @@ static HRESULT WINAPI IPropertySetStorage_fnCreate(
|
|||
DWORD grfMode,
|
||||
IPropertyStorage** ppprstg)
|
||||
{
|
||||
_ICOM_THIS_From_IPropertySetStorage(StorageImpl, ppstg);
|
||||
StorageImpl *This = impl_from_IPropertySetStorage(ppstg);
|
||||
WCHAR name[CCH_MAX_PROPSTG_NAME];
|
||||
IStream *stm = NULL;
|
||||
HRESULT r;
|
||||
|
@ -2133,7 +2134,7 @@ static HRESULT WINAPI IPropertySetStorage_fnOpen(
|
|||
DWORD grfMode,
|
||||
IPropertyStorage** ppprstg)
|
||||
{
|
||||
_ICOM_THIS_From_IPropertySetStorage(StorageImpl, ppstg);
|
||||
StorageImpl *This = impl_from_IPropertySetStorage(ppstg);
|
||||
IStream *stm = NULL;
|
||||
WCHAR name[CCH_MAX_PROPSTG_NAME];
|
||||
HRESULT r;
|
||||
|
@ -2176,7 +2177,7 @@ static HRESULT WINAPI IPropertySetStorage_fnDelete(
|
|||
IPropertySetStorage *ppstg,
|
||||
REFFMTID rfmtid)
|
||||
{
|
||||
_ICOM_THIS_From_IPropertySetStorage(StorageImpl, ppstg);
|
||||
StorageImpl *This = impl_from_IPropertySetStorage(ppstg);
|
||||
IStorage *stg = NULL;
|
||||
WCHAR name[CCH_MAX_PROPSTG_NAME];
|
||||
HRESULT r;
|
||||
|
@ -2201,7 +2202,7 @@ static HRESULT WINAPI IPropertySetStorage_fnEnum(
|
|||
IPropertySetStorage *ppstg,
|
||||
IEnumSTATPROPSETSTG** ppenum)
|
||||
{
|
||||
_ICOM_THIS_From_IPropertySetStorage(StorageImpl, ppstg);
|
||||
StorageImpl *This = impl_from_IPropertySetStorage(ppstg);
|
||||
FIXME("%p\n", This);
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
|
|
@ -79,8 +79,11 @@ typedef struct
|
|||
static const IAutoCompleteVtbl acvt;
|
||||
static const IAutoComplete2Vtbl ac2vt;
|
||||
|
||||
#define _IAutoComplete2_Offset ((int)(&(((IAutoCompleteImpl*)0)->lpvtblAutoComplete2)))
|
||||
#define _ICOM_THIS_From_IAutoComplete2(class, name) class* This = (class*)(((char*)name)-_IAutoComplete2_Offset);
|
||||
static inline IAutoCompleteImpl *impl_from_IAutoComplete2( IAutoComplete2 *iface )
|
||||
{
|
||||
return (IAutoCompleteImpl *)((char*)iface - FIELD_OFFSET(IAutoCompleteImpl, lpvtblAutoComplete2));
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
converts This to an interface pointer
|
||||
|
@ -329,7 +332,7 @@ static HRESULT WINAPI IAutoComplete2_fnQueryInterface(
|
|||
REFIID riid,
|
||||
LPVOID *ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_IAutoComplete2(IAutoCompleteImpl, iface);
|
||||
IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
|
||||
|
||||
TRACE ("(%p)->(%s,%p)\n", This, shdebugstr_guid (riid), ppvObj);
|
||||
|
||||
|
@ -342,7 +345,7 @@ static HRESULT WINAPI IAutoComplete2_fnQueryInterface(
|
|||
static ULONG WINAPI IAutoComplete2_fnAddRef(
|
||||
IAutoComplete2 * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IAutoComplete2(IAutoCompleteImpl,iface);
|
||||
IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
|
||||
|
||||
TRACE ("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -355,7 +358,7 @@ static ULONG WINAPI IAutoComplete2_fnAddRef(
|
|||
static ULONG WINAPI IAutoComplete2_fnRelease(
|
||||
IAutoComplete2 * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IAutoComplete2(IAutoCompleteImpl,iface);
|
||||
IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
|
||||
|
||||
TRACE ("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -369,7 +372,7 @@ static HRESULT WINAPI IAutoComplete2_fnEnable(
|
|||
IAutoComplete2 * iface,
|
||||
BOOL fEnable)
|
||||
{
|
||||
_ICOM_THIS_From_IAutoComplete2(IAutoCompleteImpl, iface);
|
||||
IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
|
||||
|
||||
TRACE ("(%p)->(%s)\n", This, (fEnable)?"true":"false");
|
||||
|
||||
|
@ -386,7 +389,7 @@ static HRESULT WINAPI IAutoComplete2_fnInit(
|
|||
LPCOLESTR pwzsRegKeyPath,
|
||||
LPCOLESTR pwszQuickComplete)
|
||||
{
|
||||
_ICOM_THIS_From_IAutoComplete2(IAutoCompleteImpl, iface);
|
||||
IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
|
||||
|
||||
TRACE("(%p)\n", This);
|
||||
|
||||
|
@ -402,7 +405,7 @@ static HRESULT WINAPI IAutoComplete2_fnGetOptions(
|
|||
{
|
||||
HRESULT hr = S_OK;
|
||||
|
||||
_ICOM_THIS_From_IAutoComplete2(IAutoCompleteImpl, iface);
|
||||
IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
|
||||
|
||||
TRACE("(%p) -> (%p)\n", This, pdwFlag);
|
||||
|
||||
|
@ -420,7 +423,7 @@ static HRESULT WINAPI IAutoComplete2_fnSetOptions(
|
|||
{
|
||||
HRESULT hr = S_OK;
|
||||
|
||||
_ICOM_THIS_From_IAutoComplete2(IAutoCompleteImpl, iface);
|
||||
IAutoCompleteImpl *This = impl_from_IAutoComplete2(iface);
|
||||
|
||||
TRACE("(%p) -> (0x%lx)\n", This, dwFlag);
|
||||
|
||||
|
|
|
@ -76,14 +76,20 @@ static const IPersistFolder2Vtbl vt_PersistFolder2;
|
|||
static const IShellExecuteHookWVtbl vt_ShellExecuteHookW;
|
||||
static const IShellExecuteHookAVtbl vt_ShellExecuteHookA;
|
||||
|
||||
#define _IPersistFolder2_Offset ((int)(&(((ICPanelImpl*)0)->lpVtblPersistFolder2)))
|
||||
#define _ICOM_THIS_From_IPersistFolder2(class, name) class* This = (class*)(((char*)name)-_IPersistFolder2_Offset);
|
||||
static inline ICPanelImpl *impl_from_IPersistFolder2( IPersistFolder2 *iface )
|
||||
{
|
||||
return (ICPanelImpl *)((char*)iface - FIELD_OFFSET(ICPanelImpl, lpVtblPersistFolder2));
|
||||
}
|
||||
|
||||
#define IShellExecuteHookW_Offset ((int)(&(((ICPanelImpl*)0)->lpVtblShellExecuteHookW)))
|
||||
#define _ICOM_THIS_From_IShellExecuteHookW(class, name) class* This = (class*)(((char*)name)-IShellExecuteHookW_Offset);
|
||||
static inline ICPanelImpl *impl_from_IShellExecuteHookW( IShellExecuteHookW *iface )
|
||||
{
|
||||
return (ICPanelImpl *)((char*)iface - FIELD_OFFSET(ICPanelImpl, lpVtblShellExecuteHookW));
|
||||
}
|
||||
|
||||
#define IShellExecuteHookA_Offset ((int)(&(((ICPanelImpl*)0)->lpVtblShellExecuteHookA)))
|
||||
#define _ICOM_THIS_From_IShellExecuteHookA(class, name) class* This = (class*)(((char*)name)-IShellExecuteHookA_Offset);
|
||||
static inline ICPanelImpl *impl_from_IShellExecuteHookA( IShellExecuteHookA *iface )
|
||||
{
|
||||
return (ICPanelImpl *)((char*)iface - FIELD_OFFSET(ICPanelImpl, lpVtblShellExecuteHookA));
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
|
@ -824,7 +830,7 @@ static const IShellFolder2Vtbl vt_ShellFolder2 =
|
|||
*/
|
||||
static HRESULT WINAPI ICPanel_PersistFolder2_QueryInterface(IPersistFolder2 * iface, REFIID iid, LPVOID * ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IPersistFolder2(iface);
|
||||
|
||||
TRACE("(%p)\n", This);
|
||||
|
||||
|
@ -836,7 +842,7 @@ static HRESULT WINAPI ICPanel_PersistFolder2_QueryInterface(IPersistFolder2 * if
|
|||
*/
|
||||
static ULONG WINAPI ICPanel_PersistFolder2_AddRef(IPersistFolder2 * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IPersistFolder2(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -848,7 +854,7 @@ static ULONG WINAPI ICPanel_PersistFolder2_AddRef(IPersistFolder2 * iface)
|
|||
*/
|
||||
static ULONG WINAPI ICPanel_PersistFolder2_Release(IPersistFolder2 * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IPersistFolder2(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -860,7 +866,7 @@ static ULONG WINAPI ICPanel_PersistFolder2_Release(IPersistFolder2 * iface)
|
|||
*/
|
||||
static HRESULT WINAPI ICPanel_PersistFolder2_GetClassID(IPersistFolder2 * iface, CLSID * lpClassId)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IPersistFolder2(iface);
|
||||
|
||||
TRACE("(%p)\n", This);
|
||||
|
||||
|
@ -878,7 +884,7 @@ static HRESULT WINAPI ICPanel_PersistFolder2_GetClassID(IPersistFolder2 * iface,
|
|||
*/
|
||||
static HRESULT WINAPI ICPanel_PersistFolder2_Initialize(IPersistFolder2 * iface, LPCITEMIDLIST pidl)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IPersistFolder2(iface);
|
||||
TRACE("(%p)->(%p)\n", This, pidl);
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
@ -888,7 +894,7 @@ static HRESULT WINAPI ICPanel_PersistFolder2_Initialize(IPersistFolder2 * iface,
|
|||
*/
|
||||
static HRESULT WINAPI ICPanel_PersistFolder2_GetCurFolder(IPersistFolder2 * iface, LPITEMIDLIST * pidl)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IPersistFolder2(iface);
|
||||
|
||||
TRACE("(%p)->(%p)\n", This, pidl);
|
||||
|
||||
|
@ -931,7 +937,7 @@ HRESULT CPanel_GetIconLocationW(LPITEMIDLIST pidl,
|
|||
static HRESULT WINAPI IShellExecuteHookW_fnQueryInterface(
|
||||
IShellExecuteHookW* iface, REFIID riid, void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IShellExecuteHookW(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IShellExecuteHookW(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -940,7 +946,7 @@ static HRESULT WINAPI IShellExecuteHookW_fnQueryInterface(
|
|||
|
||||
static ULONG STDMETHODCALLTYPE IShellExecuteHookW_fnAddRef(IShellExecuteHookW* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IShellExecuteHookW(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IShellExecuteHookW(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -949,7 +955,7 @@ static ULONG STDMETHODCALLTYPE IShellExecuteHookW_fnAddRef(IShellExecuteHookW* i
|
|||
|
||||
static ULONG STDMETHODCALLTYPE IShellExecuteHookW_fnRelease(IShellExecuteHookW* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IShellExecuteHookW(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IShellExecuteHookW(iface);
|
||||
|
||||
TRACE("(%p)\n", This);
|
||||
|
||||
|
@ -1017,7 +1023,7 @@ static const IShellExecuteHookWVtbl vt_ShellExecuteHookW =
|
|||
|
||||
static HRESULT WINAPI IShellExecuteHookA_fnQueryInterface(IShellExecuteHookA* iface, REFIID riid, void** ppvObject)
|
||||
{
|
||||
_ICOM_THIS_From_IShellExecuteHookA(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IShellExecuteHookA(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -1026,7 +1032,7 @@ static HRESULT WINAPI IShellExecuteHookA_fnQueryInterface(IShellExecuteHookA* if
|
|||
|
||||
static ULONG STDMETHODCALLTYPE IShellExecuteHookA_fnAddRef(IShellExecuteHookA* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IShellExecuteHookA(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IShellExecuteHookA(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -1035,7 +1041,7 @@ static ULONG STDMETHODCALLTYPE IShellExecuteHookA_fnAddRef(IShellExecuteHookA* i
|
|||
|
||||
static ULONG STDMETHODCALLTYPE IShellExecuteHookA_fnRelease(IShellExecuteHookA* iface)
|
||||
{
|
||||
_ICOM_THIS_From_IShellExecuteHookA(ICPanelImpl, iface);
|
||||
ICPanelImpl *This = impl_from_IShellExecuteHookA(iface);
|
||||
|
||||
TRACE("(%p)\n", This);
|
||||
|
||||
|
|
|
@ -60,11 +60,16 @@ static const IExtractIconAVtbl eiavt;
|
|||
static const IExtractIconWVtbl eivt;
|
||||
static const IPersistFileVtbl pfvt;
|
||||
|
||||
#define _IPersistFile_Offset ((int)(&(((IExtractIconWImpl*)0)->lpvtblPersistFile)))
|
||||
#define _ICOM_THIS_From_IPersistFile(class, name) class* This = (class*)(((char*)name)-_IPersistFile_Offset);
|
||||
static inline IExtractIconW *impl_from_IPersistFile( IPersistFile *iface )
|
||||
{
|
||||
return (IExtractIconW *)((char*)iface - FIELD_OFFSET(IExtractIconWImpl, lpvtblPersistFile));
|
||||
}
|
||||
|
||||
static inline IExtractIconW *impl_from_IExtractIconA( IExtractIconA *iface )
|
||||
{
|
||||
return (IExtractIconW *)((char*)iface - FIELD_OFFSET(IExtractIconWImpl, lpvtblExtractIconA));
|
||||
}
|
||||
|
||||
#define _IExtractIconA_Offset ((int)(&(((IExtractIconWImpl*)0)->lpvtblExtractIconA)))
|
||||
#define _ICOM_THIS_From_IExtractIconA(class, name) class* This = (class*)(((char*)name)-_IExtractIconA_Offset);
|
||||
|
||||
/**************************************************************************
|
||||
* IExtractIconW_Constructor
|
||||
|
@ -422,7 +427,7 @@ IExtractIconA* IExtractIconA_Constructor(LPCITEMIDLIST pidl)
|
|||
*/
|
||||
static HRESULT WINAPI IExtractIconA_fnQueryInterface(IExtractIconA * iface, REFIID riid, LPVOID *ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_IExtractIconA(IExtractIconW, iface);
|
||||
IExtractIconW *This = impl_from_IExtractIconA(iface);
|
||||
|
||||
return IExtractIconW_QueryInterface(This, riid, ppvObj);
|
||||
}
|
||||
|
@ -432,7 +437,7 @@ static HRESULT WINAPI IExtractIconA_fnQueryInterface(IExtractIconA * iface, REFI
|
|||
*/
|
||||
static ULONG WINAPI IExtractIconA_fnAddRef(IExtractIconA * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IExtractIconA(IExtractIconW, iface);
|
||||
IExtractIconW *This = impl_from_IExtractIconA(iface);
|
||||
|
||||
return IExtractIconW_AddRef(This);
|
||||
}
|
||||
|
@ -441,7 +446,7 @@ static ULONG WINAPI IExtractIconA_fnAddRef(IExtractIconA * iface)
|
|||
*/
|
||||
static ULONG WINAPI IExtractIconA_fnRelease(IExtractIconA * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IExtractIconA(IExtractIconW, iface);
|
||||
IExtractIconW *This = impl_from_IExtractIconA(iface);
|
||||
|
||||
return IExtractIconW_AddRef(This);
|
||||
}
|
||||
|
@ -460,7 +465,7 @@ static HRESULT WINAPI IExtractIconA_fnGetIconLocation(
|
|||
{
|
||||
HRESULT ret;
|
||||
LPWSTR lpwstrFile = HeapAlloc(GetProcessHeap(), 0, cchMax * sizeof(WCHAR));
|
||||
_ICOM_THIS_From_IExtractIconA(IExtractIconW, iface);
|
||||
IExtractIconW *This = impl_from_IExtractIconA(iface);
|
||||
|
||||
TRACE("(%p) (flags=%u %p %u %p %p)\n", This, uFlags, szIconFile, cchMax, piIndex, pwFlags);
|
||||
|
||||
|
@ -479,7 +484,7 @@ static HRESULT WINAPI IExtractIconA_fnExtract(IExtractIconA * iface, LPCSTR pszF
|
|||
HRESULT ret;
|
||||
INT len = MultiByteToWideChar(CP_ACP, 0, pszFile, -1, NULL, 0);
|
||||
LPWSTR lpwstrFile = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR));
|
||||
_ICOM_THIS_From_IExtractIconA(IExtractIconW, iface);
|
||||
IExtractIconW *This = impl_from_IExtractIconA(iface);
|
||||
|
||||
TRACE("(%p) (file=%p index=%u %p %p size=%u)\n", This, pszFile, nIconIndex, phiconLarge, phiconSmall, nIconSize);
|
||||
|
||||
|
@ -506,7 +511,7 @@ static HRESULT WINAPI IEIPersistFile_fnQueryInterface(
|
|||
REFIID iid,
|
||||
LPVOID *ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFile(IExtractIconW, iface);
|
||||
IExtractIconW *This = impl_from_IPersistFile(iface);
|
||||
|
||||
return IExtractIconW_QueryInterface(This, iid, ppvObj);
|
||||
}
|
||||
|
@ -517,7 +522,7 @@ static HRESULT WINAPI IEIPersistFile_fnQueryInterface(
|
|||
static ULONG WINAPI IEIPersistFile_fnAddRef(
|
||||
IPersistFile *iface)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFile(IExtractIconW, iface);
|
||||
IExtractIconW *This = impl_from_IPersistFile(iface);
|
||||
|
||||
return IExtractIconW_AddRef(This);
|
||||
}
|
||||
|
@ -528,7 +533,7 @@ static ULONG WINAPI IEIPersistFile_fnAddRef(
|
|||
static ULONG WINAPI IEIPersistFile_fnRelease(
|
||||
IPersistFile *iface)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFile(IExtractIconW, iface);
|
||||
IExtractIconW *This = impl_from_IPersistFile(iface);
|
||||
|
||||
return IExtractIconW_Release(This);
|
||||
}
|
||||
|
@ -555,7 +560,7 @@ static HRESULT WINAPI IEIPersistFile_fnGetClassID(
|
|||
*/
|
||||
static HRESULT WINAPI IEIPersistFile_fnLoad(IPersistFile* iface, LPCOLESTR pszFileName, DWORD dwMode)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFile(IExtractIconW, iface);
|
||||
IExtractIconW *This = impl_from_IPersistFile(iface);
|
||||
FIXME("%p\n", This);
|
||||
return E_NOTIMPL;
|
||||
|
||||
|
|
|
@ -86,20 +86,26 @@ static const IPersistFolder3Vtbl vt_FSFldr_PersistFolder3; /* IPersistFolder3 fo
|
|||
static const IDropTargetVtbl dtvt;
|
||||
static const ISFHelperVtbl shvt;
|
||||
|
||||
#define _IShellFolder2_Offset ((int)(&(((IGenericSFImpl*)0)->lpvtblShellFolder)))
|
||||
#define _ICOM_THIS_From_IShellFolder2(class, name) class* This = (class*)(((char*)name)-_IShellFolder2_Offset);
|
||||
static inline IGenericSFImpl *impl_from_IShellFolder2( IShellFolder2 *iface )
|
||||
{
|
||||
return (IGenericSFImpl *)((char*)iface - FIELD_OFFSET(IGenericSFImpl, lpvtblShellFolder));
|
||||
}
|
||||
|
||||
#define _IPersistFolder2_Offset ((int)(&(((IGenericSFImpl*)0)->lpvtblPersistFolder3)))
|
||||
#define _ICOM_THIS_From_IPersistFolder2(class, name) class* This = (class*)(((char*)name)-_IPersistFolder2_Offset);
|
||||
static inline IGenericSFImpl *impl_from_IPersistFolder3( IPersistFolder3 *iface )
|
||||
{
|
||||
return (IGenericSFImpl *)((char*)iface - FIELD_OFFSET(IGenericSFImpl, lpvtblPersistFolder3));
|
||||
}
|
||||
|
||||
#define _IPersistFolder3_Offset ((int)(&(((IGenericSFImpl*)0)->lpvtblPersistFolder3)))
|
||||
#define _ICOM_THIS_From_IPersistFolder3(class, name) class* This = (class*)(((char*)name)-_IPersistFolder3_Offset);
|
||||
static inline IGenericSFImpl *impl_from_IDropTarget( IDropTarget *iface )
|
||||
{
|
||||
return (IGenericSFImpl *)((char*)iface - FIELD_OFFSET(IGenericSFImpl, lpvtblDropTarget));
|
||||
}
|
||||
|
||||
#define _IDropTarget_Offset ((int)(&(((IGenericSFImpl*)0)->lpvtblDropTarget)))
|
||||
#define _ICOM_THIS_From_IDropTarget(class, name) class* This = (class*)(((char*)name)-_IDropTarget_Offset);
|
||||
static inline IGenericSFImpl *impl_from_ISFHelper( ISFHelper *iface )
|
||||
{
|
||||
return (IGenericSFImpl *)((char*)iface - FIELD_OFFSET(IGenericSFImpl, lpvtblSFHelper));
|
||||
}
|
||||
|
||||
#define _ISFHelper_Offset ((int)(&(((IGenericSFImpl*)0)->lpvtblSFHelper)))
|
||||
#define _ICOM_THIS_From_ISFHelper(class, name) class* This = (class*)(((char*)name)-_ISFHelper_Offset);
|
||||
|
||||
/*
|
||||
converts This to an interface pointer
|
||||
|
@ -264,7 +270,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnQueryInterface (IShellFolder2 * iface, REFIID riid,
|
||||
LPVOID * ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
TRACE ("(%p)->(%s,%p)\n", This, shdebugstr_guid (riid), ppvObj);
|
||||
|
||||
|
@ -277,7 +283,7 @@ IShellFolder_fnQueryInterface (IShellFolder2 * iface, REFIID riid,
|
|||
|
||||
static ULONG WINAPI IShellFolder_fnAddRef (IShellFolder2 * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
TRACE ("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -289,7 +295,7 @@ static ULONG WINAPI IShellFolder_fnAddRef (IShellFolder2 * iface)
|
|||
*/
|
||||
static ULONG WINAPI IShellFolder_fnRelease (IShellFolder2 * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
TRACE ("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -373,7 +379,7 @@ IShellFolder_fnParseDisplayName (IShellFolder2 * iface,
|
|||
DWORD * pchEaten, LPITEMIDLIST * ppidl,
|
||||
DWORD * pdwAttributes)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
HRESULT hr = E_INVALIDARG;
|
||||
LPCWSTR szNext = NULL;
|
||||
|
@ -444,7 +450,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnEnumObjects (IShellFolder2 * iface, HWND hwndOwner,
|
||||
DWORD dwFlags, LPENUMIDLIST * ppEnumIDList)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
TRACE ("(%p)->(HWND=%p flags=0x%08lx pplist=%p)\n", This, hwndOwner,
|
||||
dwFlags, ppEnumIDList);
|
||||
|
@ -474,7 +480,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnBindToObject (IShellFolder2 * iface, LPCITEMIDLIST pidl,
|
||||
LPBC pbc, REFIID riid, LPVOID * ppvOut)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
TRACE ("(%p)->(pidl=%p,%p,%s,%p)\n", This, pidl, pbc,
|
||||
shdebugstr_guid (riid), ppvOut);
|
||||
|
@ -495,7 +501,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnBindToStorage (IShellFolder2 * iface, LPCITEMIDLIST pidl,
|
||||
LPBC pbcReserved, REFIID riid, LPVOID * ppvOut)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
FIXME ("(%p)->(pidl=%p,%p,%s,%p) stub\n", This, pidl, pbcReserved,
|
||||
shdebugstr_guid (riid), ppvOut);
|
||||
|
@ -512,7 +518,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnCompareIDs (IShellFolder2 * iface, LPARAM lParam,
|
||||
LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
int nReturn;
|
||||
|
||||
|
@ -529,7 +535,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnCreateViewObject (IShellFolder2 * iface, HWND hwndOwner,
|
||||
REFIID riid, LPVOID * ppvOut)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
LPSHELLVIEW pShellView;
|
||||
HRESULT hr = E_INVALIDARG;
|
||||
|
@ -570,7 +576,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnGetAttributesOf (IShellFolder2 * iface, UINT cidl,
|
||||
LPCITEMIDLIST * apidl, DWORD * rgfInOut)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
HRESULT hr = S_OK;
|
||||
|
||||
|
@ -640,7 +646,7 @@ IShellFolder_fnGetUIObjectOf (IShellFolder2 * iface,
|
|||
UINT cidl, LPCITEMIDLIST * apidl, REFIID riid,
|
||||
UINT * prgfInOut, LPVOID * ppvOut)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
LPITEMIDLIST pidl;
|
||||
IUnknown *pObj = NULL;
|
||||
|
@ -774,7 +780,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnGetDisplayNameOf (IShellFolder2 * iface, LPCITEMIDLIST pidl,
|
||||
DWORD dwFlags, LPSTRRET strRet)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
HRESULT hr = S_OK;
|
||||
int len = 0;
|
||||
|
@ -834,7 +840,7 @@ static HRESULT WINAPI IShellFolder_fnSetNameOf (IShellFolder2 * iface,
|
|||
DWORD dwFlags,
|
||||
LPITEMIDLIST * pPidlOut)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
WCHAR szSrc[MAX_PATH], szDest[MAX_PATH];
|
||||
LPWSTR ptr;
|
||||
BOOL bIsFolder = _ILIsFolder (ILFindLastID (pidl));
|
||||
|
@ -885,14 +891,14 @@ static HRESULT WINAPI IShellFolder_fnSetNameOf (IShellFolder2 * iface,
|
|||
static HRESULT WINAPI IShellFolder_fnGetDefaultSearchGUID (IShellFolder2 *iface,
|
||||
GUID * pguid)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
FIXME ("(%p)\n", This);
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
static HRESULT WINAPI IShellFolder_fnEnumSearches (IShellFolder2 * iface,
|
||||
IEnumExtraSearch ** ppenum)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
FIXME ("(%p)\n", This);
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
@ -901,7 +907,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnGetDefaultColumn (IShellFolder2 * iface, DWORD dwRes,
|
||||
ULONG * pSort, ULONG * pDisplay)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -917,7 +923,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnGetDefaultColumnState (IShellFolder2 * iface, UINT iColumn,
|
||||
DWORD * pcsFlags)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -933,7 +939,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnGetDetailsEx (IShellFolder2 * iface, LPCITEMIDLIST pidl,
|
||||
const SHCOLUMNID * pscid, VARIANT * pv)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
FIXME ("(%p)\n", This);
|
||||
|
||||
return E_NOTIMPL;
|
||||
|
@ -943,7 +949,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnGetDetailsOf (IShellFolder2 * iface, LPCITEMIDLIST pidl,
|
||||
UINT iColumn, SHELLDETAILS * psd)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
HRESULT hr = E_FAIL;
|
||||
|
||||
TRACE ("(%p)->(%p %i %p)\n", This, pidl, iColumn, psd);
|
||||
|
@ -990,7 +996,7 @@ static HRESULT WINAPI
|
|||
IShellFolder_fnMapColumnToSCID (IShellFolder2 * iface, UINT column,
|
||||
SHCOLUMNID * pscid)
|
||||
{
|
||||
_ICOM_THIS_From_IShellFolder2 (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_IShellFolder2(iface);
|
||||
FIXME ("(%p)\n", This);
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
@ -1027,7 +1033,7 @@ static const IShellFolder2Vtbl sfvt =
|
|||
static HRESULT WINAPI
|
||||
ISFHelper_fnQueryInterface (ISFHelper * iface, REFIID riid, LPVOID * ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_ISFHelper (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_ISFHelper(iface);
|
||||
|
||||
TRACE ("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -1036,7 +1042,7 @@ ISFHelper_fnQueryInterface (ISFHelper * iface, REFIID riid, LPVOID * ppvObj)
|
|||
|
||||
static ULONG WINAPI ISFHelper_fnAddRef (ISFHelper * iface)
|
||||
{
|
||||
_ICOM_THIS_From_ISFHelper (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_ISFHelper(iface);
|
||||
|
||||
TRACE ("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -1045,7 +1051,7 @@ static ULONG WINAPI ISFHelper_fnAddRef (ISFHelper * iface)
|
|||
|
||||
static ULONG WINAPI ISFHelper_fnRelease (ISFHelper * iface)
|
||||
{
|
||||
_ICOM_THIS_From_ISFHelper (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_ISFHelper(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -1061,7 +1067,7 @@ static ULONG WINAPI ISFHelper_fnRelease (ISFHelper * iface)
|
|||
static HRESULT WINAPI
|
||||
ISFHelper_fnGetUniqueName (ISFHelper * iface, LPSTR lpName, UINT uLen)
|
||||
{
|
||||
_ICOM_THIS_From_ISFHelper (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_ISFHelper(iface);
|
||||
IEnumIDList *penum;
|
||||
HRESULT hr;
|
||||
char szText[MAX_PATH];
|
||||
|
@ -1111,7 +1117,7 @@ static HRESULT WINAPI
|
|||
ISFHelper_fnAddFolder (ISFHelper * iface, HWND hwnd, LPCSTR lpName,
|
||||
LPITEMIDLIST * ppidlOut)
|
||||
{
|
||||
_ICOM_THIS_From_ISFHelper (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_ISFHelper(iface);
|
||||
char lpstrNewDir[MAX_PATH];
|
||||
DWORD bRes;
|
||||
HRESULT hres = E_FAIL;
|
||||
|
@ -1154,7 +1160,7 @@ ISFHelper_fnAddFolder (ISFHelper * iface, HWND hwnd, LPCSTR lpName,
|
|||
static HRESULT WINAPI
|
||||
ISFHelper_fnDeleteItems (ISFHelper * iface, UINT cidl, LPCITEMIDLIST * apidl)
|
||||
{
|
||||
_ICOM_THIS_From_ISFHelper (IGenericSFImpl, iface)
|
||||
IGenericSFImpl *This = impl_from_ISFHelper(iface);
|
||||
UINT i;
|
||||
char szPath[MAX_PATH];
|
||||
BOOL bConfirm = TRUE;
|
||||
|
@ -1218,7 +1224,7 @@ ISFHelper_fnCopyItems (ISFHelper * iface, IShellFolder * pSFFrom, UINT cidl,
|
|||
char szSrcPath[MAX_PATH],
|
||||
szDstPath[MAX_PATH];
|
||||
|
||||
_ICOM_THIS_From_ISFHelper (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_ISFHelper(iface);
|
||||
|
||||
TRACE ("(%p)->(%p,%u,%p)\n", This, pSFFrom, cidl, apidl);
|
||||
|
||||
|
@ -1266,7 +1272,7 @@ static HRESULT WINAPI
|
|||
IFSFldr_PersistFolder3_QueryInterface (IPersistFolder3 * iface, REFIID iid,
|
||||
LPVOID * ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder3 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder3(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -1280,7 +1286,7 @@ IFSFldr_PersistFolder3_QueryInterface (IPersistFolder3 * iface, REFIID iid,
|
|||
static ULONG WINAPI
|
||||
IFSFldr_PersistFolder3_AddRef (IPersistFolder3 * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder3 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder3(iface);
|
||||
|
||||
TRACE ("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -1294,7 +1300,7 @@ IFSFldr_PersistFolder3_AddRef (IPersistFolder3 * iface)
|
|||
static ULONG WINAPI
|
||||
IFSFldr_PersistFolder3_Release (IPersistFolder3 * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder3 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder3(iface);
|
||||
|
||||
TRACE ("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -1307,7 +1313,7 @@ IFSFldr_PersistFolder3_Release (IPersistFolder3 * iface)
|
|||
static HRESULT WINAPI
|
||||
IFSFldr_PersistFolder3_GetClassID (IPersistFolder3 * iface, CLSID * lpClassId)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder3 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder3(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -1329,7 +1335,7 @@ IFSFldr_PersistFolder3_Initialize (IPersistFolder3 * iface, LPCITEMIDLIST pidl)
|
|||
{
|
||||
char sTemp[MAX_PATH];
|
||||
|
||||
_ICOM_THIS_From_IPersistFolder3 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder3(iface);
|
||||
|
||||
TRACE ("(%p)->(%p)\n", This, pidl);
|
||||
|
||||
|
@ -1357,7 +1363,7 @@ static HRESULT WINAPI
|
|||
IFSFldr_PersistFolder3_fnGetCurFolder (IPersistFolder3 * iface,
|
||||
LPITEMIDLIST * pidl)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder3 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder3(iface);
|
||||
|
||||
TRACE ("(%p)->(%p)\n", This, pidl);
|
||||
|
||||
|
@ -1378,7 +1384,7 @@ IFSFldr_PersistFolder3_InitializeEx (IPersistFolder3 * iface,
|
|||
{
|
||||
char sTemp[MAX_PATH];
|
||||
|
||||
_ICOM_THIS_From_IPersistFolder3 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder3(iface);
|
||||
|
||||
TRACE ("(%p)->(%p,%p,%p)\n", This, pbc, pidlRoot, ppfti);
|
||||
if (ppfti)
|
||||
|
@ -1429,7 +1435,7 @@ static HRESULT WINAPI
|
|||
IFSFldr_PersistFolder3_GetFolderTargetInfo (IPersistFolder3 * iface,
|
||||
PERSIST_FOLDER_TARGET_INFO * ppfti)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder3 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder3(iface);
|
||||
FIXME ("(%p)->(%p)\n", This, ppfti);
|
||||
ZeroMemory (ppfti, sizeof (ppfti));
|
||||
return E_NOTIMPL;
|
||||
|
@ -1456,7 +1462,7 @@ ISFDropTarget_QueryDrop (IDropTarget * iface, DWORD dwKeyState,
|
|||
{
|
||||
DWORD dwEffect = *pdwEffect;
|
||||
|
||||
_ICOM_THIS_From_IDropTarget (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
*pdwEffect = DROPEFFECT_NONE;
|
||||
|
||||
|
@ -1474,7 +1480,7 @@ ISFDropTarget_QueryDrop (IDropTarget * iface, DWORD dwKeyState,
|
|||
static HRESULT WINAPI
|
||||
ISFDropTarget_QueryInterface (IDropTarget * iface, REFIID riid, LPVOID * ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -1483,7 +1489,7 @@ ISFDropTarget_QueryInterface (IDropTarget * iface, REFIID riid, LPVOID * ppvObj)
|
|||
|
||||
static ULONG WINAPI ISFDropTarget_AddRef (IDropTarget * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -1492,7 +1498,7 @@ static ULONG WINAPI ISFDropTarget_AddRef (IDropTarget * iface)
|
|||
|
||||
static ULONG WINAPI ISFDropTarget_Release (IDropTarget * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -1505,7 +1511,7 @@ ISFDropTarget_DragEnter (IDropTarget * iface, IDataObject * pDataObject,
|
|||
{
|
||||
FORMATETC fmt;
|
||||
|
||||
_ICOM_THIS_From_IDropTarget (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
TRACE ("(%p)->(DataObject=%p)\n", This, pDataObject);
|
||||
|
||||
|
@ -1523,7 +1529,7 @@ static HRESULT WINAPI
|
|||
ISFDropTarget_DragOver (IDropTarget * iface, DWORD dwKeyState, POINTL pt,
|
||||
DWORD * pdwEffect)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -1537,7 +1543,7 @@ ISFDropTarget_DragOver (IDropTarget * iface, DWORD dwKeyState, POINTL pt,
|
|||
|
||||
static HRESULT WINAPI ISFDropTarget_DragLeave (IDropTarget * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -1550,7 +1556,7 @@ static HRESULT WINAPI
|
|||
ISFDropTarget_Drop (IDropTarget * iface, IDataObject * pDataObject,
|
||||
DWORD dwKeyState, POINTL pt, DWORD * pdwEffect)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
FIXME ("(%p) object dropped\n", This);
|
||||
|
||||
|
|
|
@ -66,8 +66,11 @@ typedef struct {
|
|||
static const IShellFolder2Vtbl vt_ShellFolder2;
|
||||
static const IPersistFolder2Vtbl vt_PersistFolder2;
|
||||
|
||||
#define _IPersistFolder2_Offset ((int)(&(((IGenericSFImpl*)0)->lpVtblPersistFolder2)))
|
||||
#define _ICOM_THIS_From_IPersistFolder2(class, name) class* This = (class*)(((char*)name)-_IPersistFolder2_Offset);
|
||||
static inline IGenericSFImpl *impl_from_IPersistFolder2( IPersistFolder2 *iface )
|
||||
{
|
||||
return (IGenericSFImpl *)((char*)iface - FIELD_OFFSET(IGenericSFImpl, lpVtblPersistFolder2));
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
converts This to an interface pointer
|
||||
|
@ -855,7 +858,7 @@ static const IShellFolder2Vtbl vt_ShellFolder2 =
|
|||
static HRESULT WINAPI IMCFldr_PersistFolder2_QueryInterface (
|
||||
IPersistFolder2 * iface, REFIID iid, LPVOID * ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder2(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -867,7 +870,7 @@ static HRESULT WINAPI IMCFldr_PersistFolder2_QueryInterface (
|
|||
*/
|
||||
static ULONG WINAPI IMCFldr_PersistFolder2_AddRef (IPersistFolder2 * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder2(iface);
|
||||
|
||||
TRACE ("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -879,7 +882,7 @@ static ULONG WINAPI IMCFldr_PersistFolder2_AddRef (IPersistFolder2 * iface)
|
|||
*/
|
||||
static ULONG WINAPI IMCFldr_PersistFolder2_Release (IPersistFolder2 * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder2(iface);
|
||||
|
||||
TRACE ("(%p)->(count=%lu)\n", This, This->ref);
|
||||
|
||||
|
@ -892,7 +895,7 @@ static ULONG WINAPI IMCFldr_PersistFolder2_Release (IPersistFolder2 * iface)
|
|||
static HRESULT WINAPI IMCFldr_PersistFolder2_GetClassID (
|
||||
IPersistFolder2 * iface, CLSID * lpClassId)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder2(iface);
|
||||
|
||||
TRACE ("(%p)\n", This);
|
||||
|
||||
|
@ -911,7 +914,7 @@ static HRESULT WINAPI IMCFldr_PersistFolder2_GetClassID (
|
|||
static HRESULT WINAPI IMCFldr_PersistFolder2_Initialize (
|
||||
IPersistFolder2 * iface, LPCITEMIDLIST pidl)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder2(iface);
|
||||
TRACE ("(%p)->(%p)\n", This, pidl);
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
@ -922,7 +925,7 @@ static HRESULT WINAPI IMCFldr_PersistFolder2_Initialize (
|
|||
static HRESULT WINAPI IMCFldr_PersistFolder2_GetCurFolder (
|
||||
IPersistFolder2 * iface, LPITEMIDLIST * pidl)
|
||||
{
|
||||
_ICOM_THIS_From_IPersistFolder2 (IGenericSFImpl, iface);
|
||||
IGenericSFImpl *This = impl_from_IPersistFolder2(iface);
|
||||
|
||||
TRACE ("(%p)->(%p)\n", This, pidl);
|
||||
|
||||
|
|
|
@ -104,20 +104,30 @@ typedef struct
|
|||
|
||||
static const IShellViewVtbl svvt;
|
||||
static const IOleCommandTargetVtbl ctvt;
|
||||
#define _IOleCommandTarget_Offset ((int)(&(((IShellViewImpl*)0)->lpvtblOleCommandTarget)))
|
||||
#define _ICOM_THIS_From_IOleCommandTarget(class, name) class* This = (class*)(((char*)name)-_IOleCommandTarget_Offset);
|
||||
|
||||
static const IDropTargetVtbl dtvt;
|
||||
#define _IDropTarget_Offset ((int)(&(((IShellViewImpl*)0)->lpvtblDropTarget)))
|
||||
#define _ICOM_THIS_From_IDropTarget(class, name) class* This = (class*)(((char*)name)-_IDropTarget_Offset);
|
||||
|
||||
static const IDropSourceVtbl dsvt;
|
||||
#define _IDropSource_Offset ((int)(&(((IShellViewImpl*)0)->lpvtblDropSource)))
|
||||
#define _ICOM_THIS_From_IDropSource(class, name) class* This = (class*)(((char*)name)-_IDropSource_Offset);
|
||||
|
||||
static const IViewObjectVtbl vovt;
|
||||
#define _IViewObject_Offset ((int)(&(((IShellViewImpl*)0)->lpvtblViewObject)))
|
||||
#define _ICOM_THIS_From_IViewObject(class, name) class* This = (class*)(((char*)name)-_IViewObject_Offset);
|
||||
|
||||
|
||||
static inline IShellViewImpl *impl_from_IOleCommandTarget( IOleCommandTarget *iface )
|
||||
{
|
||||
return (IShellViewImpl *)((char*)iface - FIELD_OFFSET(IShellViewImpl, lpvtblOleCommandTarget));
|
||||
}
|
||||
|
||||
static inline IShellViewImpl *impl_from_IDropTarget( IDropTarget *iface )
|
||||
{
|
||||
return (IShellViewImpl *)((char*)iface - FIELD_OFFSET(IShellViewImpl, lpvtblDropTarget));
|
||||
}
|
||||
|
||||
static inline IShellViewImpl *impl_from_IDropSource( IDropSource *iface )
|
||||
{
|
||||
return (IShellViewImpl *)((char*)iface - FIELD_OFFSET(IShellViewImpl, lpvtblDropSource));
|
||||
}
|
||||
|
||||
static inline IShellViewImpl *impl_from_IViewObject( IViewObject *iface )
|
||||
{
|
||||
return (IShellViewImpl *)((char*)iface - FIELD_OFFSET(IShellViewImpl, lpvtblViewObject));
|
||||
}
|
||||
|
||||
/* ListView Header ID's */
|
||||
#define LISTVIEW_COLUMN_NAME 0
|
||||
|
@ -2017,7 +2027,7 @@ static HRESULT WINAPI ISVOleCmdTarget_QueryInterface(
|
|||
REFIID iid,
|
||||
LPVOID* ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_IOleCommandTarget(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IOleCommandTarget(iface);
|
||||
|
||||
return IShellFolder_QueryInterface((IShellFolder*)This, iid, ppvObj);
|
||||
}
|
||||
|
@ -2028,7 +2038,7 @@ static HRESULT WINAPI ISVOleCmdTarget_QueryInterface(
|
|||
static ULONG WINAPI ISVOleCmdTarget_AddRef(
|
||||
IOleCommandTarget * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IOleCommandTarget(IShellFolder, iface);
|
||||
IShellViewImpl *This = impl_from_IOleCommandTarget(iface);
|
||||
|
||||
return IShellFolder_AddRef((IShellFolder*)This);
|
||||
}
|
||||
|
@ -2039,7 +2049,7 @@ static ULONG WINAPI ISVOleCmdTarget_AddRef(
|
|||
static ULONG WINAPI ISVOleCmdTarget_Release(
|
||||
IOleCommandTarget * iface)
|
||||
{
|
||||
_ICOM_THIS_From_IOleCommandTarget(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IOleCommandTarget(iface);
|
||||
|
||||
return IShellFolder_Release((IShellFolder*)This);
|
||||
}
|
||||
|
@ -2055,7 +2065,7 @@ static HRESULT WINAPI ISVOleCmdTarget_QueryStatus(
|
|||
OLECMDTEXT* pCmdText)
|
||||
{
|
||||
UINT i;
|
||||
_ICOM_THIS_From_IOleCommandTarget(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IOleCommandTarget(iface);
|
||||
|
||||
FIXME("(%p)->(%p(%s) 0x%08lx %p %p\n",
|
||||
This, pguidCmdGroup, debugstr_guid(pguidCmdGroup), cCmds, prgCmds, pCmdText);
|
||||
|
@ -2083,7 +2093,7 @@ static HRESULT WINAPI ISVOleCmdTarget_Exec(
|
|||
VARIANT* pvaIn,
|
||||
VARIANT* pvaOut)
|
||||
{
|
||||
_ICOM_THIS_From_IOleCommandTarget(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IOleCommandTarget(iface);
|
||||
|
||||
FIXME("(%p)->(\n\tTarget GUID:%s Command:0x%08lx Opt:0x%08lx %p %p)\n",
|
||||
This, debugstr_guid(pguidCmdGroup), nCmdID, nCmdexecopt, pvaIn, pvaOut);
|
||||
|
@ -2118,7 +2128,7 @@ static HRESULT WINAPI ISVDropTarget_QueryInterface(
|
|||
REFIID riid,
|
||||
LPVOID *ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
TRACE("(%p)->(\n\tIID:\t%s,%p)\n",This,debugstr_guid(riid),ppvObj);
|
||||
|
||||
|
@ -2127,7 +2137,7 @@ static HRESULT WINAPI ISVDropTarget_QueryInterface(
|
|||
|
||||
static ULONG WINAPI ISVDropTarget_AddRef( IDropTarget *iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n",This,This->ref);
|
||||
|
||||
|
@ -2136,7 +2146,7 @@ static ULONG WINAPI ISVDropTarget_AddRef( IDropTarget *iface)
|
|||
|
||||
static ULONG WINAPI ISVDropTarget_Release( IDropTarget *iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n",This,This->ref);
|
||||
|
||||
|
@ -2151,7 +2161,7 @@ static HRESULT WINAPI ISVDropTarget_DragEnter(
|
|||
DWORD *pdwEffect)
|
||||
{
|
||||
|
||||
_ICOM_THIS_From_IDropTarget(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
FIXME("Stub: This=%p, DataObject=%p\n",This,pDataObject);
|
||||
|
||||
|
@ -2164,7 +2174,7 @@ static HRESULT WINAPI ISVDropTarget_DragOver(
|
|||
POINTL pt,
|
||||
DWORD *pdwEffect)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
FIXME("Stub: This=%p\n",This);
|
||||
|
||||
|
@ -2174,7 +2184,7 @@ static HRESULT WINAPI ISVDropTarget_DragOver(
|
|||
static HRESULT WINAPI ISVDropTarget_DragLeave(
|
||||
IDropTarget *iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
FIXME("Stub: This=%p\n",This);
|
||||
|
||||
|
@ -2188,7 +2198,7 @@ static HRESULT WINAPI ISVDropTarget_Drop(
|
|||
POINTL pt,
|
||||
DWORD *pdwEffect)
|
||||
{
|
||||
_ICOM_THIS_From_IDropTarget(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropTarget(iface);
|
||||
|
||||
FIXME("Stub: This=%p\n",This);
|
||||
|
||||
|
@ -2215,7 +2225,7 @@ static HRESULT WINAPI ISVDropSource_QueryInterface(
|
|||
REFIID riid,
|
||||
LPVOID *ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_IDropSource(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropSource(iface);
|
||||
|
||||
TRACE("(%p)->(\n\tIID:\t%s,%p)\n",This,debugstr_guid(riid),ppvObj);
|
||||
|
||||
|
@ -2224,7 +2234,7 @@ static HRESULT WINAPI ISVDropSource_QueryInterface(
|
|||
|
||||
static ULONG WINAPI ISVDropSource_AddRef( IDropSource *iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDropSource(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropSource(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n",This,This->ref);
|
||||
|
||||
|
@ -2233,7 +2243,7 @@ static ULONG WINAPI ISVDropSource_AddRef( IDropSource *iface)
|
|||
|
||||
static ULONG WINAPI ISVDropSource_Release( IDropSource *iface)
|
||||
{
|
||||
_ICOM_THIS_From_IDropSource(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropSource(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n",This,This->ref);
|
||||
|
||||
|
@ -2244,7 +2254,7 @@ static HRESULT WINAPI ISVDropSource_QueryContinueDrag(
|
|||
BOOL fEscapePressed,
|
||||
DWORD grfKeyState)
|
||||
{
|
||||
_ICOM_THIS_From_IDropSource(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropSource(iface);
|
||||
TRACE("(%p)\n",This);
|
||||
|
||||
if (fEscapePressed)
|
||||
|
@ -2259,7 +2269,7 @@ static HRESULT WINAPI ISVDropSource_GiveFeedback(
|
|||
IDropSource *iface,
|
||||
DWORD dwEffect)
|
||||
{
|
||||
_ICOM_THIS_From_IDropSource(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IDropSource(iface);
|
||||
TRACE("(%p)\n",This);
|
||||
|
||||
return DRAGDROP_S_USEDEFAULTCURSORS;
|
||||
|
@ -2282,7 +2292,7 @@ static HRESULT WINAPI ISVViewObject_QueryInterface(
|
|||
REFIID riid,
|
||||
LPVOID *ppvObj)
|
||||
{
|
||||
_ICOM_THIS_From_IViewObject(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IViewObject(iface);
|
||||
|
||||
TRACE("(%p)->(\n\tIID:\t%s,%p)\n",This,debugstr_guid(riid),ppvObj);
|
||||
|
||||
|
@ -2291,7 +2301,7 @@ static HRESULT WINAPI ISVViewObject_QueryInterface(
|
|||
|
||||
static ULONG WINAPI ISVViewObject_AddRef( IViewObject *iface)
|
||||
{
|
||||
_ICOM_THIS_From_IViewObject(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IViewObject(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n",This,This->ref);
|
||||
|
||||
|
@ -2300,7 +2310,7 @@ static ULONG WINAPI ISVViewObject_AddRef( IViewObject *iface)
|
|||
|
||||
static ULONG WINAPI ISVViewObject_Release( IViewObject *iface)
|
||||
{
|
||||
_ICOM_THIS_From_IViewObject(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IViewObject(iface);
|
||||
|
||||
TRACE("(%p)->(count=%lu)\n",This,This->ref);
|
||||
|
||||
|
@ -2321,7 +2331,7 @@ static HRESULT WINAPI ISVViewObject_Draw(
|
|||
ULONG_PTR dwContinue)
|
||||
{
|
||||
|
||||
_ICOM_THIS_From_IViewObject(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IViewObject(iface);
|
||||
|
||||
FIXME("Stub: This=%p\n",This);
|
||||
|
||||
|
@ -2337,7 +2347,7 @@ static HRESULT WINAPI ISVViewObject_GetColorSet(
|
|||
LOGPALETTE** ppColorSet)
|
||||
{
|
||||
|
||||
_ICOM_THIS_From_IViewObject(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IViewObject(iface);
|
||||
|
||||
FIXME("Stub: This=%p\n",This);
|
||||
|
||||
|
@ -2351,7 +2361,7 @@ static HRESULT WINAPI ISVViewObject_Freeze(
|
|||
DWORD* pdwFreeze)
|
||||
{
|
||||
|
||||
_ICOM_THIS_From_IViewObject(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IViewObject(iface);
|
||||
|
||||
FIXME("Stub: This=%p\n",This);
|
||||
|
||||
|
@ -2362,7 +2372,7 @@ static HRESULT WINAPI ISVViewObject_Unfreeze(
|
|||
DWORD dwFreeze)
|
||||
{
|
||||
|
||||
_ICOM_THIS_From_IViewObject(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IViewObject(iface);
|
||||
|
||||
FIXME("Stub: This=%p\n",This);
|
||||
|
||||
|
@ -2375,7 +2385,7 @@ static HRESULT WINAPI ISVViewObject_SetAdvise(
|
|||
IAdviseSink* pAdvSink)
|
||||
{
|
||||
|
||||
_ICOM_THIS_From_IViewObject(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IViewObject(iface);
|
||||
|
||||
FIXME("partial stub: %p %08lx %08lx %p\n",
|
||||
This, aspects, advf, pAdvSink);
|
||||
|
@ -2395,7 +2405,7 @@ static HRESULT WINAPI ISVViewObject_GetAdvise(
|
|||
IAdviseSink** ppAdvSink)
|
||||
{
|
||||
|
||||
_ICOM_THIS_From_IViewObject(IShellViewImpl, iface);
|
||||
IShellViewImpl *This = impl_from_IViewObject(iface);
|
||||
|
||||
TRACE("This=%p pAspects=%p pAdvf=%p ppAdvSink=%p\n",
|
||||
This, pAspects, pAdvf, ppAdvSink);
|
||||
|
|
Loading…
Reference in New Issue