ReactOS 0.4.15-dev-7842-g558ab78
webbrowser.c File Reference
#include "hhctrl.h"
#include "resource.h"
#include "wine/debug.h"
Include dependency graph for webbrowser.c:

Go to the source code of this file.

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (htmlhelp)
 
static WebBrowserContainerimpl_from_IOleClientSite (IOleClientSite *iface)
 
static HRESULT STDMETHODCALLTYPE Site_QueryInterface (IOleClientSite *iface, REFIID riid, void **ppvObj)
 
static ULONG STDMETHODCALLTYPE Site_AddRef (IOleClientSite *iface)
 
static ULONG STDMETHODCALLTYPE Site_Release (IOleClientSite *iface)
 
static HRESULT STDMETHODCALLTYPE Site_SaveObject (IOleClientSite *iface)
 
static HRESULT STDMETHODCALLTYPE Site_GetMoniker (IOleClientSite *iface, DWORD dwAssign, DWORD dwWhichMoniker, IMoniker **ppmk)
 
static HRESULT STDMETHODCALLTYPE Site_GetContainer (IOleClientSite *iface, LPOLECONTAINER *ppContainer)
 
static HRESULT STDMETHODCALLTYPE Site_ShowObject (IOleClientSite *iface)
 
static HRESULT STDMETHODCALLTYPE Site_OnShowWindow (IOleClientSite *iface, BOOL fShow)
 
static HRESULT STDMETHODCALLTYPE Site_RequestNewObjectLayout (IOleClientSite *iface)
 
static WebBrowserContainerimpl_from_IDocHostUIHandler (IDocHostUIHandler *iface)
 
static HRESULT STDMETHODCALLTYPE UI_QueryInterface (IDocHostUIHandler *iface, REFIID riid, LPVOID *ppvObj)
 
static ULONG STDMETHODCALLTYPE UI_AddRef (IDocHostUIHandler *iface)
 
static ULONG STDMETHODCALLTYPE UI_Release (IDocHostUIHandler *iface)
 
static HRESULT STDMETHODCALLTYPE UI_ShowContextMenu (IDocHostUIHandler *iface, DWORD dwID, POINT *ppt, IUnknown *pcmdtReserved, IDispatch *pdispReserved)
 
static HRESULT STDMETHODCALLTYPE UI_GetHostInfo (IDocHostUIHandler *iface, DOCHOSTUIINFO *pInfo)
 
static HRESULT STDMETHODCALLTYPE UI_ShowUI (IDocHostUIHandler *iface, DWORD dwID, IOleInPlaceActiveObject *pActiveObject, IOleCommandTarget *pCommandTarget, IOleInPlaceFrame *pFrame, IOleInPlaceUIWindow *pDoc)
 
static HRESULT STDMETHODCALLTYPE UI_HideUI (IDocHostUIHandler *iface)
 
static HRESULT STDMETHODCALLTYPE UI_UpdateUI (IDocHostUIHandler *iface)
 
static HRESULT STDMETHODCALLTYPE UI_EnableModeless (IDocHostUIHandler *iface, BOOL fEnable)
 
static HRESULT STDMETHODCALLTYPE UI_OnDocWindowActivate (IDocHostUIHandler *iface, BOOL fActivate)
 
static HRESULT STDMETHODCALLTYPE UI_OnFrameWindowActivate (IDocHostUIHandler *iface, BOOL fActivate)
 
static HRESULT STDMETHODCALLTYPE UI_ResizeBorder (IDocHostUIHandler *iface, LPCRECT prcBorder, IOleInPlaceUIWindow *pUIWindow, BOOL fRameWindow)
 
static HRESULT STDMETHODCALLTYPE UI_TranslateAccelerator (IDocHostUIHandler *iface, LPMSG lpMsg, const GUID *pguidCmdGroup, DWORD nCmdID)
 
static HRESULT STDMETHODCALLTYPE UI_GetOptionKeyPath (IDocHostUIHandler *iface, LPOLESTR *pchKey, DWORD dw)
 
static HRESULT STDMETHODCALLTYPE UI_GetDropTarget (IDocHostUIHandler *iface, IDropTarget *pDropTarget, IDropTarget **ppDropTarget)
 
static HRESULT STDMETHODCALLTYPE UI_GetExternal (IDocHostUIHandler *iface, IDispatch **ppDispatch)
 
static HRESULT STDMETHODCALLTYPE UI_TranslateUrl (IDocHostUIHandler *iface, DWORD dwTranslate, OLECHAR *pchURLIn, OLECHAR **ppchURLOut)
 
static HRESULT STDMETHODCALLTYPE UI_FilterDataObject (IDocHostUIHandler *iface, IDataObject *pDO, IDataObject **ppDORet)
 
static WebBrowserContainerimpl_from_IOleInPlaceSite (IOleInPlaceSite *iface)
 
static HRESULT STDMETHODCALLTYPE InPlace_QueryInterface (IOleInPlaceSite *iface, REFIID riid, LPVOID *ppvObj)
 
static ULONG STDMETHODCALLTYPE InPlace_AddRef (IOleInPlaceSite *iface)
 
static ULONG STDMETHODCALLTYPE InPlace_Release (IOleInPlaceSite *iface)
 
static HRESULT STDMETHODCALLTYPE InPlace_GetWindow (IOleInPlaceSite *iface, HWND *lphwnd)
 
static HRESULT STDMETHODCALLTYPE InPlace_ContextSensitiveHelp (IOleInPlaceSite *iface, BOOL fEnterMode)
 
static HRESULT STDMETHODCALLTYPE InPlace_CanInPlaceActivate (IOleInPlaceSite *iface)
 
static HRESULT STDMETHODCALLTYPE InPlace_OnInPlaceActivate (IOleInPlaceSite *iface)
 
static HRESULT STDMETHODCALLTYPE InPlace_OnUIActivate (IOleInPlaceSite *iface)
 
static HRESULT STDMETHODCALLTYPE InPlace_GetWindowContext (IOleInPlaceSite *iface, LPOLEINPLACEFRAME *lplpFrame, LPOLEINPLACEUIWINDOW *lplpDoc, LPRECT lprcPosRect, LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo)
 
static HRESULT STDMETHODCALLTYPE InPlace_Scroll (IOleInPlaceSite *iface, SIZE scrollExtent)
 
static HRESULT STDMETHODCALLTYPE InPlace_OnUIDeactivate (IOleInPlaceSite *iface, BOOL fUndoable)
 
static HRESULT STDMETHODCALLTYPE InPlace_OnInPlaceDeactivate (IOleInPlaceSite *iface)
 
static HRESULT STDMETHODCALLTYPE InPlace_DiscardUndoState (IOleInPlaceSite *iface)
 
static HRESULT STDMETHODCALLTYPE InPlace_DeactivateAndUndo (IOleInPlaceSite *iface)
 
static HRESULT STDMETHODCALLTYPE InPlace_OnPosRectChange (IOleInPlaceSite *iface, LPCRECT lprcPosRect)
 
static WebBrowserContainerimpl_from_IOleInPlaceFrame (IOleInPlaceFrame *iface)
 
static HRESULT STDMETHODCALLTYPE Frame_QueryInterface (IOleInPlaceFrame *iface, REFIID riid, LPVOID *ppvObj)
 
static ULONG STDMETHODCALLTYPE Frame_AddRef (IOleInPlaceFrame *iface)
 
static ULONG STDMETHODCALLTYPE Frame_Release (IOleInPlaceFrame *iface)
 
static HRESULT STDMETHODCALLTYPE Frame_GetWindow (IOleInPlaceFrame *iface, HWND *lphwnd)
 
static HRESULT STDMETHODCALLTYPE Frame_ContextSensitiveHelp (IOleInPlaceFrame *iface, BOOL fEnterMode)
 
static HRESULT STDMETHODCALLTYPE Frame_GetBorder (IOleInPlaceFrame *iface, LPRECT lprectBorder)
 
static HRESULT STDMETHODCALLTYPE Frame_RequestBorderSpace (IOleInPlaceFrame *iface, LPCBORDERWIDTHS pborderwidths)
 
static HRESULT STDMETHODCALLTYPE Frame_SetBorderSpace (IOleInPlaceFrame *iface, LPCBORDERWIDTHS pborderwidths)
 
static HRESULT STDMETHODCALLTYPE Frame_SetActiveObject (IOleInPlaceFrame *iface, IOleInPlaceActiveObject *pActiveObject, LPCOLESTR pszObjName)
 
