Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

43 lines
987 B

#include "folder.h"
///////////////////////////////////////////////////////////////////////////////
// IPersistFolder Methods
HRESULT CControlFolder::GetClassID(LPCLSID lpClassID)
{
DebugMsg(DM_TRACE, TEXT("cf - pf - GetClassID() called."));
// NOTE: Need to split cases here.
*lpClassID = CLSID_ControlFolder;
return S_OK;
}
HRESULT CControlFolder::Initialize(LPCITEMIDLIST pidlInit)
{
DebugMsg(DM_TRACE, TEXT("cf - pf - Initialize() called."));
if (m_pidl)
ILFree(m_pidl);
m_pidl = ILClone(pidlInit);
if (!m_pidl)
return E_OUTOFMEMORY;
return NOERROR;
}
///////////////////////////////////////////////////////////////////////////////
// IPersistFolder2 Methods
HRESULT CControlFolder::GetCurFolder(LPITEMIDLIST *ppidl)
{
DebugMsg(DM_TRACE, TEXT("cf - pf - GetCurFolder() called."));
if (m_pidl)
return SHILClone(m_pidl, ppidl);
*ppidl = NULL;
return S_FALSE; // success but empty
}