4 * Copyright 1997 Marcus Meissner
15 #include "interfaces.h"
18 /******************************************************************************
19 * IEnumIDList implementation
22 static ULONG WINAPI
IEnumIDList_AddRef(LPENUMIDLIST
this) {
23 fprintf(stderr
,"IEnumIDList(%p)->AddRef()\n",this);
27 static ULONG WINAPI
IEnumIDList_Release(LPENUMIDLIST
this) {
28 fprintf(stderr
,"IEnumIDList(%p)->Release()\n",this);
30 fprintf(stderr
," -> freeing IEnumIDList(%p)\n",this);
31 HeapFree(GetProcessHeap(),0,this);
37 static HRESULT WINAPI
IEnumIDList_Next(
38 LPENUMIDLIST
this,ULONG celt
,LPITEMIDLIST
*rgelt
,ULONG
*pceltFetched
40 fprintf(stderr
,"IEnumIDList(%p)->Next(%ld,%p,%p),stub!\n",
41 this,celt
,rgelt
,pceltFetched
43 *pceltFetched
= 0; /* we don't have any ... */
47 static IEnumIDList_VTable eidlvt
= {
57 LPENUMIDLIST
IEnumIDList_Constructor() {
60 lpeidl
= (LPENUMIDLIST
)HeapAlloc(GetProcessHeap(),0,sizeof(IEnumIDList
));
62 lpeidl
->lpvtbl
= &eidlvt
;
66 /******************************************************************************
67 * IShellFolder implementation
69 static ULONG WINAPI
IShellFolder_Release(LPSHELLFOLDER
this) {
70 fprintf(stderr
,"IShellFolder(%p)->Release()\n",this);
72 fprintf(stderr
," -> freeing IShellFolder(%p)\n",this);
73 HeapFree(GetProcessHeap(),0,this);
79 static ULONG WINAPI
IShellFolder_AddRef(LPSHELLFOLDER
this) {
80 fprintf(stderr
,"IShellFolder(%p)->AddRef()\n",this);
84 static HRESULT WINAPI
IShellFolder_GetAttributesOf(
85 LPSHELLFOLDER
this,UINT32 cidl
,LPCITEMIDLIST
*apidl
,DWORD
*rgfInOut
87 fprintf(stderr
,"IShellFolder(%p)->GetAttributesOf(%d,%p,%p),stub!\n",
88 this,cidl
,apidl
,rgfInOut
93 static HRESULT WINAPI
IShellFolder_BindToObject(
94 LPSHELLFOLDER
this,LPCITEMIDLIST pidl
,LPBC pbcReserved
,REFIID riid
,LPVOID
* ppvOut
98 StringFromCLSID(riid
,xclsid
);
99 fprintf(stderr
,"IShellFolder(%p)->BindToObject(%p,%p,%s,%p),stub!\n",
100 this,pidl
,pbcReserved
,xclsid
,ppvOut
102 *ppvOut
= IShellFolder_Constructor();
106 static HRESULT WINAPI
IShellFolder_ParseDisplayName(
107 LPSHELLFOLDER
this,HWND32 hwndOwner
,LPBC pbcReserved
,
108 LPOLESTR lpszDisplayName
,DWORD
*pchEaten
,LPITEMIDLIST
*ppidl
,
111 fprintf(stderr
,"IShellFolder(%p)->ParseDisplayName(%08x,%p,%s,%p,%p,%p),stub!\n",
112 this,hwndOwner
,pbcReserved
,lpszDisplayName
,pchEaten
,ppidl
,pdwAttributes
114 *(DWORD
*)pbcReserved
= 0;
118 static HRESULT WINAPI
IShellFolder_EnumObjects(
119 LPSHELLFOLDER
this,HWND32 hwndOwner
,DWORD grfFlags
,
120 LPENUMIDLIST
* ppenumIDList
122 fprintf(stderr
,"IShellFolder(%p)->EnumObjects(0x%04x,0x%08lx,%p),stub!\n",
123 this,hwndOwner
,grfFlags
,ppenumIDList
125 *ppenumIDList
= IEnumIDList_Constructor();
129 static HRESULT WINAPI
IShellFolder_CreateViewObject(
130 LPSHELLFOLDER
this,HWND32 hwndOwner
,REFIID riid
,LPVOID
*ppv
134 StringFromCLSID(riid
,xclsid
);
135 fprintf(stderr
,"IShellFolder(%p)->CreateViewObject(0x%04x,%s,%p),stub!\n",
136 this,hwndOwner
,xclsid
,ppv
143 static struct IShellFolder_VTable sfvt
= {
146 IShellFolder_Release
,
147 IShellFolder_ParseDisplayName
,
148 IShellFolder_EnumObjects
,
149 IShellFolder_BindToObject
,
152 IShellFolder_CreateViewObject
,
153 IShellFolder_GetAttributesOf
,
159 LPSHELLFOLDER
IShellFolder_Constructor() {
162 sf
= (LPSHELLFOLDER
)HeapAlloc(GetProcessHeap(),0,sizeof(IShellFolder
));
168 static struct IShellLink_VTable slvt
= {
192 LPSHELLLINK
IShellLink_Constructor() {
195 sl
= (LPSHELLLINK
)HeapAlloc(GetProcessHeap(),0,sizeof(IShellLink
));