static HRESULT STDMETHODCALLTYPE Frame_InsertMenus (IOleInPlaceFrame *iface, HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths)
 
static HRESULT STDMETHODCALLTYPE Frame_SetMenu (IOleInPlaceFrame *iface, HMENU hmenuShared, HOLEMENU holemenu, HWND hwndActiveObject)
 
static HRESULT STDMETHODCALLTYPE Frame_RemoveMenus (IOleInPlaceFrame *iface, HMENU hmenuShared)
 
static HRESULT STDMETHODCALLTYPE Frame_SetStatusText (IOleInPlaceFrame *iface, LPCOLESTR pszStatusText)
 
static HRESULT STDMETHODCALLTYPE Frame_EnableModeless (IOleInPlaceFrame *iface, BOOL fEnable)
 
static HRESULT STDMETHODCALLTYPE Frame_TranslateAccelerator (IOleInPlaceFrame *iface, LPMSG lpmsg, WORD wID)
 
static HRESULT STDMETHODCALLTYPE Storage_QueryInterface (IStorage *This, REFIID riid, LPVOID *ppvObj)
 
static ULONG STDMETHODCALLTYPE Storage_AddRef (IStorage *This)
 
static ULONG STDMETHODCALLTYPE Storage_Release (IStorage *This)
 
static HRESULT STDMETHODCALLTYPE Storage_CreateStream (IStorage *This, const WCHAR *pwcsName, DWORD grfMode, DWORD reserved1, DWORD reserved2, IStream **ppstm)
 
static HRESULT STDMETHODCALLTYPE Storage_OpenStream (IStorage *This, const WCHAR *pwcsName, void *reserved1, DWORD grfMode, DWORD reserved2, IStream **ppstm)
 
static HRESULT STDMETHODCALLTYPE Storage_CreateStorage (IStorage *This, const WCHAR *pwcsName, DWORD grfMode, DWORD reserved1, DWORD reserved2, IStorage **ppstg)
 
static HRESULT STDMETHODCALLTYPE Storage_OpenStorage (IStorage *This, const WCHAR *pwcsName, IStorage *pstgPriority, DWORD grfMode, SNB snbExclude, DWORD reserved, IStorage **ppstg)
 
static HRESULT STDMETHODCALLTYPE Storage_CopyTo (IStorage *This, DWORD ciidExclude, IID const *rgiidExclude, SNB snbExclude, IStorage *pstgDest)
 
static HRESULT STDMETHODCALLTYPE Storage_MoveElementTo (IStorage *This, const OLECHAR *pwcsName, IStorage *pstgDest, const OLECHAR *pwcsNewName, DWORD grfFlags)
 
static HRESULT STDMETHODCALLTYPE Storage_Commit (IStorage *This, DWORD grfCommitFlags)
 
static HRESULT STDMETHODCALLTYPE Storage_Revert (IStorage *This)
 
static HRESULT STDMETHODCALLTYPE Storage_EnumElements (IStorage *This, DWORD reserved1, void *reserved2, DWORD reserved3, IEnumSTATSTG **ppenum)
 
static HRESULT STDMETHODCALLTYPE Storage_DestroyElement (IStorage *This, const OLECHAR *pwcsName)
 
static HRESULT STDMETHODCALLTYPE Storage_RenameElement (IStorage *This, const WCHAR *pwcsOldName, const WCHAR *pwcsNewName)
 
static HRESULT STDMETHODCALLTYPE Storage_SetElementTimes (IStorage *This, const WCHAR *pwcsName, FILETIME const *pctime, FILETIME const *patime, FILETIME const *pmtime)
 
static HRESULT STDMETHODCALLTYPE Storage_SetClass (IStorage *This, REFCLSID clsid)
 
static HRESULT STDMETHODCALLTYPE Storage_SetStateBits (IStorage *This, DWORD grfStateBits, DWORD grfMask)
 
static HRESULT STDMETHODCALLTYPE Storage_Stat (IStorage *This, STATSTG *pstatstg, DWORD grfStatFlag)
 
BOOL InitWebBrowser (HHInfo *info, HWND hwndParent)
 
void ReleaseWebBrowser (HHInfo *info)
 
void ResizeWebBrowser (HHInfo *info, DWORD dwWidth, DWORD dwHeight)
 
void DoPageAction (WebBrowserContainer *container, DWORD dwAction)
 

Variables

static const IOleClientSiteVtbl OleClientSiteVtbl
 
static const IDocHostUIHandlerVtbl DocHostUIHandlerVtbl
 
static const IOleInPlaceSiteVtbl OleInPlaceSiteVtbl
 
static const IOleInPlaceFrameVtbl OleInPlaceFrameVtbl
 
static const IStorageVtbl MyIStorageTable
 
static IStorage MyIStorage = { &MyIStorageTable }
 

Function Documentation

◆ DoPageAction()

void DoPageAction ( WebBrowserContainer container,
DWORD  dwAction 
)

Definition at line 753 of file webbrowser.c.

754{
755 if (!container || !container->web_browser)
756 return;
757
758 switch (dwAction)
759 {
760 case WB_GOBACK:
761 IWebBrowser2_GoBack(container->web_browser);
762 break;
763 case WB_GOFORWARD:
764 IWebBrowser2_GoForward(container->web_browser);
765 break;
766 case WB_GOHOME:
767 IWebBrowser2_GoHome(container->web_browser);
768 break;
769 case WB_SEARCH:
770 IWebBrowser2_GoSearch(container->web_browser);
771 break;
772 case WB_REFRESH:
773 IWebBrowser2_Refresh(container->web_browser);
774 break;
775 case WB_STOP:
776 IWebBrowser2_Stop(container->web_browser);
777 break;
778 case WB_PRINT:
779 IWebBrowser2_ExecWB(container->web_browser, OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER, 0, 0);
780 break;
781 }
782}
#define WB_STOP
Definition: hhctrl.h:51
#define WB_GOFORWARD
Definition: hhctrl.h:47
#define WB_GOHOME
Definition: hhctrl.h:48
#define WB_SEARCH
Definition: hhctrl.h:49
#define WB_GOBACK
Definition: hhctrl.h:46
#define WB_PRINT
Definition: hhctrl.h:52
#define WB_REFRESH
Definition: hhctrl.h:50

Referenced by TB_OnClick(), and UI_ShowContextMenu().

◆ Frame_AddRef()

static ULONG STDMETHODCALLTYPE Frame_AddRef ( IOleInPlaceFrame iface)
static

Definition at line 460 of file webbrowser.c.

461{
463
464 return IOleClientSite_AddRef(&This->IOleClientSite_iface);
465}
static WebBrowserContainer * impl_from_IOleInPlaceFrame(IOleInPlaceFrame *iface)
Definition: webbrowser.c:448

◆ Frame_ContextSensitiveHelp()

static HRESULT STDMETHODCALLTYPE Frame_ContextSensitiveHelp ( IOleInPlaceFrame iface,
BOOL  fEnterMode 
)
static

Definition at line 482 of file webbrowser.c.

483{
484 return E_NOTIMPL;
485}
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ Frame_EnableModeless()

static HRESULT STDMETHODCALLTYPE Frame_EnableModeless ( IOleInPlaceFrame iface,
BOOL  fEnable 
)
static

Definition at line 527 of file webbrowser.c.

528{
529 return S_OK;
530}
#define S_OK
Definition: intsafe.h:52

◆ Frame_GetBorder()

static HRESULT STDMETHODCALLTYPE Frame_GetBorder ( IOleInPlaceFrame iface,
LPRECT  lprectBorder 
)
static

Definition at line 487 of file webbrowser.c.

488{
489 return E_NOTIMPL;
490}

◆ Frame_GetWindow()

static HRESULT STDMETHODCALLTYPE Frame_GetWindow ( IOleInPlaceFrame iface,
HWND lphwnd 
)
static

Definition at line 474 of file webbrowser.c.

475{
477
478 *lphwnd = This->hwndWindow;
479 return S_OK;
480}

Referenced by InPlaceFrame_GetWindow().

◆ Frame_InsertMenus()

static HRESULT STDMETHODCALLTYPE Frame_InsertMenus ( IOleInPlaceFrame iface,
HMENU  hmenuShared,
LPOLEMENUGROUPWIDTHS  lpMenuWidths 
)
static

Definition at line 507 of file webbrowser.c.

508{
509 return E_NOTIMPL;
510}

◆ Frame_QueryInterface()

