98 return psf->QueryInterface(
riid, ppvOut);
122 return psf_parent->GetUIObjectOf(
NULL, 1, &pidl,
riid,
NULL, ppvOut);
135 return psf->CreateViewObject(
NULL,
riid, ppvOut);
148 TRACE(
"(%p,%p)\n",
this, ppsi);
171 TRACE(
"(%p,%x,%p)\n",
this, sfgaoMask, psfgaoAttribs);
181 *psfgaoAttribs = sfgaoMask;
182 hr = parent_folder->GetAttributesOf(1, &child_pidl, psfgaoAttribs);
183 *psfgaoAttribs &= sfgaoMask;
188 return (sfgaoMask == *psfgaoAttribs) ?
S_OK :
S_FALSE;
198 TRACE(
"(%p,%p,%x,%p)\n",
this, oth,
hint, piOrder);
206 hr = pIDList->GetIDList(&pidl);
230 TRACE(
"(%p,%p)\n",
this, pClassID);
232 *pClassID = CLSID_ShellItem;
240 TRACE(
"(%p,%p)\n",
this, pidlx);
255 TRACE(
"(%p,%p)\n",
this, ppidl);
272 TRACE(
"(%p,%p,%p,%p)\n", pidlParent, psfParent, pidl, ppsi);
279 if (pidlParent || psfParent)
288 FIXME(
"couldn't get IPersistFolder2 interface of parent\n");
292 if (
FAILED(ppf2Parent->GetCurFolder(&temp_parent)))
294 FIXME(
"couldn't get parent PIDL\n");
298 pidlParent = temp_parent;
326 hr = newPersistIDList->SetIDList(new_pidl);
334 *ppsi = newShellItem.
Detach();
BOOL _ILIsDesktop(LPCITEMIDLIST pidl)
HRESULT WINAPI SHGetDesktopFolder(IShellFolder **psf)
EXTERN_C HRESULT WINAPI SHCreateShellItem(PCIDLIST_ABSOLUTE pidlParent, IShellFolder *psfParent, PCUITEMID_CHILD pidl, IShellItem **ppsi)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
void shell(int argc, const char *argv[])
virtual HRESULT WINAPI SetIDList(PCIDLIST_ABSOLUTE pidl)
virtual HRESULT WINAPI GetParent(IShellItem **ppsi)
virtual HRESULT WINAPI GetIDList(PIDLIST_ABSOLUTE *ppidl)
virtual HRESULT WINAPI Compare(IShellItem *oth, SICHINTF hint, int *piOrder)
HRESULT get_parent_shellfolder(IShellFolder **ppsf)
virtual HRESULT WINAPI GetAttributes(SFGAOF sfgaoMask, SFGAOF *psfgaoAttribs)
virtual HRESULT WINAPI GetDisplayName(SIGDN sigdnName, LPWSTR *ppszName)
HRESULT get_shellfolder(IBindCtx *pbc, REFIID riid, void **ppvOut)
virtual HRESULT WINAPI BindToHandler(IBindCtx *pbc, REFGUID rbhid, REFIID riid, void **ppvOut)
virtual HRESULT WINAPI GetClassID(CLSID *pClassID)
HRESULT get_parent_pidl(LPITEMIDLIST *parent_pidl)
const char * shdebugstr_guid(const struct _GUID *id)
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
static IShellFolder IShellItem **static IBindCtx LPITEMIDLIST SFGAOF
HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
const GUID IID_IDataObject
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
void WINAPI ILFree(LPITEMIDLIST pidl)
LPITEMIDLIST WINAPI ILFindLastID(LPCITEMIDLIST pidl)
HRESULT WINAPI SHGetNameFromIDList(PCIDLIST_ABSOLUTE pidl, SIGDN sigdnName, PWSTR *ppszName)
LPITEMIDLIST WINAPI ILCombine(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2)
BOOL WINAPI ILRemoveLastID(LPITEMIDLIST pidl)
#define IsEqualGUID(rguid1, rguid2)
#define FAILED_UNEXPECTEDLY(hr)
ITEMIDLIST UNALIGNED * LPITEMIDLIST
const ITEMID_CHILD UNALIGNED * PCUITEMID_CHILD
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
#define IID_PPV_ARG(Itype, ppType)