ReactOS 0.4.15-dev-7958-gcd0bb1a
CFolderItem Class Reference

#include <CFolderItems.h>

Inheritance diagram for CFolderItem:
Collaboration diagram for CFolderItem:

Public Member Functions

 CFolderItem ()
 
 ~CFolderItem ()
 
HRESULT Initialize (Folder *folder, LPITEMIDLIST idlist)
 
STDMETHOD() get_Application (IDispatch **ppid) override
 
STDMETHOD() get_Parent (IDispatch **ppid) override
 
STDMETHOD() get_Name (BSTR *pbs) override
 
STDMETHOD() put_Name (BSTR bs) override
 
STDMETHOD() get_Path (BSTR *pbs) override
 
STDMETHOD() get_GetLink (IDispatch **ppid) override
 
STDMETHOD() get_GetFolder (IDispatch **ppid) override
 
STDMETHOD() get_IsLink (VARIANT_BOOL *pb) override
 
STDMETHOD() get_IsFolder (VARIANT_BOOL *pb) override
 
STDMETHOD() get_IsFileSystem (VARIANT_BOOL *pb) override
 
STDMETHOD() get_IsBrowsable (VARIANT_BOOL *pb) override
 
STDMETHOD() get_ModifyDate (DATE *pdt) override
 
STDMETHOD() put_ModifyDate (DATE dt) override
 
STDMETHOD() get_Size (LONG *pul) override
 
STDMETHOD() get_Type (BSTR *pbs) override
 
STDMETHOD() Verbs (FolderItemVerbs **ppfic) override
 
STDMETHOD() InvokeVerb (VARIANT vVerb) override
 
- Public Member Functions inherited from ATL::CComObjectRootEx< CComMultiThreadModelNoCS >
 ~CComObjectRootEx ()
 
ULONG InternalAddRef ()
 
ULONG InternalRelease ()
 
void Lock ()
 
void Unlock ()
 
HRESULT _AtlInitialConstruct ()
 
- Public Member Functions inherited from ATL::CComObjectRootBase
 CComObjectRootBase ()
 
 ~CComObjectRootBase ()
 
void SetVoid (void *)
 
HRESULT _AtlFinalConstruct ()
 
HRESULT FinalConstruct ()
 
void InternalFinalConstructAddRef ()
 
void InternalFinalConstructRelease ()
 
void FinalRelease ()
 

Private Attributes

CComHeapPtr< ITEMIDLISTm_idlist
 
CComPtr< Folder > m_Folder
 

Additional Inherited Members

- Static Public Member Functions inherited from ATL::CComObjectRootBase
static void WINAPI ObjectMain (bool)
 
static const struct _ATL_CATMAP_ENTRYGetCategoryMap ()
 
static HRESULT WINAPI InternalQueryInterface (void *pThis, const _ATL_INTMAP_ENTRY *pEntries, REFIID iid, void **ppvObject)
 
- Public Attributes inherited from ATL::CComObjectRootBase
LONG m_dwRef
 

Detailed Description

Definition at line 12 of file CFolderItems.h.

Constructor & Destructor Documentation

◆ CFolderItem()

CFolderItem::CFolderItem ( )

Definition at line 13 of file CFolderItems.cpp.

14{
15}

◆ ~CFolderItem()

CFolderItem::~CFolderItem ( )

Definition at line 17 of file CFolderItems.cpp.

18{
19}

Member Function Documentation

◆ get_Application()

HRESULT STDMETHODCALLTYPE CFolderItem::get_Application ( IDispatch **  ppid)
override

Definition at line 29 of file CFolderItems.cpp.

30{
31 TRACE("(%p, %p)\n", this, ppid);
32 return m_Folder->get_Application(ppid);
33}
CComPtr< Folder > m_Folder
Definition: CFolderItems.h:19
#define TRACE(s)
Definition: solgame.cpp:4

◆ get_GetFolder()

HRESULT STDMETHODCALLTYPE CFolderItem::get_GetFolder ( IDispatch **  ppid)
override

Definition at line 94 of file CFolderItems.cpp.