static HRESULT STDMETHODCALLTYPE Frame_QueryInterface ( IOleInPlaceFrame iface,
REFIID  riid,
LPVOID ppvObj 
)
static

Definition at line 453 of file webbrowser.c.

454{
456
457 return IOleClientSite_QueryInterface(&This->IOleClientSite_iface, riid, ppvObj);
458}
REFIID riid
Definition: atlbase.h:39

◆ Frame_Release()

static ULONG STDMETHODCALLTYPE Frame_Release ( IOleInPlaceFrame iface)
static

Definition at line 467 of file webbrowser.c.

468{
470
471 return IOleClientSite_Release(&This->IOleClientSite_iface);
472}

◆ Frame_RemoveMenus()

static HRESULT STDMETHODCALLTYPE Frame_RemoveMenus ( IOleInPlaceFrame iface,
HMENU  hmenuShared 
)
static

Definition at line 517 of file webbrowser.c.

518{
519 return E_NOTIMPL;
520}

◆ Frame_RequestBorderSpace()

static HRESULT STDMETHODCALLTYPE Frame_RequestBorderSpace ( IOleInPlaceFrame iface,
LPCBORDERWIDTHS  pborderwidths 
)
static

Definition at line 492 of file webbrowser.c.

493{
494 return E_NOTIMPL;
495}

◆ Frame_SetActiveObject()

static HRESULT STDMETHODCALLTYPE Frame_SetActiveObject ( IOleInPlaceFrame iface,
IOleInPlaceActiveObject pActiveObject,
LPCOLESTR  pszObjName 
)
static

Definition at line 502 of file webbrowser.c.

503{
504 return S_OK;
505}

◆ Frame_SetBorderSpace()

static HRESULT STDMETHODCALLTYPE Frame_SetBorderSpace ( IOleInPlaceFrame iface,
LPCBORDERWIDTHS  pborderwidths 
)
static

Definition at line 497 of file webbrowser.c.

498{
499 return E_NOTIMPL;
500}

◆ Frame_SetMenu()

static HRESULT STDMETHODCALLTYPE Frame_SetMenu ( IOleInPlaceFrame iface,
HMENU  hmenuShared,
HOLEMENU  holemenu,
HWND  hwndActiveObject 
)
static

Definition at line 512 of file webbrowser.c.

513{
514 return S_OK;
515}

◆ Frame_SetStatusText()

static HRESULT STDMETHODCALLTYPE Frame_SetStatusText ( IOleInPlaceFrame iface,
LPCOLESTR  pszStatusText 
)
static

Definition at line 522 of file webbrowser.c.

523{
524 return S_OK;
525}

◆ Frame_TranslateAccelerator()

static HRESULT STDMETHODCALLTYPE Frame_TranslateAccelerator ( IOleInPlaceFrame iface,
LPMSG  lpmsg,
WORD  wID 
)
static

Definition at line 532 of file webbrowser.c.

533{
534 return E_NOTIMPL;
535}

◆ impl_from_IDocHostUIHandler()

static WebBrowserContainer * impl_from_IDocHostUIHandler ( IDocHostUIHandler iface)
inlinestatic

Definition at line 135 of file webbrowser.c.

136{
137 return CONTAINING_RECORD(iface, WebBrowserContainer, IDocHostUIHandler_iface);
138}
#define CONTAINING_RECORD(address, type, field)
Definition: typedefs.h:260

Referenced by UI_AddRef(), UI_QueryInterface(), UI_Release(), and UI_ShowContextMenu().

◆ impl_from_IOleClientSite()

static WebBrowserContainer * impl_from_IOleClientSite ( IOleClientSite iface)
inlinestatic

Definition at line 28 of file webbrowser.c.

29{
30 return CONTAINING_RECORD(iface, WebBrowserContainer, IOleClientSite_iface);
31}

Referenced by Site_AddRef(), Site_QueryInterface(), and Site_Release().

◆ impl_from_IOleInPlaceFrame()

static WebBrowserContainer * impl_from_IOleInPlaceFrame ( IOleInPlaceFrame iface)
inlinestatic

Definition at line 448 of file webbrowser.c.

449{
450 return CONTAINING_RECORD(iface, WebBrowserContainer, IOleInPlaceFrame_iface);
451}

Referenced by Frame_AddRef(), Frame_GetWindow(), Frame_QueryInterface(), and Frame_Release().

◆ impl_from_IOleInPlaceSite()

static WebBrowserContainer * impl_from_IOleInPlaceSite ( IOleInPlaceSite iface)
inlinestatic

◆ InitWebBrowser()

BOOL InitWebBrowser ( HHInfo info,
HWND  hwndParent 
)

Definition at line 670 of file webbrowser.c.

671{
673 IOleInPlaceObject *inplace;
674 HRESULT hr;
675 RECT rc;
676
677 container = heap_alloc_zero(sizeof(*container));
678 if (!container)
679 return FALSE;
680
681 container->IOleClientSite_iface.lpVtbl = &OleClientSiteVtbl;
682 container->IOleInPlaceSite_iface.lpVtbl = &OleInPlaceSiteVtbl;
683 container->IOleInPlaceFrame_iface.lpVtbl = &OleInPlaceFrameVtbl;
684 container->IDocHostUIHandler_iface.lpVtbl = &DocHostUIHandlerVtbl;
685 container->ref = 1;
686 container->hwndWindow = hwndParent;
687
688 info->web_browser = container;
689
690 hr = OleCreate(&CLSID_WebBrowser, &IID_IOleObject, OLERENDER_DRAW, 0,
691 &container->IOleClientSite_iface, &MyIStorage,
692 (void **)&container->ole_obj);
693
694 if (FAILED(hr)) goto error;
695
697
698 hr = OleSetContainedObject((struct IUnknown *)container->ole_obj, TRUE);
699 if (FAILED(hr)) goto error;
700
701 hr = IOleObject_DoVerb(container->ole_obj, OLEIVERB_SHOW, NULL,
702 &container->IOleClientSite_iface, -1, hwndParent, &rc);
703 if (FAILED(hr)) goto error;
704
705 hr = IOleObject_QueryInterface(container->ole_obj, &IID_IOleInPlaceObject, (void**)&inplace);
706 if (FAILED(hr)) goto error;
707
708 IOleInPlaceObject_SetObjectRects(inplace, &rc, &rc);
709 IOleInPlaceObject_Release(inplace);
710
711 hr = IOleObject_QueryInterface(container->ole_obj, &IID_IWebBrowser2, (void **)&container->web_browser);
712 if (SUCCEEDED(hr))
713 return TRUE;
714
715error:
717 return FALSE;
718}
static HWND hwndParent
Definition: cryptui.c:300
#define NULL
Definition: types.h:112
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
HRESULT WINAPI OleSetContainedObject(LPUNKNOWN pUnknown, BOOL fContained)
Definition: ole2.c:1168
HRESULT WINAPI OleCreate(REFCLSID rclsid, REFIID riid, DWORD renderopt, LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj)
Definition: ole2.c:2609
static const IOleClientSiteVtbl OleClientSiteVtbl
Definition: webbrowser.c:122
void ReleaseWebBrowser(HHInfo *info)
Definition: webbrowser.c:720
static const IOleInPlaceFrameVtbl OleInPlaceFrameVtbl
Definition: webbrowser.c:537
static const IOleInPlaceSiteVtbl OleInPlaceSiteVtbl
Definition: webbrowser.c:429
static IStorage MyIStorage
Definition: webbrowser.c:668
static const IDocHostUIHandlerVtbl DocHostUIHandlerVtbl
Definition: webbrowser.c:296
#define SUCCEEDED(hr)
Definition: intsafe.h:50
#define FAILED(hr)
Definition: intsafe.h:51
#define error(str)
Definition: mkdosfs.c:1605
#define OLEIVERB_SHOW
Definition: ole2.h:39
const GUID IID_IOleInPlaceObject
const GUID IID_IOleObject
HRESULT hr
Definition: shlfolder.c:183
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)

Referenced by HH_AddHTMLPane().

◆ InPlace_AddRef()

static ULONG STDMETHODCALLTYPE InPlace_AddRef ( IOleInPlaceSite iface)
static

Definition at line 330 of file webbrowser.c.

331{
333
334 return IOleClientSite_AddRef(&This->IOleClientSite_iface);
335}
static WebBrowserContainer * impl_from_IOleInPlaceSite(IOleInPlaceSite *iface)
Definition: webbrowser.c:318

◆ InPlace_CanInPlaceActivate()

