[SHELL32]

- Add a CDefView_Constructor that lets us keep the code simple for the shell folders.

svn path=/trunk/; revision=68768
This commit is contained in:
Giannis Adamopoulos 2015-08-19 12:09:21 +00:00
parent 4436c96a25
commit 0cb0f1e091
8 changed files with 12 additions and 29 deletions

View file

@ -3110,3 +3110,8 @@ HRESULT WINAPI IShellView_Constructor(IShellFolder *pFolder, IShellView **newVie
{
return ShellObjectCreatorInit<CDefView>(pFolder, IID_IShellView, newView);
}
HRESULT WINAPI CDefView_Constructor(IShellFolder *pFolder, REFIID riid, LPVOID * ppvOut)
{
return ShellObjectCreatorInit<CDefView>(pFolder, riid, ppvOut);
}

View file

@ -440,10 +440,7 @@ HRESULT WINAPI CControlPanelFolder::CreateViewObject(HWND hwndOwner, REFIID riid
WARN("IContextMenu not implemented\n");
hr = E_NOTIMPL;
} else if (IsEqualIID(riid, IID_IShellView)) {
hr = IShellView_Constructor((IShellFolder *)this, &pShellView);
if (pShellView) {
hr = pShellView->QueryInterface(riid, ppvOut);
}
hr = CDefView_Constructor(this, riid, ppvOut);
}
}
TRACE("--(%p)->(interface=%p)\n", this, ppvOut);

View file

@ -323,11 +323,7 @@ HRESULT WINAPI CDrivesFolder::CreateViewObject(HWND hwndOwner, REFIID riid, LPVO
}
else if (IsEqualIID(riid, IID_IShellView))
{
hr = IShellView_Constructor ((IShellFolder *)this, &pShellView);
if (pShellView)
{
hr = pShellView->QueryInterface(riid, ppvOut);
}
hr = CDefView_Constructor(this, riid, ppvOut);
}
TRACE ("-- (%p)->(interface=%p)\n", this, ppvOut);
return hr;

View file

@ -345,11 +345,7 @@ HRESULT WINAPI CFSFolder::CreateViewObject(HWND hwndOwner,
}
else if (IsEqualIID (riid, IID_IShellView))
{
hr = IShellView_Constructor ((IShellFolder *)this, &pShellView);
if (pShellView)
{
hr = pShellView->QueryInterface(riid, ppvOut);
}
hr = CDefView_Constructor(this, riid, ppvOut);
}
}
TRACE("-- (%p)->(interface=%p)\n", this, ppvOut);

View file

@ -158,11 +158,7 @@ HRESULT WINAPI CNetFolder::CreateViewObject(HWND hwndOwner, REFIID riid, LPVOID
}
else if (IsEqualIID(riid, IID_IShellView))
{
hr = IShellView_Constructor((IShellFolder *)this, &pShellView);
if (pShellView)
{
hr = pShellView->QueryInterface(riid, ppvOut);
}
hr = CDefView_Constructor(this, riid, ppvOut);
}
TRACE("-- (%p)->(interface=%p)\n", this, ppvOut);
return hr;

View file

@ -426,11 +426,7 @@ HRESULT WINAPI CPrinterFolder::CreateViewObject(HWND hwndOwner, REFIID riid, LPV
}
else if(IsEqualIID(riid, IID_IShellView))
{
hr = IShellView_Constructor((IShellFolder *)this, &pShellView);
if (pShellView)
{
hr = pShellView->QueryInterface(riid, ppvOut);
}
hr = CDefView_Constructor(this, riid, ppvOut);
}
TRACE ("-- (%p)->(interface=%p)\n", this, ppvOut);
return hr;

View file

@ -528,11 +528,7 @@ HRESULT WINAPI CRecycleBin::CreateViewObject(HWND hwndOwner, REFIID riid, void *
}
else if (IsEqualIID (riid, IID_IShellView))
{
hr = IShellView_Constructor ((IShellFolder *)this, &pShellView);
if (pShellView)
{
hr = pShellView->QueryInterface(riid, ppv);
}
hr = CDefView_Constructor(this, riid, ppv);
}
else
return hr;

View file

@ -70,6 +70,7 @@ HRESULT WINAPI INewItem_Constructor(IUnknown * pUnkOuter, REFIID riif, LPVOID *p
IContextMenu2 * ISvStaticItemCm_Constructor(LPSHELLFOLDER pSFParent, LPCITEMIDLIST pidl, LPCITEMIDLIST *apidl, UINT cidl, HKEY hKey);
IContextMenu2 * ISvBgCm_Constructor(LPSHELLFOLDER pSFParent, BOOL bDesktop);
HRESULT WINAPI IShellView_Constructor(IShellFolder *pFolder, IShellView **newView);
HRESULT WINAPI CDefView_Constructor(IShellFolder *pFolder, REFIID riid, LPVOID * ppvOut);
HRESULT WINAPI IShellLink_ConstructFromFile(IUnknown * pUnkOuter, REFIID riid, LPCITEMIDLIST pidl, LPVOID * ppv);
HRESULT WINAPI IFileSystemBindData_Constructor(const WIN32_FIND_DATAW *pfd, LPBC *ppV);