Author: gadamopoulos Date: Wed Aug 19 12:09:21 2015 New Revision: 68768
URL: http://svn.reactos.org/svn/reactos?rev=68768&view=rev Log: [SHELL32] - Add a CDefView_Constructor that lets us keep the code simple for the shell folders.
Modified: trunk/reactos/dll/win32/shell32/CDefView.cpp trunk/reactos/dll/win32/shell32/folders/CControlPanelFolder.cpp trunk/reactos/dll/win32/shell32/folders/CDrivesFolder.cpp trunk/reactos/dll/win32/shell32/folders/CFSFolder.cpp trunk/reactos/dll/win32/shell32/folders/CNetFolder.cpp trunk/reactos/dll/win32/shell32/folders/CPrinterFolder.cpp trunk/reactos/dll/win32/shell32/folders/CRecycleBin.cpp trunk/reactos/dll/win32/shell32/wine/shell32_main.h
Modified: trunk/reactos/dll/win32/shell32/CDefView.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/CDefView.... ============================================================================== --- trunk/reactos/dll/win32/shell32/CDefView.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/CDefView.cpp [iso-8859-1] Wed Aug 19 12:09:21 2015 @@ -3110,3 +3110,8 @@ { return ShellObjectCreatorInit<CDefView>(pFolder, IID_IShellView, newView); } + +HRESULT WINAPI CDefView_Constructor(IShellFolder *pFolder, REFIID riid, LPVOID * ppvOut) +{ + return ShellObjectCreatorInit<CDefView>(pFolder, riid, ppvOut); +}
Modified: trunk/reactos/dll/win32/shell32/folders/CControlPanelFolder.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/C... ============================================================================== --- trunk/reactos/dll/win32/shell32/folders/CControlPanelFolder.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CControlPanelFolder.cpp [iso-8859-1] Wed Aug 19 12:09:21 2015 @@ -440,10 +440,7 @@ 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);
Modified: trunk/reactos/dll/win32/shell32/folders/CDrivesFolder.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/C... ============================================================================== --- trunk/reactos/dll/win32/shell32/folders/CDrivesFolder.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CDrivesFolder.cpp [iso-8859-1] Wed Aug 19 12:09:21 2015 @@ -323,11 +323,7 @@ } 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;
Modified: trunk/reactos/dll/win32/shell32/folders/CFSFolder.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/C... ============================================================================== --- trunk/reactos/dll/win32/shell32/folders/CFSFolder.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CFSFolder.cpp [iso-8859-1] Wed Aug 19 12:09:21 2015 @@ -345,11 +345,7 @@ } 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);
Modified: trunk/reactos/dll/win32/shell32/folders/CNetFolder.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/C... ============================================================================== --- trunk/reactos/dll/win32/shell32/folders/CNetFolder.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CNetFolder.cpp [iso-8859-1] Wed Aug 19 12:09:21 2015 @@ -158,11 +158,7 @@ } 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;
Modified: trunk/reactos/dll/win32/shell32/folders/CPrinterFolder.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/C... ============================================================================== --- trunk/reactos/dll/win32/shell32/folders/CPrinterFolder.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CPrinterFolder.cpp [iso-8859-1] Wed Aug 19 12:09:21 2015 @@ -426,11 +426,7 @@ } 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;
Modified: trunk/reactos/dll/win32/shell32/folders/CRecycleBin.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/C... ============================================================================== --- trunk/reactos/dll/win32/shell32/folders/CRecycleBin.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CRecycleBin.cpp [iso-8859-1] Wed Aug 19 12:09:21 2015 @@ -528,11 +528,7 @@ } 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;
Modified: trunk/reactos/dll/win32/shell32/wine/shell32_main.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/wine/shel... ============================================================================== --- trunk/reactos/dll/win32/shell32/wine/shell32_main.h [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/wine/shell32_main.h [iso-8859-1] Wed Aug 19 12:09:21 2015 @@ -70,6 +70,7 @@ 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);