static HRESULT STDMETHODCALLTYPE InPlace_CanInPlaceActivate ( IOleInPlaceSite iface)
static

Definition at line 357 of file webbrowser.c.

358{
359 return S_OK;
360}

◆ InPlace_ContextSensitiveHelp()

static HRESULT STDMETHODCALLTYPE InPlace_ContextSensitiveHelp ( IOleInPlaceSite iface,
BOOL  fEnterMode 
)
static

Definition at line 352 of file webbrowser.c.

353{
354 return E_NOTIMPL;
355}

◆ InPlace_DeactivateAndUndo()

static HRESULT STDMETHODCALLTYPE InPlace_DeactivateAndUndo ( IOleInPlaceSite iface)
static

Definition at line 409 of file webbrowser.c.

410{
411 return E_NOTIMPL;
412}

◆ InPlace_DiscardUndoState()

static HRESULT STDMETHODCALLTYPE InPlace_DiscardUndoState ( IOleInPlaceSite iface)
static

Definition at line 404 of file webbrowser.c.

405{
406 return E_NOTIMPL;
407}

◆ InPlace_GetWindow()

static HRESULT STDMETHODCALLTYPE InPlace_GetWindow ( IOleInPlaceSite iface,
HWND lphwnd 
)
static

Definition at line 344 of file webbrowser.c.

345{
347
348 *lphwnd = This->hwndWindow;
349 return S_OK;
350}

◆ InPlace_GetWindowContext()

static HRESULT STDMETHODCALLTYPE InPlace_GetWindowContext ( IOleInPlaceSite iface,
LPOLEINPLACEFRAME *  lplpFrame,
LPOLEINPLACEUIWINDOW *  lplpDoc,
LPRECT  lprcPosRect,
LPRECT  lprcClipRect,
LPOLEINPLACEFRAMEINFO  lpFrameInfo 
)
static

Definition at line 372 of file webbrowser.c.

373{
375
376 *lplpFrame = &This->IOleInPlaceFrame_iface;
377 IOleInPlaceFrame_AddRef(&This->IOleInPlaceFrame_iface);
378
379 *lplpDoc = NULL;
380
381 lpFrameInfo->fMDIApp = FALSE;
382 lpFrameInfo->hwndFrame = This->hwndWindow;
383 lpFrameInfo->haccel = NULL;
384 lpFrameInfo->cAccelEntries = 0;
385
386 return S_OK;
387}

◆ InPlace_OnInPlaceActivate()

static HRESULT STDMETHODCALLTYPE InPlace_OnInPlaceActivate ( IOleInPlaceSite iface)
static

Definition at line 362 of file webbrowser.c.

363{
364 return S_OK;
365}

◆ InPlace_OnInPlaceDeactivate()

static HRESULT STDMETHODCALLTYPE InPlace_OnInPlaceDeactivate ( IOleInPlaceSite iface)
static

Definition at line 399 of file webbrowser.c.

400{
401 return S_OK;
402}

◆ InPlace_OnPosRectChange()

static HRESULT STDMETHODCALLTYPE InPlace_OnPosRectChange ( IOleInPlaceSite iface,
LPCRECT  lprcPosRect 
)
static

Definition at line 414 of file webbrowser.c.

415{
417 IOleInPlaceObject *inplace;
418
419 if (IOleObject_QueryInterface(This->ole_obj, &IID_IOleInPlaceObject,
420 (void **)&inplace) == S_OK)
421 {
422 IOleInPlaceObject_SetObjectRects(inplace, lprcPosRect, lprcPosRect);
423 IOleInPlaceObject_Release(inplace);
424 }
425
426 return S_OK;
427}

◆ InPlace_OnUIActivate()

static HRESULT STDMETHODCALLTYPE InPlace_OnUIActivate ( IOleInPlaceSite iface)
static

Definition at line 367 of file webbrowser.c.

368{
369 return S_OK;
370}

◆ InPlace_OnUIDeactivate()

static HRESULT STDMETHODCALLTYPE InPlace_OnUIDeactivate ( IOleInPlaceSite iface,
BOOL  fUndoable 
)
static

Definition at line 394 of file webbrowser.c.

395{
396 return S_OK;
397}

◆ InPlace_QueryInterface()

static HRESULT STDMETHODCALLTYPE InPlace_QueryInterface ( IOleInPlaceSite iface,
REFIID  riid,
LPVOID ppvObj 
)
static

Definition at line 323 of file webbrowser.c.

324{
326
327 return IOleClientSite_QueryInterface(&This->IOleClientSite_iface, riid, ppvObj);
328}

◆ InPlace_Release()

static ULONG STDMETHODCALLTYPE InPlace_Release ( IOleInPlaceSite iface)
static

Definition at line 337 of file webbrowser.c.

338{
340
341 return IOleClientSite_Release(&This->IOleClientSite_iface);
342}

◆ InPlace_Scroll()

static HRESULT STDMETHODCALLTYPE InPlace_Scroll ( IOleInPlaceSite iface,
SIZE  scrollExtent 
)
static

Definition at line 389 of file webbrowser.c.

390{
391 return E_NOTIMPL;
392}

◆ ReleaseWebBrowser()

void ReleaseWebBrowser ( HHInfo info)

Definition at line 720 of file webbrowser.c.

721{
722 WebBrowserContainer *container = info->web_browser;
724
725 if(!container)
726 return;
727
728 if(container->ole_obj) {
729 IOleInPlaceSite *inplace;
730
731 hres = IOleObject_QueryInterface(container->ole_obj, &IID_IOleInPlaceSite, (void**)&inplace);
732 if(SUCCEEDED(hres)) {
733 IOleInPlaceSite_OnInPlaceDeactivate(inplace);
734 IOleInPlaceSite_Release(inplace);
735 }
736
737 IOleObject_SetClientSite(container->ole_obj, NULL);
738 }
739
740 info->web_browser = NULL;
741 IOleClientSite_Release(&container->IOleClientSite_iface);
742}
HRESULT hres
Definition: protocol.c:465
const GUID IID_IOleInPlaceSite

Referenced by InitWebBrowser(), and ReleaseHelpViewer().

◆ ResizeWebBrowser()

void ResizeWebBrowser ( HHInfo info,
DWORD  dwWidth,
DWORD  dwHeight 
)

Definition at line 744 of file webbrowser.c.

745{
746 if (!info->web_browser)
747 return;
748
749 IWebBrowser2_put_Width(info->web_browser->web_browser, dwWidth);
750 IWebBrowser2_put_Height(info->web_browser->web_browser, dwHeight);
751}
static const WCHAR dwWidth[]
Definition: provider.c:62
static const WCHAR dwHeight[]
Definition: provider.c:63

Referenced by Help_OnSize().

◆ Site_AddRef()

static ULONG STDMETHODCALLTYPE Site_AddRef ( IOleClientSite iface)
static

Definition at line 62 of file webbrowser.c.

63{
66
67 TRACE("(%p) ref=%d\n", This, ref);
68
69 return ref;
70}
#define InterlockedIncrement
Definition: armddk.h:53
static WebBrowserContainer * impl_from_IOleClientSite(IOleClientSite *iface)
Definition: webbrowser.c:28
long LONG
Definition: pedump.c:60
#define TRACE(s)
Definition: solgame.cpp:4
Definition: send.c:48

◆ Site_GetContainer()

static HRESULT STDMETHODCALLTYPE Site_GetContainer ( IOleClientSite iface,
LPOLECONTAINER *  ppContainer 
)
static

Definition at line 100 of file webbrowser.c.

101{
102 *ppContainer = NULL;
103
104 return E_NOINTERFACE;
105}
#define E_NOINTERFACE
Definition: winerror.h:2364

◆ Site_GetMoniker()

static HRESULT STDMETHODCALLTYPE Site_GetMoniker ( IOleClientSite iface,
DWORD  dwAssign,
DWORD  dwWhichMoniker,
IMoniker **  ppmk 
)
static

Definition at line 95 of file webbrowser.c.

96{
97 return E_NOTIMPL;
98}

◆ Site_OnShowWindow()

static HRESULT STDMETHODCALLTYPE Site_OnShowWindow ( IOleClientSite iface,
BOOL  fShow 
)
static

Definition at line 112 of file webbrowser.c.

113{
114 return E_NOTIMPL;
115}

◆ Site_QueryInterface()

static HRESULT STDMETHODCALLTYPE Site_QueryInterface ( IOleClientSite iface,
REFIID  riid,
void **  ppvObj 
)
static

