You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
87 lines
3.4 KiB
87 lines
3.4 KiB
#pragma once
|
|
/*
|
|
* h o t w i z u i . h
|
|
*
|
|
* Purpose:
|
|
*
|
|
* History
|
|
*
|
|
* Copyright (C) Microsoft Corp. 1995, 1996.
|
|
*/
|
|
|
|
interface IHotWizard;
|
|
interface IHotWizardHost;
|
|
interface IElementBehaviorFactory;
|
|
interface IDocHostUIHandler;
|
|
|
|
#define HWM_SETDIRTY (WM_USER + 1)
|
|
|
|
class CHotMailWizard :
|
|
public IServiceProvider,
|
|
public IElementBehaviorFactory,
|
|
public IDocHostUIHandler,
|
|
public IHotWizard
|
|
{
|
|
public:
|
|
|
|
CHotMailWizard();
|
|
virtual ~CHotMailWizard();
|
|
|
|
// IUnknown methods
|
|
virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID, LPVOID FAR *);
|
|
virtual ULONG STDMETHODCALLTYPE AddRef();
|
|
virtual ULONG STDMETHODCALLTYPE Release();
|
|
|
|
// IServiceProvider
|
|
virtual HRESULT STDMETHODCALLTYPE QueryService(REFGUID guidService, REFIID riid, LPVOID *ppvObject);
|
|
|
|
// IElementBehaviorFactory
|
|
virtual HRESULT STDMETHODCALLTYPE FindBehavior(LPOLESTR pchBehavior, LPOLESTR pchBehaviorUrl, IElementBehaviorSite* pSite, IElementBehavior** ppBehavior);
|
|
|
|
// IDocHostUIHandler methods
|
|
virtual HRESULT STDMETHODCALLTYPE ShowContextMenu(DWORD dwID, POINT *ppt, IUnknown *pcmdtReserved, IDispatch *pdispReserved);
|
|
virtual HRESULT STDMETHODCALLTYPE GetHostInfo(DOCHOSTUIINFO *pInfo);
|
|
virtual HRESULT STDMETHODCALLTYPE ShowUI(DWORD dwID, IOleInPlaceActiveObject *pActiveObject, IOleCommandTarget *pCommandTarget, IOleInPlaceFrame *pFrame, IOleInPlaceUIWindow *pDoc);
|
|
virtual HRESULT STDMETHODCALLTYPE HideUI();
|
|
virtual HRESULT STDMETHODCALLTYPE UpdateUI();
|
|
virtual HRESULT STDMETHODCALLTYPE EnableModeless(BOOL fActivate);
|
|
virtual HRESULT STDMETHODCALLTYPE OnDocWindowActivate(BOOL fActivate);
|
|
virtual HRESULT STDMETHODCALLTYPE OnFrameWindowActivate(BOOL fActivate);
|
|
virtual HRESULT STDMETHODCALLTYPE ResizeBorder(LPCRECT prcBorder, IOleInPlaceUIWindow *pUIWindow, BOOL fRameWindow);
|
|
virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator(LPMSG lpMsg, const GUID *pguidCmdGroup, DWORD nCmdID);
|
|
virtual HRESULT STDMETHODCALLTYPE GetOptionKeyPath(LPOLESTR *pchKey, DWORD dw);
|
|
virtual HRESULT STDMETHODCALLTYPE GetDropTarget(IDropTarget *pDropTarget, IDropTarget **ppDropTarget);
|
|
virtual HRESULT STDMETHODCALLTYPE GetExternal(IDispatch **ppDispatch);
|
|
virtual HRESULT STDMETHODCALLTYPE TranslateUrl(DWORD dwTranslate, OLECHAR *pchURLIn, OLECHAR **ppchURLOut);
|
|
virtual HRESULT STDMETHODCALLTYPE FilterDataObject( IDataObject *pDO, IDataObject **ppDORet);
|
|
|
|
// IHotWizard
|
|
virtual HRESULT STDMETHODCALLTYPE Show(HWND hwndOwner, LPWSTR pszUrl, LPWSTR pszCaption, IHotWizardHost *pHost, RECT *prc);
|
|
|
|
static INT_PTR CALLBACK ExtDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
|
|
|
HRESULT Init();
|
|
HRESULT Show();
|
|
|
|
HRESULT TranslateAccelerator(MSG *lpmsg);
|
|
|
|
private:
|
|
ULONG m_cRef;
|
|
HWND m_hwnd,
|
|
m_hwndOC,
|
|
m_hwndOwner;
|
|
BOOL m_fPrompt;
|
|
RECT *m_prc;
|
|
IElementBehavior *m_pXTag;
|
|
IHotWizardHost *m_pWizHost;
|
|
LPWSTR m_pszUrlW,
|
|
m_pszFriendlyW;
|
|
|
|
HRESULT _CreateOCHost();
|
|
HRESULT _OnInitDialog(HWND hwnd);
|
|
HRESULT _OnNCDestroy();
|
|
HRESULT _LoadPage(LPWSTR pszUrlW);
|
|
|
|
BOOL _DlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
|
|
|
};
|