95{
96 TRACE("(%p, %p)\n", this, ppid);
97 return E_NOTIMPL;
98}
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_GetLink()

HRESULT STDMETHODCALLTYPE CFolderItem::get_GetLink ( IDispatch **  ppid)
override

Definition at line 88 of file CFolderItems.cpp.

89{
90 TRACE("(%p, %p)\n", this, ppid);
91 return E_NOTIMPL;
92}

◆ get_IsBrowsable()

HRESULT STDMETHODCALLTYPE CFolderItem::get_IsBrowsable ( VARIANT_BOOL pb)
override

Definition at line 118 of file CFolderItems.cpp.

119{
120 TRACE("(%p, %p)\n", this, pb);
121 return E_NOTIMPL;
122}

◆ get_IsFileSystem()

HRESULT STDMETHODCALLTYPE CFolderItem::get_IsFileSystem ( VARIANT_BOOL pb)
override

Definition at line 112 of file CFolderItems.cpp.

113{
114 TRACE("(%p, %p)\n", this, pb);
115 return E_NOTIMPL;
116}

◆ get_IsFolder()

HRESULT STDMETHODCALLTYPE CFolderItem::get_IsFolder ( VARIANT_BOOL pb)
override

Definition at line 106 of file CFolderItems.cpp.

107{
108 TRACE("(%p, %p)\n", this, pb);
109 return E_NOTIMPL;
110}

◆ get_IsLink()

HRESULT STDMETHODCALLTYPE CFolderItem::get_IsLink ( VARIANT_BOOL pb)
override

Definition at line 100 of file CFolderItems.cpp.

101{
102 TRACE("(%p, %p)\n", this, pb);
103 return E_NOTIMPL;
104}

◆ get_ModifyDate()

HRESULT STDMETHODCALLTYPE CFolderItem::get_ModifyDate ( DATE pdt)
override

Definition at line 124 of file CFolderItems.cpp.

125{
126 TRACE("(%p, %p)\n", this, pdt);
127 return E_NOTIMPL;
128}

◆ get_Name()

HRESULT STDMETHODCALLTYPE CFolderItem::get_Name ( BSTR pbs)
override

Definition at line 46 of file CFolderItems.cpp.

47{
48 TRACE("(%p, %p)\n", this, pbs);
49
50 *pbs = NULL;
51
53 LPCITEMIDLIST last_part;
56 return hr;
57
58 STRRET strret;
59 hr = Parent->GetDisplayNameOf(last_part, SHGDN_INFOLDER, &strret);
61 hr = StrRetToBSTR(&strret, last_part, pbs);
62
63 return hr;
64}
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 ACPI_BUFFER *RetPathPtr ACPI_OBJECT_HANDLER void *Data ACPI_OBJECT_HANDLER void **Data ACPI_STRING ACPI_OBJECT_LIST ACPI_BUFFER *ReturnObjectBuffer ACPI_DEVICE_INFO **ReturnBuffer ACPI_HANDLE Parent
Definition: acpixf.h:732
CComHeapPtr< ITEMIDLIST > m_idlist
Definition: CFolderItems.h:18
#define NULL
Definition: types.h:112
#define FAILED_UNEXPECTEDLY(hr)
Definition: precomp.h:121
HRESULT WINAPI StrRetToBSTR(STRRET *lpStrRet, LPCITEMIDLIST pidl, BSTR *pBstrOut)
Definition: string.c:1694
HRESULT WINAPI SHBindToParent(LPCITEMIDLIST pidl, REFIID riid, LPVOID *ppv, LPCITEMIDLIST *ppidlLast)
Definition: pidl.c:1361
HRESULT hr
Definition: shlfolder.c:183
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
#define IID_PPV_ARG(Itype, ppType)

◆ get_Parent()

HRESULT STDMETHODCALLTYPE CFolderItem::get_Parent ( IDispatch **  ppid)
override

Definition at line 35 of file CFolderItems.cpp.

36{
37 TRACE("(%p, %p)\n", this, ppid);
38 if (ppid)
39 {
40 *ppid = m_Folder;
41 (*ppid)->AddRef();
42 }
43 return E_NOTIMPL;
44}