Definition at line 33 of file webbrowser.c.

34{
36
38 TRACE("(%p)->(IID_IUnknown %p)\n", This, ppvObj);
39 *ppvObj = &This->IOleClientSite_iface;
41 TRACE("(%p)->(IID_IOleClientSite %p)\n", This, ppvObj);
42 *ppvObj = &This->IOleClientSite_iface;
43 }else if (IsEqualIID(riid, &IID_IOleInPlaceSite)) {
44 TRACE("(%p)->(IID_IOleInPlaceSite %p)\n", This, ppvObj);
45 *ppvObj = &This->IOleInPlaceSite_iface;
47 TRACE("(%p)->(IID_IOleInPlaceFrame %p)\n", This, ppvObj);
48 *ppvObj = &This->IOleInPlaceSite_iface;
49 }else if (IsEqualIID(riid, &IID_IDocHostUIHandler)) {
50 TRACE("(%p)->(IID_IDocHostUIHandler %p)\n", This, ppvObj);
51 *ppvObj = &This->IDocHostUIHandler_iface;
52 }else {
53 TRACE("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppvObj);
54 *ppvObj = NULL;
55 return E_NOINTERFACE;
56 }
57
58 IUnknown_AddRef((IUnknown*)*ppvObj);
59 return S_OK;
60}
const GUID IID_IUnknown
#define debugstr_guid
Definition: kernel32.h:35
const GUID IID_IOleInPlaceFrame
const GUID IID_IOleClientSite
#define IsEqualIID(riid1, riid2)
Definition: guiddef.h:95

◆ Site_Release()

static ULONG STDMETHODCALLTYPE Site_Release ( IOleClientSite iface)
static

Definition at line 72 of file webbrowser.c.

73{
76
77 TRACE("(%p) ref=%d\n", This, ref);
78
79 if(!ref) {
80 if(This->ole_obj)
81 IOleObject_Release(This->ole_obj);
82 if(This->web_browser)
83 IWebBrowser2_Release(This->web_browser);
85 }
86
87 return ref;
88}
static BOOL heap_free(void *mem)
Definition: appwiz.h:76
#define InterlockedDecrement
Definition: armddk.h:52

◆ Site_RequestNewObjectLayout()

static HRESULT STDMETHODCALLTYPE Site_RequestNewObjectLayout ( IOleClientSite iface)
static

Definition at line 117 of file webbrowser.c.

118{
119 return E_NOTIMPL;
120}

◆ Site_SaveObject()

static HRESULT STDMETHODCALLTYPE Site_SaveObject ( IOleClientSite iface)
static

Definition at line 90 of file webbrowser.c.

91{
92 return E_NOTIMPL;
93}

◆ Site_ShowObject()

static HRESULT STDMETHODCALLTYPE Site_ShowObject ( IOleClientSite iface)
static

Definition at line 107 of file webbrowser.c.

108{
109 return NOERROR;
110}
#define NOERROR
Definition: winerror.h:2354

◆ Storage_AddRef()

static ULONG STDMETHODCALLTYPE Storage_AddRef ( IStorage This)
static

Definition at line 561 of file webbrowser.c.

562{
563 return 1;
564}

◆ Storage_Commit()

static HRESULT STDMETHODCALLTYPE Storage_Commit ( IStorage This,
DWORD  grfCommitFlags 
)
static

Definition at line 601 of file webbrowser.c.

602{
603 return E_NOTIMPL;
604}

◆ Storage_CopyTo()

static HRESULT STDMETHODCALLTYPE Storage_CopyTo ( IStorage This,
DWORD  ciidExclude,
IID const rgiidExclude,
SNB  snbExclude,
IStorage pstgDest 
)
static

Definition at line 591 of file webbrowser.c.

592{
593 return E_NOTIMPL;
594}

◆ Storage_CreateStorage()

static HRESULT STDMETHODCALLTYPE Storage_CreateStorage ( IStorage This,
const WCHAR pwcsName,
DWORD  grfMode,
DWORD  reserved1,
DWORD  reserved2,
IStorage **  ppstg 
)
static

Definition at line 581 of file webbrowser.c.

582{
583 return E_NOTIMPL;
584}

◆ Storage_CreateStream()

static HRESULT STDMETHODCALLTYPE Storage_CreateStream ( IStorage This,
const WCHAR pwcsName,
DWORD  grfMode,
DWORD  reserved1,
DWORD  reserved2,
IStream **  ppstm 
)
static

Definition at line 571 of file webbrowser.c.

572{
573 return E_NOTIMPL;
574}

◆ Storage_DestroyElement()

static HRESULT STDMETHODCALLTYPE Storage_DestroyElement ( IStorage This,
const OLECHAR pwcsName 
)
static

Definition at line 616 of file webbrowser.c.

617{
618 return E_NOTIMPL;
619}

◆ Storage_EnumElements()

static HRESULT STDMETHODCALLTYPE Storage_EnumElements ( IStorage This,
DWORD  reserved1,
void reserved2,
DWORD  reserved3,
IEnumSTATSTG **  ppenum 
)
static

Definition at line 611 of file webbrowser.c.

612{
613 return E_NOTIMPL;
614}

◆ Storage_MoveElementTo()

static HRESULT STDMETHODCALLTYPE Storage_MoveElementTo ( IStorage This,
const OLECHAR pwcsName,
IStorage pstgDest,
const OLECHAR pwcsNewName,
DWORD  grfFlags 
)
static

Definition at line 596 of file webbrowser.c.

597{
598 return E_NOTIMPL;
599}

◆ Storage_OpenStorage()

static HRESULT STDMETHODCALLTYPE Storage_OpenStorage ( IStorage This,
const WCHAR pwcsName,
IStorage pstgPriority,
DWORD  grfMode,
SNB  snbExclude,
DWORD  reserved,
IStorage **  ppstg 
)
static

Definition at line 586 of file webbrowser.c.

587{
588 return E_NOTIMPL;
589}

◆ Storage_OpenStream()

static HRESULT STDMETHODCALLTYPE Storage_OpenStream ( IStorage This,
const WCHAR pwcsName,
void reserved1,
DWORD  grfMode,
DWORD  reserved2,
IStream **  ppstm 
)
static

Definition at line 576 of file webbrowser.c.

577{
578 return E_NOTIMPL;
579}

◆ Storage_QueryInterface()

static HRESULT STDMETHODCALLTYPE Storage_QueryInterface ( IStorage This,
REFIID  riid,
LPVOID ppvObj 
)
static

Definition at line 556 of file webbrowser.c.

557{
558 return E_NOTIMPL;
559}

◆ Storage_Release()

static ULONG STDMETHODCALLTYPE Storage_Release ( IStorage This)
static

Definition at line 566 of file webbrowser.c.

567{
568 return 2;
569}

◆ Storage_RenameElement()

static HRESULT STDMETHODCALLTYPE Storage_RenameElement ( IStorage This,
const WCHAR pwcsOldName,
const WCHAR pwcsNewName 
)
static

Definition at line 621 of file webbrowser.c.

622{
623 return E_NOTIMPL;
624}

◆ Storage_Revert()

static HRESULT STDMETHODCALLTYPE Storage_Revert ( IStorage This)
static

Definition at line 606 of file webbrowser.c.

607{
608 return E_NOTIMPL;
609}

◆ Storage_SetClass()

static HRESULT STDMETHODCALLTYPE Storage_SetClass ( IStorage This,
REFCLSID  clsid 
)
static

Definition at line 631 of file webbrowser.c.

632{
633 return S_OK;
634}

◆ Storage_SetElementTimes()

static HRESULT STDMETHODCALLTYPE Storage_SetElementTimes ( IStorage This,
const WCHAR pwcsName,
FILETIME const pctime,
FILETIME const patime,
FILETIME const pmtime 
)
static

Definition at line 626 of file webbrowser.c.

627{
628 return E_NOTIMPL;
629}

◆ Storage_SetStateBits()

static HRESULT STDMETHODCALLTYPE Storage_SetStateBits ( IStorage This,
DWORD  grfStateBits,
DWORD  grfMask 
)
static

Definition at line 636 of file webbrowser.c.

637{
638 return E_NOTIMPL;
639}

◆ Storage_Stat()

static HRESULT STDMETHODCALLTYPE Storage_Stat ( IStorage This,
STATSTG *  pstatstg,
DWORD  grfStatFlag 
)
static

Definition at line 641 of file webbrowser.c.

642{
643 return E_NOTIMPL;
644}

◆ UI_AddRef()

static ULONG STDMETHODCALLTYPE UI_AddRef ( IDocHostUIHandler iface)
static

Definition at line 147 of file webbrowser.c.

148{
150
151 return IOleClientSite_AddRef(&This->IOleClientSite_iface);
152}
static WebBrowserContainer * impl_from_IDocHostUIHandler(IDocHostUIHandler *iface)
Definition: webbrowser.c:135

◆ UI_EnableModeless()

static HRESULT STDMETHODCALLTYPE UI_EnableModeless ( IDocHostUIHandler iface,
BOOL  fEnable 
)
static

Definition at line 243 of file webbrowser.c.

244{
245 return S_OK;
246}

◆ UI_FilterDataObject()

static HRESULT STDMETHODCALLTYPE UI_FilterDataObject ( IDocHostUIHandler iface,
IDataObject pDO,
IDataObject **  ppDORet 
)
static

Definition at line 290 of file webbrowser.c.

291{
292 *ppDORet = NULL;
293 return S_FALSE;
294}
#define S_FALSE
Definition: winerror.h:2357

◆ UI_GetDropTarget()

static HRESULT STDMETHODCALLTYPE UI_GetDropTarget ( IDocHostUIHandler iface,
IDropTarget pDropTarget,
IDropTarget **  ppDropTarget 
)
static

Definition at line 273 of file webbrowser.c.

274{
275 return S_FALSE;
276}

◆ UI_GetExternal()

static HRESULT STDMETHODCALLTYPE UI_GetExternal ( IDocHostUIHandler iface,
IDispatch **  ppDispatch 
)
static

Definition at line 278 of file webbrowser.c.

279{
280 *ppDispatch = NULL;
281 return S_FALSE;
282}

◆ UI_GetHostInfo()

static HRESULT STDMETHODCALLTYPE UI_GetHostInfo ( IDocHostUIHandler iface,
DOCHOSTUIINFO *  pInfo 
)
static

Definition at line 219 of file webbrowser.c.

220{
221 pInfo->cbSize = sizeof(DOCHOSTUIINFO);
222 pInfo->dwFlags = DOCHOSTUIFLAG_NO3DBORDER;
223 pInfo->dwDoubleClick = DOCHOSTUIDBLCLK_DEFAULT;
224
225 return S_OK;
226}
@ DOCHOSTUIDBLCLK_DEFAULT
Definition: mshtmhst.idl:109
@ DOCHOSTUIFLAG_NO3DBORDER
Definition: mshtmhst.idl:118

◆ UI_GetOptionKeyPath()

static HRESULT STDMETHODCALLTYPE UI_GetOptionKeyPath ( IDocHostUIHandler iface,
LPOLESTR pchKey,
DWORD  dw 
)
static

Definition at line 268 of file webbrowser.c.

269{
270 return S_FALSE;
271}

◆ UI_HideUI()

static HRESULT STDMETHODCALLTYPE UI_HideUI ( IDocHostUIHandler iface)
static

Definition at line 233 of file webbrowser.c.

234{
235 return S_OK;
236}

◆ UI_OnDocWindowActivate()

static HRESULT STDMETHODCALLTYPE UI_OnDocWindowActivate ( IDocHostUIHandler iface,
BOOL  fActivate 
)
static

Definition at line 248 of file webbrowser.c.

249{
250 return S_OK;
251}

◆ UI_OnFrameWindowActivate()

static HRESULT STDMETHODCALLTYPE UI_OnFrameWindowActivate ( IDocHostUIHandler iface,
BOOL  fActivate 
)
static

Definition at line 253 of file webbrowser.c.

254{
255 return S_OK;
256}

◆ UI_QueryInterface()

static HRESULT STDMETHODCALLTYPE UI_QueryInterface ( IDocHostUIHandler iface,
REFIID  riid,
LPVOID ppvObj 
)
static

Definition at line 140 of file webbrowser.c.

141{
143
144 return IOleClientSite_QueryInterface(&This->IOleClientSite_iface, riid, ppvObj);
145}

◆ UI_Release()

static ULONG STDMETHODCALLTYPE UI_Release ( IDocHostUIHandler iface)
static

Definition at line 154 of file webbrowser.c.

155{
157
158 return IOleClientSite_Release(&This->IOleClientSite_iface);
159}

◆ UI_ResizeBorder()

static HRESULT STDMETHODCALLTYPE UI_ResizeBorder ( IDocHostUIHandler iface,
LPCRECT  prcBorder,
IOleInPlaceUIWindow pUIWindow,
BOOL  fRameWindow 
)
static

Definition at line 258 of file webbrowser.c.

259{
260 return S_OK;
261}

◆ UI_ShowContextMenu()

static HRESULT STDMETHODCALLTYPE UI_ShowContextMenu ( IDocHostUIHandler iface,
DWORD  dwID,
POINT ppt,
IUnknown pcmdtReserved,
IDispatch pdispReserved 
)
static

Definition at line 161 of file webbrowser.c.

162{
164 DWORD cmdid, menu_id = 0;
165 HMENU menu, submenu;
166
167 TRACE("(%p)->(%d %s)\n", This, dwID, wine_dbgstr_point(ppt));
168
170 if (!menu)
171 return S_OK;
172
173 /* FIXME: Support more menu types. */
174 if(dwID == CONTEXT_MENU_TEXTSELECT)
175 menu_id = 1;
176
177 submenu = GetSubMenu(menu, menu_id);
178
180 ppt->x, ppt->y, 0, This->hwndWindow, NULL);
181 DestroyMenu(menu);
182
183 switch(cmdid) {
184 case IDTB_BACK:
186 break;
187 case IDTB_FORWARD:
189 break;
190 case MIID_SELECTALL:
191 IWebBrowser2_ExecWB(This->web_browser, OLECMDID_SELECTALL, 0, NULL, NULL);
192 break;
193 case MIID_VIEWSOURCE:
194 FIXME("View source\n");
195 break;
196 case IDTB_PRINT:
198 break;
199 case IDTB_REFRESH:
201 break;
202 case MIID_PROPERTIES:
203 FIXME("Properties\n");
204 break;
205 case MIID_COPY:
206 IWebBrowser2_ExecWB(This->web_browser, OLECMDID_COPY, 0, NULL, NULL);
207 break;
208 case MIID_PASTE:
209 IWebBrowser2_ExecWB(This->web_browser, OLECMDID_PASTE, 0, NULL, NULL);
210 break;
211 case MIID_CUT:
212 IWebBrowser2_ExecWB(This->web_browser, OLECMDID_CUT, 0, NULL, NULL);
213 break;
214 }
215
216 return S_OK;
217}
static const char * wine_dbgstr_point(const POINT *ppt)
Definition: atltest.h:138
#define FIXME(fmt,...)
Definition: debug.h:111
#define MIID_COPY
Definition: resource.h:56
#define MENU_WEBBROWSER
Definition: resource.h:40
#define MIID_CUT
Definition: resource.h:55
#define MIID_PASTE
Definition: resource.h:57
#define MIID_SELECTALL
Definition: resource.h:52
#define MIID_VIEWSOURCE
Definition: resource.h:53
#define MIID_PROPERTIES
Definition: resource.h:54
unsigned long DWORD
Definition: ntddk_ex.h:95
HINSTANCE hhctrl_hinstance
Definition: hhctrl.c:41
void DoPageAction(WebBrowserContainer *container, DWORD dwAction)
Definition: webbrowser.c:753
#define IDTB_BACK
Definition: htmlhelp.h:129
#define IDTB_PRINT
Definition: htmlhelp.h:132
#define IDTB_FORWARD
Definition: htmlhelp.h:134
#define IDTB_REFRESH
Definition: htmlhelp.h:128
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:63
long y
Definition: polytest.cpp:48
long x
Definition: polytest.cpp:48
#define TPM_RIGHTBUTTON
Definition: winuser.h:2380
HMENU WINAPI GetSubMenu(_In_ HMENU, _In_ int)
#define TPM_LEFTALIGN
Definition: winuser.h:2377
BOOL WINAPI DestroyMenu(_In_ HMENU)
BOOL WINAPI TrackPopupMenu(_In_ HMENU, _In_ UINT, _In_ int, _In_ int, _Reserved_ int, _In_ HWND, _Reserved_ LPCRECT)
#define MAKEINTRESOURCEW(i)
Definition: winuser.h:582
HMENU WINAPI LoadMenuW(_In_opt_ HINSTANCE, _In_ LPCWSTR)
#define TPM_RETURNCMD
Definition: winuser.h:2387

◆ UI_ShowUI()

static HRESULT STDMETHODCALLTYPE UI_ShowUI ( IDocHostUIHandler iface,
DWORD  dwID,
IOleInPlaceActiveObject pActiveObject,
IOleCommandTarget pCommandTarget,
IOleInPlaceFrame pFrame,
IOleInPlaceUIWindow pDoc 
)
static

Definition at line 228 of file webbrowser.c.

229{
230 return S_OK;
231}

◆ UI_TranslateAccelerator()

static HRESULT STDMETHODCALLTYPE UI_TranslateAccelerator ( IDocHostUIHandler iface,
LPMSG  lpMsg,
const GUID pguidCmdGroup,
DWORD  nCmdID 
)
static

Definition at line 263 of file webbrowser.c.

264{
265 return S_FALSE;
266}

◆ UI_TranslateUrl()

static HRESULT STDMETHODCALLTYPE UI_TranslateUrl ( IDocHostUIHandler iface,
DWORD  dwTranslate,
OLECHAR pchURLIn,
OLECHAR **  ppchURLOut 
)
static

Definition at line 284 of file webbrowser.c.

285{
286 *ppchURLOut = NULL;
287 return S_FALSE;
288}

◆ UI_UpdateUI()

static HRESULT STDMETHODCALLTYPE UI_UpdateUI ( IDocHostUIHandler iface)
static

Definition at line 238 of file webbrowser.c.

239{
240 return S_OK;
241}

◆ WINE_DEFAULT_DEBUG_CHANNEL()

WINE_DEFAULT_DEBUG_CHANNEL ( htmlhelp  )

Variable Documentation

◆ DocHostUIHandlerVtbl

const IDocHostUIHandlerVtbl DocHostUIHandlerVtbl
static
Initial value:
=
{
}
static HRESULT STDMETHODCALLTYPE UI_TranslateUrl(IDocHostUIHandler *iface, DWORD dwTranslate, OLECHAR *pchURLIn, OLECHAR **ppchURLOut)
Definition: webbrowser.c:284
static HRESULT STDMETHODCALLTYPE UI_UpdateUI(IDocHostUIHandler *iface)
Definition: webbrowser.c:238
static HRESULT STDMETHODCALLTYPE UI_EnableModeless(IDocHostUIHandler *iface, BOOL fEnable)
Definition: webbrowser.c:243
static HRESULT STDMETHODCALLTYPE UI_OnDocWindowActivate(IDocHostUIHandler *iface, BOOL fActivate)
Definition: webbrowser.c:248
static HRESULT STDMETHODCALLTYPE UI_FilterDataObject(IDocHostUIHandler *iface, IDataObject *pDO, IDataObject **ppDORet)
Definition: webbrowser.c:290
static HRESULT STDMETHODCALLTYPE UI_OnFrameWindowActivate(IDocHostUIHandler *iface, BOOL fActivate)
Definition: webbrowser.c:253
static HRESULT STDMETHODCALLTYPE UI_GetHostInfo(IDocHostUIHandler *iface, DOCHOSTUIINFO *pInfo)
Definition: webbrowser.c:219
static ULONG STDMETHODCALLTYPE UI_Release(IDocHostUIHandler *iface)
Definition: webbrowser.c:154
static HRESULT STDMETHODCALLTYPE UI_ResizeBorder(IDocHostUIHandler *iface, LPCRECT prcBorder, IOleInPlaceUIWindow *pUIWindow, BOOL fRameWindow)
Definition: webbrowser.c:258
static HRESULT STDMETHODCALLTYPE UI_QueryInterface(IDocHostUIHandler *iface, REFIID riid, LPVOID *ppvObj)
Definition: webbrowser.c:140
static ULONG STDMETHODCALLTYPE UI_AddRef(IDocHostUIHandler *iface)
Definition: webbrowser.c:147
static HRESULT STDMETHODCALLTYPE UI_TranslateAccelerator(IDocHostUIHandler *iface, LPMSG lpMsg, const GUID *pguidCmdGroup, DWORD nCmdID)
Definition: webbrowser.c:263
static HRESULT STDMETHODCALLTYPE UI_HideUI(IDocHostUIHandler *iface)
Definition: webbrowser.c:233
static HRESULT STDMETHODCALLTYPE UI_GetOptionKeyPath(IDocHostUIHandler *iface, LPOLESTR *pchKey, DWORD dw)
Definition: webbrowser.c:268
static HRESULT STDMETHODCALLTYPE UI_GetDropTarget(IDocHostUIHandler *iface, IDropTarget *pDropTarget, IDropTarget **ppDropTarget)
Definition: webbrowser.c:273
static HRESULT STDMETHODCALLTYPE UI_ShowContextMenu(IDocHostUIHandler *iface, DWORD dwID, POINT *ppt, IUnknown *pcmdtReserved, IDispatch *pdispReserved)
Definition: webbrowser.c:161
static HRESULT STDMETHODCALLTYPE UI_GetExternal(IDocHostUIHandler *iface, IDispatch **ppDispatch)
Definition: webbrowser.c:278
static HRESULT STDMETHODCALLTYPE UI_ShowUI(IDocHostUIHandler *iface, DWORD dwID, IOleInPlaceActiveObject *pActiveObject, IOleCommandTarget *pCommandTarget, IOleInPlaceFrame *pFrame, IOleInPlaceUIWindow *pDoc)
Definition: webbrowser.c:228

Definition at line 296 of file webbrowser.c.

Referenced by InitWebBrowser().

◆ MyIStorage

IStorage MyIStorage = { &MyIStorageTable }
static

Definition at line 668 of file webbrowser.c.

Referenced by InitWebBrowser().

◆ MyIStorageTable

const IStorageVtbl MyIStorageTable
static
Initial value:
=
{
}
static HRESULT STDMETHODCALLTYPE Storage_SetClass(IStorage *This, REFCLSID clsid)
Definition: webbrowser.c:631
static HRESULT STDMETHODCALLTYPE Storage_EnumElements(IStorage *This, DWORD reserved1, void *reserved2, DWORD reserved3, IEnumSTATSTG **ppenum)
Definition: webbrowser.c:611
static HRESULT STDMETHODCALLTYPE Storage_DestroyElement(IStorage *This, const OLECHAR *pwcsName)
Definition: webbrowser.c:616
static HRESULT STDMETHODCALLTYPE Storage_Revert(IStorage *This)
Definition: webbrowser.c:606
static HRESULT STDMETHODCALLTYPE Storage_SetElementTimes(IStorage *This, const WCHAR *pwcsName, FILETIME const *pctime, FILETIME const *patime, FILETIME const *pmtime)
Definition: webbrowser.c:626
static HRESULT STDMETHODCALLTYPE Storage_CopyTo(IStorage *This, DWORD ciidExclude, IID const *rgiidExclude, SNB snbExclude, IStorage *pstgDest)
Definition: webbrowser.c:591
static HRESULT STDMETHODCALLTYPE Storage_SetStateBits(IStorage *This, DWORD grfStateBits, DWORD grfMask)
Definition: webbrowser.c:636
static HRESULT STDMETHODCALLTYPE Storage_QueryInterface(IStorage *This, REFIID riid, LPVOID *ppvObj)
Definition: webbrowser.c:556
static ULONG STDMETHODCALLTYPE Storage_Release(IStorage *This)
Definition: webbrowser.c:566
static HRESULT STDMETHODCALLTYPE Storage_OpenStorage(IStorage *This, const WCHAR *pwcsName, IStorage *pstgPriority, DWORD grfMode, SNB snbExclude, DWORD reserved, IStorage **ppstg)
Definition: webbrowser.c:586
static HRESULT STDMETHODCALLTYPE Storage_Commit(IStorage *This, DWORD grfCommitFlags)
Definition: webbrowser.c:601
static HRESULT STDMETHODCALLTYPE Storage_RenameElement(IStorage *This, const WCHAR *pwcsOldName, const WCHAR *pwcsNewName)
Definition: webbrowser.c:621
static HRESULT STDMETHODCALLTYPE Storage_OpenStream(IStorage *This, const WCHAR *pwcsName, void *reserved1, DWORD grfMode, DWORD reserved2, IStream **ppstm)
Definition: webbrowser.c:576
static HRESULT STDMETHODCALLTYPE Storage_CreateStorage(IStorage *This, const WCHAR *pwcsName, DWORD grfMode, DWORD reserved1, DWORD reserved2, IStorage **ppstg)
Definition: webbrowser.c:581
static ULONG STDMETHODCALLTYPE Storage_AddRef(IStorage *This)
Definition: webbrowser.c:561
static HRESULT STDMETHODCALLTYPE Storage_Stat(IStorage *This, STATSTG *pstatstg, DWORD grfStatFlag)
Definition: webbrowser.c:641
static HRESULT STDMETHODCALLTYPE Storage_MoveElementTo(IStorage *This, const OLECHAR *pwcsName, IStorage *pstgDest, const OLECHAR *pwcsNewName, DWORD grfFlags)
Definition: webbrowser.c:596
static HRESULT STDMETHODCALLTYPE Storage_CreateStream(IStorage *This, const WCHAR *pwcsName, DWORD grfMode, DWORD reserved1, DWORD reserved2, IStream **ppstm)
Definition: webbrowser.c:571

Definition at line 646 of file webbrowser.c.

◆ OleClientSiteVtbl

const IOleClientSiteVtbl OleClientSiteVtbl
static
Initial value:
=
{
}
static ULONG STDMETHODCALLTYPE Site_Release(IOleClientSite *iface)
Definition: webbrowser.c:72
static HRESULT STDMETHODCALLTYPE Site_ShowObject(IOleClientSite *iface)
Definition: webbrowser.c:107
static ULONG STDMETHODCALLTYPE Site_AddRef(IOleClientSite *iface)
Definition: webbrowser.c:62
static HRESULT STDMETHODCALLTYPE Site_OnShowWindow(IOleClientSite *iface, BOOL fShow)
Definition: webbrowser.c:112
static HRESULT STDMETHODCALLTYPE Site_SaveObject(IOleClientSite *iface)
Definition: webbrowser.c:90
static HRESULT STDMETHODCALLTYPE Site_RequestNewObjectLayout(IOleClientSite *iface)
Definition: webbrowser.c:117
static HRESULT STDMETHODCALLTYPE Site_QueryInterface(IOleClientSite *iface, REFIID riid, void **ppvObj)
Definition: webbrowser.c:33
static HRESULT STDMETHODCALLTYPE Site_GetMoniker(IOleClientSite *iface, DWORD dwAssign, DWORD dwWhichMoniker, IMoniker **ppmk)
Definition: webbrowser.c:95
static HRESULT STDMETHODCALLTYPE Site_GetContainer(IOleClientSite *iface, LPOLECONTAINER *ppContainer)
Definition: webbrowser.c:100

Definition at line 122 of file webbrowser.c.

Referenced by InitWebBrowser().

◆ OleInPlaceFrameVtbl

const IOleInPlaceFrameVtbl OleInPlaceFrameVtbl
static
Initial value:
=
{
}
static HRESULT STDMETHODCALLTYPE Frame_GetWindow(IOleInPlaceFrame *iface, HWND *lphwnd)
Definition: webbrowser.c:474
static HRESULT STDMETHODCALLTYPE Frame_EnableModeless(IOleInPlaceFrame *iface, BOOL fEnable)
Definition: webbrowser.c:527
static HRESULT STDMETHODCALLTYPE Frame_ContextSensitiveHelp(IOleInPlaceFrame *iface, BOOL fEnterMode)
Definition: webbrowser.c:482
static HRESULT STDMETHODCALLTYPE Frame_SetMenu(IOleInPlaceFrame *iface, HMENU hmenuShared, HOLEMENU holemenu, HWND hwndActiveObject)
Definition: webbrowser.c:512
static ULONG STDMETHODCALLTYPE Frame_Release(IOleInPlaceFrame *iface)
Definition: webbrowser.c:467
static ULONG STDMETHODCALLTYPE Frame_AddRef(IOleInPlaceFrame *iface)
Definition: webbrowser.c:460
static HRESULT STDMETHODCALLTYPE Frame_QueryInterface(IOleInPlaceFrame *iface, REFIID riid, LPVOID *ppvObj)
Definition: webbrowser.c:453
static HRESULT STDMETHODCALLTYPE Frame_SetActiveObject(IOleInPlaceFrame *iface, IOleInPlaceActiveObject *pActiveObject, LPCOLESTR pszObjName)
Definition: webbrowser.c:502
static HRESULT STDMETHODCALLTYPE Frame_SetStatusText(IOleInPlaceFrame *iface, LPCOLESTR pszStatusText)
Definition: webbrowser.c:522
static HRESULT STDMETHODCALLTYPE Frame_SetBorderSpace(IOleInPlaceFrame *iface, LPCBORDERWIDTHS pborderwidths)
Definition: webbrowser.c:497
static HRESULT STDMETHODCALLTYPE Frame_TranslateAccelerator(IOleInPlaceFrame *iface, LPMSG lpmsg, WORD wID)
Definition: webbrowser.c:532
static HRESULT STDMETHODCALLTYPE Frame_RequestBorderSpace(IOleInPlaceFrame *iface, LPCBORDERWIDTHS pborderwidths)
Definition: webbrowser.c:492
static HRESULT STDMETHODCALLTYPE Frame_InsertMenus(IOleInPlaceFrame *iface, HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths)
Definition: webbrowser.c:507
static HRESULT STDMETHODCALLTYPE Frame_RemoveMenus(IOleInPlaceFrame *iface, HMENU hmenuShared)
Definition: webbrowser.c:517
static HRESULT STDMETHODCALLTYPE Frame_GetBorder(IOleInPlaceFrame *iface, LPRECT lprectBorder)
Definition: webbrowser.c:487

Definition at line 537 of file webbrowser.c.

Referenced by InitWebBrowser().

◆ OleInPlaceSiteVtbl

const IOleInPlaceSiteVtbl OleInPlaceSiteVtbl
static
Initial value:
=
{
}
static HRESULT STDMETHODCALLTYPE InPlace_DiscardUndoState(IOleInPlaceSite *iface)
Definition: webbrowser.c:404
static HRESULT STDMETHODCALLTYPE InPlace_DeactivateAndUndo(IOleInPlaceSite *iface)
Definition: webbrowser.c:409
static HRESULT STDMETHODCALLTYPE InPlace_GetWindow(IOleInPlaceSite *iface, HWND *lphwnd)
Definition: webbrowser.c:344
static HRESULT STDMETHODCALLTYPE InPlace_QueryInterface(IOleInPlaceSite *iface, REFIID riid, LPVOID *ppvObj)
Definition: webbrowser.c:323
static ULONG STDMETHODCALLTYPE InPlace_AddRef(IOleInPlaceSite *iface)
Definition: webbrowser.c:330
static HRESULT STDMETHODCALLTYPE InPlace_OnPosRectChange(IOleInPlaceSite *iface, LPCRECT lprcPosRect)
Definition: webbrowser.c:414
static HRESULT STDMETHODCALLTYPE InPlace_OnUIActivate(IOleInPlaceSite *iface)
Definition: webbrowser.c:367
static HRESULT STDMETHODCALLTYPE InPlace_GetWindowContext(IOleInPlaceSite *iface, LPOLEINPLACEFRAME *lplpFrame, LPOLEINPLACEUIWINDOW *lplpDoc, LPRECT lprcPosRect, LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo)
Definition: webbrowser.c:372
static HRESULT STDMETHODCALLTYPE InPlace_Scroll(IOleInPlaceSite *iface, SIZE scrollExtent)
Definition: webbrowser.c:389
static HRESULT STDMETHODCALLTYPE InPlace_OnUIDeactivate(IOleInPlaceSite *iface, BOOL fUndoable)
Definition: webbrowser.c:394
static ULONG STDMETHODCALLTYPE InPlace_Release(IOleInPlaceSite *iface)
Definition: webbrowser.c:337
static HRESULT STDMETHODCALLTYPE InPlace_OnInPlaceActivate(IOleInPlaceSite *iface)
Definition: webbrowser.c:362
static HRESULT STDMETHODCALLTYPE InPlace_OnInPlaceDeactivate(IOleInPlaceSite *iface)
Definition: webbrowser.c:399
static HRESULT STDMETHODCALLTYPE InPlace_CanInPlaceActivate(IOleInPlaceSite *iface)
Definition: webbrowser.c:357
static HRESULT STDMETHODCALLTYPE InPlace_ContextSensitiveHelp(IOleInPlaceSite *iface, BOOL fEnterMode)
Definition: webbrowser.c:352

Definition at line 429 of file webbrowser.c.

Referenced by InitWebBrowser().