[BROWSEUI]

- Use the _CreateInstance postfix for all functions that instantiate a class.
- Move the the CreateInstance functions of the exported classes to browseui.h where we can select uniformly which built in classes we use.

svn path=/trunk/; revision=72053
This commit is contained in:
Giannis Adamopoulos 2016-07-30 11:53:16 +00:00
parent dea009126c
commit fdff190335
15 changed files with 147 additions and 174 deletions

View file

@ -27,8 +27,6 @@ Implements the navigation band of the cabinet window
#include <shlwapi_undoc.h>
#include <shellapi.h>
HRESULT CreateAddressEditBox(REFIID riid, void **ppv);
/*
TODO:
****Add command handler for show/hide Go button to OnWinEvent
@ -155,19 +153,9 @@ HRESULT STDMETHODCALLTYPE CAddressBand::SetSite(IUnknown *pUnkSite)
fEditControl = reinterpret_cast<HWND>(SendMessage(CBEM_GETEDITCONTROL, 0, 0));
fComboBox = reinterpret_cast<HWND>(SendMessage(CBEM_GETCOMBOCONTROL, 0, 0));
#if 1
hResult = CoCreateInstance(CLSID_AddressEditBox, NULL, CLSCTX_INPROC_SERVER,
IID_PPV_ARG(IAddressEditBox, &fAddressEditBox));
#else
hResult = E_FAIL;
#endif
hResult = CAddressEditBox_CreateInstance(IID_PPV_ARG(IAddressEditBox, &fAddressEditBox));
if (FAILED_UNEXPECTEDLY(hResult))
{
// instantiate new version
hResult = CreateAddressEditBox(IID_PPV_ARG(IAddressEditBox, &fAddressEditBox));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
}
return hResult;
hResult = fAddressEditBox->QueryInterface(IID_PPV_ARG(IShellService, &shellService));
if (FAILED_UNEXPECTEDLY(hResult))
@ -642,11 +630,6 @@ LRESULT CAddressBand::OnWindowPosChanging(UINT uMsg, WPARAM wParam, LPARAM lPara
return 0;
}
HRESULT CreateAddressBand(REFIID riid, void **ppv)
{
return ShellObjectCreator<CAddressBand>(riid, ppv);
}
void CAddressBand::CreateGoButton()
{
const TBBUTTON buttonInfo [] = { { 0, 1, TBSTATE_ENABLED, 0 } };

View file

@ -330,8 +330,3 @@ HRESULT STDMETHODCALLTYPE CAddressEditBox::GetSizeMax(ULARGE_INTEGER *pcbSize)
{
return E_NOTIMPL;
}
HRESULT CreateAddressEditBox(REFIID riid, void **ppv)
{
return ShellObjectCreator<CAddressEditBox>(riid, ppv);
}

View file

@ -125,8 +125,3 @@ HRESULT STDMETHODCALLTYPE CBandProxy::NavigateToURL(long paramC, long param10)
{
return E_NOTIMPL;
}
HRESULT CreateBandProxy(REFIID riid, void **ppv)
{
return ShellObjectCreator<CBandProxy>(riid, ppv);
}

View file

@ -548,7 +548,7 @@ LRESULT CBaseBar::OnCaptureChanged(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL
return 0;
}
HRESULT CreateBaseBar(REFIID riid, void **ppv, BOOL vertical)
HRESULT CBaseBar_CreateInstance(REFIID riid, void **ppv, BOOL vertical)
{
return ShellObjectCreatorInit<CBaseBar, BOOL>(vertical, riid, ppv);
}

View file

@ -830,7 +830,7 @@ HRESULT CBaseBarSite::ShowBand(DWORD dwBandID)
return S_OK;
}
HRESULT CreateBaseBarSite(REFIID riid, void **ppv, BOOL bVertical)
HRESULT CBaseBarSite_CreateInstance(REFIID riid, void **ppv, BOOL bVertical)
{
return ShellObjectCreatorInit<CBaseBarSite, BOOL>(bVertical, riid, ppv);
}

View file

@ -456,8 +456,3 @@ LRESULT CBrandBand::OnTimer(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHand
Invalidate(FALSE);
return 0;
}
HRESULT CreateBrandBand(REFIID riid, void **ppv)
{
return ShellObjectCreator<CBrandBand>(riid, ppv);
}

View file

@ -0,0 +1,122 @@
#pragma once
#define USE_CUSTOM_MENUBAND 1
#define USE_CUSTOM_MERGEDFOLDER 1
#define USE_CUSTOM_ADDRESSBAND 1
#define USE_CUSTOM_ADDRESSEDITBOX 1
#define USE_CUSTOM_BANDPROXY 1
#define USE_CUSTOM_BRANDBAND 1
#define USE_CUSTOM_EXPLORERBAND 1
#define USE_CUSTOM_INTERNETTOOLBAR 1
/* Constructors for the classes that are not exported */
HRESULT CTravelLog_CreateInstance(REFIID riid, void **ppv);
HRESULT CBaseBar_CreateInstance(REFIID riid, void **ppv, BOOL vertical);
HRESULT CBaseBarSite_CreateInstance(REFIID riid, void **ppv, BOOL bVertical);
HRESULT CToolsBand_CreateInstance(REFIID riid, void **ppv);
static inline
HRESULT CAddressBand_CreateInstance(REFIID riid, void **ppv)
{
#if USE_CUSTOM_ADDRESSBAND
return ShellObjectCreator<CAddressBand>(riid, ppv);
#else
return CoCreateInstance(CLSID_SH_AddressBand, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(IUnknown, toolsBar));
#endif
}
static inline
HRESULT CAddressEditBox_CreateInstance(REFIID riid, void **ppv)
{
#if USE_CUSTOM_ADDRESSEDITBOX
return ShellObjectCreator<CAddressEditBox>(riid, ppv);
#else
return CoCreateInstance(CLSID_AddressEditBox, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(riid, &ppv));
#endif
}
static inline
HRESULT CBandProxy_CreateInstance(REFIID riid, void **ppv)
{
#if USE_CUSTOM_BANDPROXY
return ShellObjectCreator<CBandProxy>(riid, ppv);
#else
return CoCreateInstance(CLSID_BandProxy, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(riid, &ppv));
#endif
}
static inline
HRESULT CBrandBand_CreateInstance(REFIID riid, void **ppv)
{
#if USE_CUSTOM_BRANDBAND
return ShellObjectCreator<CBrandBand>(riid, ppv);
#else
return CoCreateInstance(CLSID_BrandBand, NULL, CLSCTX_INPROC_SERVER, riid, ppv);
#endif
}
static inline
HRESULT WINAPI CExplorerBand_CreateInstance(REFIID riid, LPVOID *ppv)
{
#if USE_CUSTOM_EXPLORERBAND
return ShellObjectCreator<CExplorerBand>(riid, ppv);
#else
return CoCreateInstance(CLSID_ExplorerBand, NULL, CLSCTX_INPROC_SERVER, riid, ppv);
#endif
}
static inline
HRESULT CInternetToolbar_CreateInstance(REFIID riid, void **ppv)
{
#if USE_CUSTOM_INTERNETTOOLBAR
return ShellObjectCreator<CInternetToolbar>(riid, ppv);
#else
return CoCreateInstance(CLSID_InternetToolbar, NULL, CLSCTX_INPROC_SERVER, riid, ppv);
#endif
}
typedef HRESULT(WINAPI * PMENUBAND_CONSTRUCTOR)(REFIID riid, void **ppv);
typedef HRESULT(WINAPI * PMERGEDFOLDER_CONSTRUCTOR)(REFIID riid, void **ppv);
static inline
HRESULT CMergedFolder_CreateInstance(REFIID riid, void **ppv)
{
#if USE_CUSTOM_MERGEDFOLDER
HMODULE hRShell = GetModuleHandle(L"rshell.dll");
if (!hRShell)
hRShell = LoadLibrary(L"rshell.dll");
if (hRShell)
{
PMERGEDFOLDER_CONSTRUCTOR pCMergedFolder_Constructor = (PMERGEDFOLDER_CONSTRUCTOR)
GetProcAddress(hRShell, "CMergedFolder_Constructor");
if (pCMergedFolder_Constructor)
{
return pCMergedFolder_Constructor(riid, ppv);
}
}
#endif
return CoCreateInstance(CLSID_MergedFolder, NULL, CLSCTX_INPROC_SERVER, riid, ppv);
}
static inline
HRESULT CMenuBand_CreateInstance(REFIID iid, LPVOID *ppv)
{
#if USE_CUSTOM_MENUBAND
HMODULE hRShell = GetModuleHandleW(L"rshell.dll");
if (!hRShell)
hRShell = LoadLibraryW(L"rshell.dll");
if (hRShell)
{
PMENUBAND_CONSTRUCTOR func = (PMENUBAND_CONSTRUCTOR) GetProcAddress(hRShell, "CMenuBand_Constructor");
if (func)
{
return func(iid , ppv);
}
}
#endif
return CoCreateInstance(CLSID_MenuBand, NULL, CLSCTX_INPROC_SERVER, iid, ppv);
}