◆ get_Path()

HRESULT STDMETHODCALLTYPE CFolderItem::get_Path ( BSTR pbs)
override

Definition at line 72 of file CFolderItems.cpp.

73{
74 CComPtr<IShellFolder> psfDesktop;
75
76 HRESULT hr = SHGetDesktopFolder(&psfDesktop);
77 if (!SUCCEEDED(hr))
78 return hr;
79
80 STRRET strret;
81 hr = psfDesktop->GetDisplayNameOf(m_idlist, SHGDN_FORPARSING, &strret);
83 return hr;
84
85 return StrRetToBSTR(&strret, NULL, pbs);
86}
HRESULT WINAPI SHGetDesktopFolder(IShellFolder **psf)
#define SUCCEEDED(hr)
Definition: intsafe.h:50

◆ get_Size()

HRESULT STDMETHODCALLTYPE CFolderItem::get_Size ( LONG pul)
override

Definition at line 136 of file CFolderItems.cpp.

137{
138 TRACE("(%p, %p)\n", this, pul);
139 return E_NOTIMPL;
140}

◆ get_Type()

HRESULT STDMETHODCALLTYPE CFolderItem::get_Type ( BSTR pbs)
override

Definition at line 142 of file CFolderItems.cpp.

143{
144 TRACE("(%p, %p)\n", this, pbs);
145 return E_NOTIMPL;
146}

◆ Initialize()

HRESULT CFolderItem::Initialize ( Folder *  folder,
LPITEMIDLIST  idlist 
)

Definition at line 21 of file CFolderItems.cpp.

22{
23 m_idlist.Attach(ILClone(idlist));
25 return S_OK;
26}
#define S_OK
Definition: intsafe.h:52
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:237
Definition: fci.c:116

◆ InvokeVerb()

HRESULT STDMETHODCALLTYPE CFolderItem::InvokeVerb ( VARIANT  vVerb)
override

Definition at line 164 of file CFolderItems.cpp.

165{
166 TRACE("(%p, %s)\n", this, wine_dbgstr_variant(&vVerb));
167 return E_NOTIMPL;
168}

◆ put_ModifyDate()

HRESULT STDMETHODCALLTYPE CFolderItem::put_ModifyDate ( DATE  dt)
override

Definition at line 130 of file CFolderItems.cpp.

131{
132 TRACE("(%p, %f)\n", this, dt);
133 return E_NOTIMPL;
134}

◆ put_Name()

HRESULT STDMETHODCALLTYPE CFolderItem::put_Name ( BSTR  bs)
override

Definition at line 66 of file CFolderItems.cpp.

67{
68 TRACE("(%p, %s)\n", this, wine_dbgstr_w(bs));
69 return E_NOTIMPL;
70}
#define wine_dbgstr_w
Definition: kernel32.h:34
static struct msdos_boot_sector bs
Definition: mkdosfs.c:539

◆ Verbs()

HRESULT STDMETHODCALLTYPE CFolderItem::Verbs ( FolderItemVerbs **  ppfic)
override

Definition at line 148 of file CFolderItems.cpp.

149{
150 if (!ppfic)
151 return E_POINTER;
153 HRESULT hr = verbs->Init(m_idlist);
155 {
156 delete verbs;
157 return hr;
158 }
159 verbs->AddRef();
160 *ppfic = verbs;
161 return S_OK;
162}
HRESULT Init(LPITEMIDLIST idlist)
#define E_POINTER
Definition: winerror.h:2365

Member Data Documentation

◆ m_Folder

CComPtr<Folder> CFolderItem::m_Folder
private

Definition at line 19 of file CFolderItems.h.

Referenced by get_Application(), get_Parent(), and Initialize().

◆ m_idlist

CComHeapPtr<ITEMIDLIST> CFolderItem::m_idlist
private

Definition at line 18 of file CFolderItems.h.

Referenced by get_Name(), get_Path(), Initialize(), and Verbs().


The documentation for this class was generated from the following files: