shell32: Implement Get/SetIDList on ShellItem objects.

This commit is contained in:
Vincent Povirk 2009-02-13 16:40:19 -06:00 committed by Alexandre Julliard
parent affd20d9c8
commit b4ea7d3221
1 changed files with 20 additions and 4 deletions

View File

@ -204,9 +204,20 @@ static HRESULT WINAPI ShellItem_IPersistIDList_SetIDList(IPersistIDList* iface,
LPCITEMIDLIST pidl)
{
ShellItem *This = impl_from_IPersistIDList(iface);
LPITEMIDLIST new_pidl;
FIXME("(%p,%p)\n", This, pidl);
return E_NOTIMPL;
TRACE("(%p,%p)\n", This, pidl);
new_pidl = ILClone(pidl);
if (new_pidl)
{
ILFree(This->pidl);
This->pidl = new_pidl;
return S_OK;
}
else
return E_OUTOFMEMORY;
}
static HRESULT WINAPI ShellItem_IPersistIDList_GetIDList(IPersistIDList* iface,
@ -214,8 +225,13 @@ static HRESULT WINAPI ShellItem_IPersistIDList_GetIDList(IPersistIDList* iface,
{
ShellItem *This = impl_from_IPersistIDList(iface);
FIXME("(%p,%p)\n", This, ppidl);
return E_NOTIMPL;
TRACE("(%p,%p)\n", This, ppidl);
*ppidl = ILClone(This->pidl);
if (*ppidl)
return S_OK;
else
return E_OUTOFMEMORY;
}
static const IPersistIDListVtbl ShellItem_IPersistIDList_Vtbl = {