View file

@ -28,12 +28,6 @@
#define UNIMPLEMENTED DbgPrint("%s is UNIMPLEMENTED!\n", __FUNCTION__)
#endif
extern "C"
HRESULT WINAPI CExplorerBand_Constructor(REFIID riid, LPVOID *ppv)
{
return ShellObjectCreator<CExplorerBand>(riid, ppv);
}
CExplorerBand::CExplorerBand() :
pSite(NULL), fVisible(FALSE), bNavigating(FALSE), dwBandID(0)
{

View file

@ -184,6 +184,3 @@ public:
MESSAGE_HANDLER(WM_RBUTTONDOWN, ContextMenuHack)
END_MSG_MAP()
};
extern "C"
HRESULT WINAPI CExplorerBand_Constructor(REFIID riid, LPVOID *ppv);

View file

@ -78,10 +78,6 @@ TODO:
*/
extern HRESULT WINAPI SHBindToFolder(LPCITEMIDLIST path, IShellFolder **newFolder);
extern HRESULT CreateToolsBar(REFIID riid, void **ppv);
extern HRESULT CreateBrandBand(REFIID riid, void **ppv);
extern HRESULT CreateBandProxy(REFIID riid, void **ppv);
extern HRESULT CreateAddressBand(REFIID riid, void **ppv);
HRESULT IUnknown_RelayWinEvent(IUnknown * punk, HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *theResult)
{
@ -442,7 +438,7 @@ static HRESULT GetFavoritesFolder(IShellFolder ** ppsfFavorites, LPITEMIDLIST *
if (FAILED_UNEXPECTEDLY(hr))
return hr;
hr = CreateMergedFolder(IID_PPV_ARG(IAugmentedShellFolder, &pasf));
hr = CMergedFolder_CreateInstance(IID_PPV_ARG(IAugmentedShellFolder, &pasf));
if (FAILED_UNEXPECTEDLY(hr))
{
*ppsfFavorites = psfUserFavorites.Detach();
@ -503,7 +499,7 @@ HRESULT STDMETHODCALLTYPE CMenuCallback::GetObject(LPSMDATA psmd, REFIID riid, v
if (fFavoritesMenu.p == NULL)
{
hResult = CreateMenuBand(IID_PPV_ARG(IShellMenu, &newMenu));
hResult = CMenuBand_CreateInstance(IID_PPV_ARG(IShellMenu, &newMenu));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
hResult = newMenu->Initialize(this, FCIDM_MENU_FAVORITES, -1, SMINIT_VERTICAL | SMINIT_CACHED);
@ -671,7 +667,7 @@ HRESULT CInternetToolbar::CreateMenuBar(IShellMenu **pMenuBar)
*pMenuBar = NULL;
hResult = CreateMenuBand(IID_PPV_ARG(IShellMenu, &menubar));
hResult = CMenuBand_CreateInstance(IID_PPV_ARG(IShellMenu, &menubar));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
@ -719,29 +715,6 @@ HRESULT CInternetToolbar::CreateMenuBar(IShellMenu **pMenuBar)
return S_OK;
}
HRESULT CInternetToolbar::CreateBrandBand(IUnknown **logoBar)
{
#if 1
return ::CreateBrandBand(IID_PPV_ARG(IUnknown, logoBar));
#else
return CoCreateInstance(CLSID_BrandBand, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(IUnknown, logoBar));
#endif
}
HRESULT CInternetToolbar::CreateToolsBar(IUnknown **toolsBar)
{
return ::CreateToolsBar(IID_PPV_ARG(IUnknown, toolsBar));
}
HRESULT CInternetToolbar::CreateAddressBand(IUnknown **toolsBar)
{
#if 1
return ::CreateAddressBand(IID_PPV_ARG(IUnknown, toolsBar));
#else
return CoCreateInstance(CLSID_SH_AddressBand, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(IUnknown, toolsBar));
#endif
}
HRESULT CInternetToolbar::LockUnlockToolbars(bool locked)
{
REBARBANDINFOW rebarBandInfo;
@ -817,7 +790,7 @@ HRESULT CInternetToolbar::CreateAndInitBandProxy()
hResult = serviceProvider->QueryService(SID_IBandProxy, IID_PPV_ARG(IBandProxy, &fBandProxy));
if (FAILED_UNEXPECTEDLY(hResult))
{
hResult = CreateBandProxy(IID_PPV_ARG(IBandProxy, &fBandProxy));
hResult = CBandProxy_CreateInstance(IID_PPV_ARG(IBandProxy, &fBandProxy));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
hResult = fBandProxy->SetSite(fSite);
@ -1048,7 +1021,7 @@ HRESULT STDMETHODCALLTYPE CInternetToolbar::InitNew()
// and it will put them in their own row, sized to take up the whole row.
#if 0
/* Create and attach the brand/logo to the rebar */
hResult = CreateBrandBand(&logoBar);
hResult = CBrandBand_CreateInstance(IID_PPV_ARG(IUnknown, &logoBar));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
AddDockItem(logoBar, ITBBID_BRANDBAND, CDockSite::ITF_NOGRIPPER | CDockSite::ITF_NOTITLE | CDockSite::ITF_FIXEDSIZE);
@ -1056,7 +1029,7 @@ HRESULT STDMETHODCALLTYPE CInternetToolbar::InitNew()
#endif
/* Create and attach the standard toolbar to the rebar */
hResult = CreateToolsBar(&toolsBar);
hResult = CToolsBand_CreateInstance(IID_PPV_ARG(IUnknown, &toolsBar));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
AddDockItem(toolsBar, ITBBID_TOOLSBAND, CDockSite::ITF_NOTITLE | CDockSite::ITF_NEWBANDALWAYS | CDockSite::ITF_GRIPPERALWAYS);
@ -1066,7 +1039,7 @@ HRESULT STDMETHODCALLTYPE CInternetToolbar::InitNew()
return hResult;
/* Create and attach the address/navigation toolbar to the rebar */
hResult = CreateAddressBand(&navigationBar);
hResult = CAddressBand_CreateInstance(IID_PPV_ARG(IUnknown, &navigationBar));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
AddDockItem(navigationBar, ITBBID_ADDRESSBAND, CDockSite::ITF_NEWBANDALWAYS | CDockSite::ITF_GRIPPERALWAYS);
@ -1875,7 +1848,3 @@ LRESULT CInternetToolbar::OnLUp(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &b
return 0;
}
HRESULT CreateInternetToolbar(REFIID riid, void **ppv)
{
return ShellObjectCreator<CInternetToolbar>(riid, ppv);
}

View file

@ -98,9 +98,7 @@ public:
void AddDockItem(IUnknown *newItem, int bandID, int flags);
HRESULT ReserveBorderSpace(LONG maxHeight = -1);
HRESULT CreateMenuBar(IShellMenu **menuBar);
HRESULT CreateBrandBand(IUnknown **logoBar);
HRESULT CreateToolsBar(IUnknown **toolsBar);
HRESULT CreateAddressBand(IUnknown **toolsBar);
HRESULT LockUnlockToolbars(bool locked);
HRESULT CommandStateChanged(bool newValue, int commandID);
HRESULT CreateAndInitBandProxy();

View file

@ -49,57 +49,9 @@
#include "regtreeoptions.h"
#include "explorerband.h"
#include "CProgressDialog.h"
#include "browseui.h"
#include <stdio.h>
WINE_DEFAULT_DEBUG_CHANNEL(browseui);
#define USE_CUSTOM_MENUBAND 1
typedef HRESULT(WINAPI * PMENUBAND_CONSTRUCTOR)(REFIID riid, void **ppv);
typedef HRESULT(WINAPI * PMERGEDFOLDER_CONSTRUCTOR)(REFIID riid, void **ppv);
static inline
HRESULT CreateMergedFolder(REFIID riid, void **ppv)
{
#if 1
HMODULE hRShell = GetModuleHandle(L"rshell.dll");
if (!hRShell)
hRShell = LoadLibrary(L"rshell.dll");
if (hRShell)
{
PMERGEDFOLDER_CONSTRUCTOR pCMergedFolder_Constructor = (PMERGEDFOLDER_CONSTRUCTOR)
GetProcAddress(hRShell, "CMergedFolder_Constructor");
if (pCMergedFolder_Constructor)
{
return pCMergedFolder_Constructor(riid, ppv);
}
}
#endif
return CoCreateInstance(CLSID_MergedFolder, NULL, CLSCTX_INPROC_SERVER, riid, ppv);
}
static inline
HRESULT CreateMenuBand(REFIID iid, LPVOID *ppv)
{
#if USE_CUSTOM_MENUBAND
HMODULE hRShell = GetModuleHandleW(L"rshell.dll");
if (!hRShell)
hRShell = LoadLibraryW(L"rshell.dll");
if (hRShell)
{
PMENUBAND_CONSTRUCTOR func = (PMENUBAND_CONSTRUCTOR) GetProcAddress(hRShell, "CMenuBand_Constructor");
if (func)
{
return func(iid , ppv);
}
}
#endif
return CoCreateInstance(CLSID_MenuBand, NULL, CLSCTX_INPROC_SERVER, iid, ppv);
}
#endif /* _BROWSEUI_PCH_ */

View file

@ -24,8 +24,6 @@
#include <htiframe.h>
#include <strsafe.h>
#define USE_CUSTOM_EXPLORERBAND 1
extern HRESULT IUnknown_ShowDW(IUnknown * punk, BOOL fShow);
#include "newatlinterfaces.h"
@ -129,14 +127,6 @@ BOOL createNewStuff = false;
// this class is private to browseui.dll and is not registered externally?
//DEFINE_GUID(CLSID_ShellFldSetExt, 0x6D5313C0, 0x8C62, 0x11D1, 0xB2, 0xCD, 0x00, 0x60, 0x97, 0xDF, 0x8C, 0x11);
extern HRESULT CreateTravelLog(REFIID riid, void **ppv);
extern HRESULT CreateBaseBar(REFIID riid, void **ppv, BOOL vertical);
extern HRESULT CreateBaseBarSite(REFIID riid, void **ppv, BOOL vertical);
// temporary
extern HRESULT CreateInternetToolbar(REFIID riid, void **ppv);
void DeleteMenuItems(HMENU theMenu, unsigned int firstIDToDelete, unsigned int lastIDToDelete)
{
MENUITEMINFO menuItemInfo;
@ -325,7 +315,7 @@ public:
HRESULT BrowseToPath(IShellFolder *newShellFolder, LPCITEMIDLIST absolutePIDL,
FOLDERSETTINGS *folderSettings, long flags);
HRESULT GetMenuBand(REFIID riid, void **shellMenu);
HRESULT GetBaseBar(bool vertical, IUnknown **theBaseBar);
HRESULT GetBaseBar(bool vertical, REFIID riid, void **theBaseBar);
BOOL IsBandLoaded(const CLSID clsidBand, bool verticali, DWORD *pdwBandID);
HRESULT ShowBand(const CLSID &classID, bool vertical);
HRESULT NavigateToParent();
@ -740,15 +730,9 @@ HRESULT CShellBrowser::Initialize(LPITEMIDLIST pidl, long b, long c, long d)
if (m_hWnd == NULL)
return E_FAIL;
#if 0
hResult = CoCreateInstance(CLSID_InternetToolbar, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(IUnknown, &fClientBars[BIInternetToolbar].clientBar));
hResult = CInternetToolbar_CreateInstance(IID_PPV_ARG(IUnknown, &clientBar));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
#else
hResult = CreateInternetToolbar(IID_PPV_ARG(IUnknown, &clientBar));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
#endif
fClientBars[BIInternetToolbar].clientBar = clientBar;
@ -1105,7 +1089,7 @@ HRESULT CShellBrowser::GetMenuBand(REFIID riid, void **shellMenu)
return deskBand->QueryInterface(riid, shellMenu);
}
HRESULT CShellBrowser::GetBaseBar(bool vertical, IUnknown **theBaseBar)
HRESULT CShellBrowser::GetBaseBar(bool vertical, REFIID riid, void **theBaseBar)
{
CComPtr<IUnknown> newBaseBar;
CComPtr<IDeskBar> deskBar;
@ -1120,10 +1104,10 @@ HRESULT CShellBrowser::GetBaseBar(bool vertical, IUnknown **theBaseBar)
cache = &fClientBars[BIHorizontalBaseBar].clientBar.p;
if (*cache == NULL)
{
hResult = CreateBaseBar(IID_PPV_ARG(IUnknown, &newBaseBar), vertical);
hResult = CBaseBar_CreateInstance(IID_PPV_ARG(IUnknown, &newBaseBar), vertical);
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
hResult = CreateBaseBarSite(IID_PPV_ARG(IUnknown, &newBaseBarSite), vertical);
hResult = CBaseBarSite_CreateInstance(IID_PPV_ARG(IUnknown, &newBaseBarSite), vertical);
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
@ -1152,13 +1136,12 @@ HRESULT CShellBrowser::GetBaseBar(bool vertical, IUnknown **theBaseBar)
return hResult;
}
return (*cache)->QueryInterface(IID_PPV_ARG(IUnknown, theBaseBar));
return (*cache)->QueryInterface(riid, theBaseBar);
}
BOOL CShellBrowser::IsBandLoaded(const CLSID clsidBand, bool vertical, DWORD *pdwBandID)
{
HRESULT hResult;
CComPtr<IUnknown> baseBar;
CComPtr<IDeskBar> deskBar;
CComPtr<IUnknown> baseBarSite;
CComPtr<IBandSite> bandSite;
@ -1168,10 +1151,7 @@ BOOL CShellBrowser::IsBandLoaded(const CLSID clsidBand, bool vertical, DWORD *pd
DWORD i;
/* Get our basebarsite to be able to enumerate bands */
hResult = GetBaseBar(vertical, &baseBar);
if (FAILED_UNEXPECTEDLY(hResult))
return FALSE;
hResult = baseBar->QueryInterface(IID_PPV_ARG(IDeskBar, &deskBar));
hResult = GetBaseBar(vertical, IID_PPV_ARG(IDeskBar, &deskBar));
if (FAILED_UNEXPECTEDLY(hResult))
return FALSE;
hResult = deskBar->GetClient(&baseBarSite);
@ -1213,17 +1193,12 @@ HRESULT CShellBrowser::ShowBand(const CLSID &classID, bool vertical)
CComPtr<IDockingWindow> dockingWindow;
CComPtr<IUnknown> baseBarSite;
CComPtr<IUnknown> newBand;
CComPtr<IUnknown> theBaseBar;
CComPtr<IDeskBar> deskBar;
VARIANT vaIn;
HRESULT hResult;
DWORD dwBandID;
hResult = GetBaseBar(vertical, (IUnknown **)&theBaseBar);
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
hResult = theBaseBar->QueryInterface(IID_PPV_ARG(IDeskBar, &deskBar));
hResult = GetBaseBar(vertical, IID_PPV_ARG(IDeskBar, &deskBar));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
@ -1231,23 +1206,21 @@ HRESULT CShellBrowser::ShowBand(const CLSID &classID, bool vertical)
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
hResult = theBaseBar->QueryInterface(IID_PPV_ARG(IDockingWindow, &dockingWindow));
hResult = deskBar->QueryInterface(IID_PPV_ARG(IDockingWindow, &dockingWindow));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
if (!IsBandLoaded(classID, vertical, &dwBandID))
{
#if USE_CUSTOM_EXPLORERBAND
TRACE("ShowBand called for CLSID %s, vertical=%d...\n", wine_dbgstr_guid(&classID), vertical);
if (IsEqualCLSID(CLSID_ExplorerBand, classID))
{
TRACE("CLSID_ExplorerBand requested, building internal band.\n");
hResult = CExplorerBand_Constructor(IID_PPV_ARG(IUnknown, &newBand));
hResult = CExplorerBand_CreateInstance(IID_PPV_ARG(IUnknown, &newBand));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
}
else
#endif
{
TRACE("A different CLSID requested, using CoCreateInstance.\n");
hResult = CoCreateInstance(classID, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(IUnknown, &newBand));
@ -2388,7 +2361,7 @@ HRESULT STDMETHODCALLTYPE CShellBrowser::GetTravelLog(ITravelLog **pptl)
*pptl = NULL;
if (fTravelLog.p == NULL)
{
hResult = CreateTravelLog(IID_PPV_ARG(ITravelLog, &fTravelLog));
hResult = CTravelLog_CreateInstance(IID_PPV_ARG(ITravelLog, &fTravelLog));
if (FAILED_UNEXPECTEDLY(hResult))
return hResult;
}

View file

@ -433,7 +433,7 @@ LRESULT CToolsBand::OnGetButtonInfo(UINT idControl, NMHDR *pNMHDR, BOOL &bHandle
return 0;
}
HRESULT CreateToolsBar(REFIID riid, void **ppv)
HRESULT CToolsBand_CreateInstance(REFIID riid, void **ppv)
{
return ShellObjectCreator<CToolsBand>(riid, ppv);
}

View file

@ -624,7 +624,7 @@ HRESULT STDMETHODCALLTYPE CTravelLog::Revert()
return E_NOTIMPL;
}
HRESULT CreateTravelLog(REFIID riid, void **ppv)
HRESULT CTravelLog_CreateInstance(REFIID riid, void **ppv)
{
return ShellObjectCreatorInit<CTravelLog>(riid, ppv);
}