Beispiel #1
0
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 );
}
Beispiel #4
0
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;
}
Beispiel #5
0
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;
}