STDMETHODIMP CUpgradrToolbar::SetSite(IUnknown *pUnknownSite) { DT(TRACE_I(FS(_T("Toolbar[%08X]: SetSite(%08X)"), this, pUnknownSite))); try { if (!!pUnknownSite) { // attach the window HWND hMyWindow; CComPtr<IUnknown> site(pUnknownSite); CComQIPtr<IOleWindow> window(site); window->GetWindow(&hMyWindow); if (!hMyWindow) { TRACE_E(FS(_T("Toolbar[%08X]: Cannot retrieve toolbar base window"), this)); return E_FAIL; } SubclassWindow(hMyWindow); // get a WebBrowser reference CComQIPtr<IServiceProvider> serviceProvider(site); serviceProvider->QueryService(IID_IWebBrowserApp, IID_IWebBrowser2, (void**)&m_spWebBrowser); site->QueryInterface(IID_IInputObjectSite, (void**)&m_spSite); // create main window CreateMainWindow(); } } catch (CUpgradrRuntimeError &ex) { HandleError(ex.ErrorMessage()); return E_FAIL; } return S_OK; }
//---------------------------------------------------------------------------------------- // CanMonitor //---------------------------------------------------------------------------------------- bool16 AZPAMAssetMonitor::CanMonitor( const IDFile & file) { LogFunctionEnterExit; InterfacePtr<IAMServiceProvider> serviceProvider( this, UseDefaultIID() ); ASSERT( serviceProvider ); return serviceProvider->CanService( file, nil ); }
//---------------------------------------------------------------------------------------- // CanMonitor //---------------------------------------------------------------------------------------- bool16 AZPAMAssetMonitor::CanMonitor( IManageableAsset * asset) { LogFunctionEnterExit; InterfacePtr<IAMServiceProvider> serviceProvider( this, UseDefaultIID() ); ASSERT( serviceProvider ); return serviceProvider->CanService( asset ); }
STDMETHODIMP CXRefreshToolbar::SetSite(IUnknown *pUnknownSite) { DT(TRACE_I(FS(_T("Toolbar[%08X]: SetSite(%08X)"), this, pUnknownSite))); try { if (!!pUnknownSite) { // attach the window HWND hWnd; CComPtr<IUnknown> site(pUnknownSite); CComQIPtr<IOleWindow> window(site); window->GetWindow(&hWnd); if (!hWnd) { TRACE_E(FS(_T("Toolbar[%08X]: Cannot retrieve toolbar base window"), this)); return E_FAIL; } SubclassWindow(hWnd); // get a WebBrowser reference CComQIPtr<IServiceProvider> serviceProvider(site); serviceProvider->QueryService(IID_IWebBrowserApp, IID_IWebBrowser2, (void**)&m_Browser); site->QueryInterface(IID_IInputObjectSite, (void**)&m_Site); // retrive browser id { BrowserManagerLock browserManager; m_BrowserId = browserManager->AllocBrowserId(m_Browser, this); ATLASSERT(m_BrowserId!=NULL_BROWSER); } // create main window CreateMainWindow(); } else { BrowserManagerLock browserManager; CBrowserMessageWindow* bw = browserManager->FindBrowserMessageWindow(m_BrowserId); ATLASSERT(bw); bw->SetToolbar(NULL); browserManager->ReleaseBrowserId(m_BrowserId); m_BrowserId = NULL_BROWSER; } } catch (CXRefreshRuntimeError &ex) { HandleError(ex.ErrorMessage()); return E_FAIL; } return S_OK; }
STDMETHODIMP CUpgradrHelperbar::SetSite(IUnknown *pUnknownSite) { DT(TRACE_I(FS(_T("Helperbar[%08X]: SetSite(%08X)"), this, pUnknownSite))); if (!!pUnknownSite) { // get a WebBrowser reference CComPtr<IUnknown> site(pUnknownSite); CComQIPtr<IServiceProvider> serviceProvider(site); serviceProvider->QueryService(IID_IWebBrowserApp, IID_IWebBrowser2, (void**)&m_Browser); site->QueryInterface(IID_IInputObjectSite, (void**)&m_Site); // retrive browser id { BrowserManagerLock browserManager; m_BrowserId = browserManager->AllocBrowserId(m_Browser, this); ATLASSERT(m_BrowserId!=NULL_BROWSER); } // attach the window HWND hHelperbarWindow; CComQIPtr<IOleWindow> window(site); window->GetWindow(&hHelperbarWindow); if (!hHelperbarWindow) { TRACE_E(FS(_T("Helperbar[%08X]: Cannot retrieve helpbar base window"), this)); return E_FAIL; } SubclassWindow(hHelperbarWindow); // create main window CreateMainWindow(); } else { BrowserManagerLock browserManager; browserManager->ReleaseBrowserId(m_BrowserId); m_BrowserId = NULL_BROWSER; } return S_OK; }