mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-31 12:54:13 +00:00
Implement GetAdvise and SetAdvise.
This commit is contained in:
parent
213c17e579
commit
18fb9ace14
1 changed files with 29 additions and 5 deletions
|
@ -97,6 +97,9 @@ typedef struct
|
|||
LISTVIEW_SORT_INFO ListViewSortInfo;
|
||||
ULONG hNotify; /* change notification handle */
|
||||
HANDLE hAccel;
|
||||
DWORD dwAspects;
|
||||
DWORD dwAdvf;
|
||||
IAdviseSink *pAdvSink;
|
||||
} IShellViewImpl;
|
||||
|
||||
static struct IShellViewVtbl svvt;
|
||||
|
@ -1664,9 +1667,12 @@ static ULONG WINAPI IShellView_fnRelease(IShellView * iface)
|
|||
if(This->pSF2Parent)
|
||||
IShellFolder2_Release(This->pSF2Parent);
|
||||
|
||||
if (This->apidl)
|
||||
if(This->apidl)
|
||||
SHFree(This->apidl);
|
||||
|
||||
if(This->pAdvSink)
|
||||
IAdviseSink_Release(This->pAdvSink);
|
||||
|
||||
HeapFree(GetProcessHeap(),0,This);
|
||||
}
|
||||
return refCount;
|
||||
|
@ -2372,10 +2378,17 @@ static HRESULT WINAPI ISVViewObject_SetAdvise(
|
|||
|
||||
_ICOM_THIS_From_IViewObject(IShellViewImpl, iface);
|
||||
|
||||
FIXME("Stub: This=%p\n",This);
|
||||
FIXME("partial stub: %p %08lx %08lx %p\n",
|
||||
This, aspects, advf, pAdvSink);
|
||||
|
||||
return E_NOTIMPL;
|
||||
/* FIXME: we set the AdviseSink, but never use it to send any advice */
|
||||
This->pAdvSink = pAdvSink;
|
||||
This->dwAspects = aspects;
|
||||
This->dwAdvf = advf;
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI ISVViewObject_GetAdvise(
|
||||
IViewObject *iface,
|
||||
DWORD* pAspects,
|
||||
|
@ -2385,9 +2398,20 @@ static HRESULT WINAPI ISVViewObject_GetAdvise(
|
|||
|
||||
_ICOM_THIS_From_IViewObject(IShellViewImpl, iface);
|
||||
|
||||
FIXME("Stub: This=%p\n",This);
|
||||
TRACE("This=%p pAspects=%p pAdvf=%p ppAdvSink=%p\n",
|
||||
This, pAspects, pAdvf, ppAdvSink);
|
||||
|
||||
return E_NOTIMPL;
|
||||
if( ppAdvSink )
|
||||
{
|
||||
IAdviseSink_AddRef( This->pAdvSink );
|
||||
*ppAdvSink = This->pAdvSink;
|
||||
}
|
||||
if( pAspects )
|
||||
*pAspects = This->dwAspects;
|
||||
if( pAdvf )
|
||||
*pAdvf = This->dwAdvf;
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue