49 *
ppv = &
This->IWebBrowser2_iface;
52 *
ppv = &
This->IWebBrowser2_iface;
55 *
ppv = &
This->IWebBrowser2_iface;
58 *
ppv = &
This->IWebBrowser2_iface;
64 *
ppv = &
This->IOleInPlaceObject_iface;
67 *
ppv = &
This->IOleInPlaceObject_iface;
70 *
ppv = &
This->IOleControl_iface;
73 *
ppv = &
This->IPersistStorage_iface;
76 *
ppv = &
This->IPersistStorage_iface;
79 *
ppv = &
This->IPersistMemory_iface;
82 *
ppv = &
This->IPersistStreamInit_iface;
85 *
ppv = &
This->IProvideClassInfo2_iface;
88 *
ppv = &
This->IProvideClassInfo2_iface;
90 TRACE(
"(%p)->(IID_IConnectionPointContainer %p)\n",
This,
ppv);
91 *
ppv = &
This->doc_host.cps.IConnectionPointContainer_iface;
94 *
ppv = &
This->IViewObject2_iface;
97 *
ppv = &
This->IViewObject2_iface;
99 TRACE(
"(%p)->(IID_IOleInPlaceActiveObject %p)\n",
This,
ppv);
100 *
ppv = &
This->IOleInPlaceActiveObject_iface;
103 *
ppv = &
This->IOleCommandTarget_iface;
105 *
ppv = &
This->IServiceProvider_iface;
108 *
ppv = &
This->IDataObject_iface;
111 TRACE(
"(%p)->(IID_IQuickActivate %p) returning NULL\n",
This,
ppv);
114 TRACE(
"(%p)->(IID_IRunnableObject %p) returning NULL\n",
This,
ppv);
117 TRACE(
"(%p)->(IID_IPerPropertyBrowsing %p) returning NULL\n",
This,
ppv);
120 TRACE(
"(%p)->(IID_IOleCache %p) returning NULL\n",
This,
ppv);
123 TRACE(
"(%p)->(IID_IOleInPlaceSite %p) returning NULL\n",
This,
ppv);
126 TRACE(
"(%p)->(IID_IObjectWithSite %p) returning NULL\n",
This,
ppv);
129 TRACE(
"(%p)->(IID_IViewObjectEx %p) returning NULL\n",
This,
ppv);
132 TRACE(
"(%p)->(IID_IOleLink %p) returning NULL\n",
This,
ppv);
135 TRACE(
"(%p)->(IID_IMarshal %p) returning NULL\n",
This,
ppv);
139 WARN(
"(%p)->(IID_IStdMarshalInfo %p) returning NULL\n",
This,
ppv);
171 IAdviseSink_Release(
This->sink);
173 if(
This->advise_holder)
174 IOleAdviseHolder_Release(
This->advise_holder);
176 if(
This->doc_host.document)
177 IUnknown_Release(
This->doc_host.document);
206 return IUnknown_QueryInterface(
This->hlink_frame.outer,
riid,
ppv);
213 return IUnknown_AddRef(
This->hlink_frame.outer);
220 return IUnknown_Release(
This->hlink_frame.outer);
253 LPOLESTR *rgszNames,
UINT cNames,
267 return ITypeInfo_GetIDsOfNames(
typeinfo, rgszNames, cNames, rgDispId);
272 DISPPARAMS *pDispParams,
VARIANT *pVarResult,
273 EXCEPINFO *pExepInfo,
UINT *puArgErr)
280 lcid,
wFlags, pDispParams, pVarResult, pExepInfo, puArgErr);
286 return ITypeInfo_Invoke(
typeinfo, &
This->IWebBrowser2_iface, dispIdMember,
wFlags, pDispParams,
287 pVarResult, pExepInfo, puArgErr);
367 IDispatch_AddRef(*ppDisp);
392 if(
This->doc_host.document) {
401 hres = IDispatch_QueryInterface(disp, &IID_IHTMLDocument2, (
void**)&
html_doc);
403 IDispatch_Release(disp);
433 *pl =
This->pos_rect.left;
452 return IOleInPlaceSiteEx_OnPosRectChange(
This->inplace, &
rect);
461 *pl =
This->pos_rect.top;
480 return IOleInPlaceSiteEx_OnPosRectChange(
This->inplace, &
rect);
489 *pl =
This->pos_rect.right -
This->pos_rect.left;
508 return IOleInPlaceSiteEx_OnPosRectChange(
This->inplace, &
rect);
517 *pl =
This->pos_rect.bottom -
This->pos_rect.top;
536 return IOleInPlaceSiteEx_OnPosRectChange(
This->inplace, &
rect);
545 TRACE(
"(%p)->(%p)\n",
This, LocationName);
547 if(
This->doc_host.document &&
548 SUCCEEDED(IUnknown_QueryInterface(
This->doc_host.document, &IID_IHTMLDocument2, (
void **)&doc))) {
549 hres = IHTMLDocument2_get_title(doc, LocationName);
554 IHTMLDocument2_Release(doc);
567 TRACE(
"(%p)->(%p)\n",
This, LocationURL);
578 *pBool =
This->doc_host.busy;
595 FIXME(
"(%p)->(%p %p)\n",
This, pcx, pcy);
615 static const WCHAR sName[] = {
'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
' ',
'W',
'e',
'b',
616 ' ',
'B',
'r',
'o',
'w',
's',
'e',
'r',
' ',
'C',
'o',
'n',
't',
'r',
'o',
'l',0};
657 *pBool =
This->visible;
665 DISPPARAMS dispparams = {&
arg,
NULL, 1, 0};
684 *pBool =
This->status_bar;
692 DISPPARAMS dispparams = {&
arg,
NULL, 1, 0};
696 This->status_bar =
Value ? VARIANT_TRUE : VARIANT_FALSE;
736 DISPPARAMS dispparams = {&
arg,
NULL, 1, 0};
740 This->tool_bar =
Value ? VARIANT_TRUE : VARIANT_FALSE;
766 DISPPARAMS dispparams = {&
arg,
NULL, 1, 0};
770 This->menu_bar =
Value ? VARIANT_TRUE : VARIANT_FALSE;
786 TRACE(
"(%p)->(%p)\n",
This, pbFullScreen);
788 *pbFullScreen =
This->full_screen;
796 DISPPARAMS dispparams = {&
arg,
NULL, 1, 0};
801 TRACE(
"(%p)->(%x)\n",
This, bFullScreen);
803 This->full_screen = bFullScreen ? VARIANT_TRUE : VARIANT_FALSE;
836 FIXME(
"Unsupported V_VT(URL) %d\n",
V_VT(URL));
847 OLECMD ole_command[1];
850 TRACE(
"(%p)->(%d %p)\n",
This, cmdID, pcmdf);
854 ole_command[0].cmdID = cmdID;
855 ole_command[0].cmdf = *pcmdf;
865 hres = IUnknown_QueryInterface(
This->doc_host.document, &IID_IOleCommandTarget, (
LPVOID*)&
target);
875 *pcmdf = ole_command[0].cmdf;
876 if (
hres == OLECMDERR_E_NOTSUPPORTED)
881 IOleCommandTarget_Release(
target);
903 hres = IUnknown_QueryInterface(
This->doc_host.document, &IID_IOleCommandTarget, (
LPVOID*)&
target);
911 hres = IOleCommandTarget_Exec(
target,
NULL, cmdID, cmdexecopt, pvaIn, pvaOut);
912 IOleCommandTarget_Release(
target);
930 TRACE(
"(%p)->(%p)\n",
This, lpReadyState);
932 *lpReadyState =
This->doc_host.ready_state;
942 *pbOffline =
This->doc_host.offline;
952 This->doc_host.offline = bOffline ? VARIANT_TRUE : VARIANT_FALSE;
962 *pbSilent =
This->doc_host.silent;
972 This->doc_host.silent = bSilent ? VARIANT_TRUE : VARIANT_FALSE;
983 *pbRegister =
This->register_browser;
994 This->register_browser = bRegister ? VARIANT_TRUE : VARIANT_FALSE;
1003 FIXME(
"(%p)->(%p)\n",
This, pbRegister);
1024 TRACE(
"(%p)->(%p)\n",
This, pbRegister);
1026 *pbRegister =
This->theater_mode;
1034 DISPPARAMS dispparams = {&
arg,
NULL, 1, 0};
1038 This->theater_mode = bRegister ? VARIANT_TRUE : VARIANT_FALSE;
1064 DISPPARAMS dispparams = {&
arg,
NULL, 1, 0};
1068 This->address_bar =
Value ? VARIANT_TRUE : VARIANT_FALSE;
1094 DISPPARAMS dispparams = {&
arg,
NULL, 1, 0};
1192 return IUnknown_QueryInterface(
This->hlink_frame.outer,
riid,
ppv);
1198 return IUnknown_AddRef(
This->hlink_frame.outer);
1204 return IUnknown_Release(
This->hlink_frame.outer);
1213 TRACE(
"(%p)->(SID_SHTMLWindow)\n",
This);
1214 return IHTMLWindow2_QueryInterface(&
This->doc_host.html_window.IHTMLWindow2_iface,
riid,
ppv);
1218 TRACE(
"(%p)->(IID_IBrowserService2 return E_FAIL)\n",
This);
1244 return IUnknown_AddRef(
This->hlink_frame.outer);
1250 return IUnknown_Release(
This->hlink_frame.outer);
1301 ret->visible = VARIANT_TRUE;
1302 ret->menu_bar = VARIANT_TRUE;
1303 ret->address_bar = VARIANT_TRUE;
1304 ret->status_bar = VARIANT_TRUE;
1305 ret->tool_bar = VARIANT_TRUE;
1316 IUnknown_Release(&
ret->IUnknown_inner);
PRTL_UNICODE_STRING_BUFFER Path
HRESULT get_typeinfo(enum type_id tid, ITypeInfo **ret)
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
#define STDMETHODCALLTYPE
void WebBrowser_ClassInfo_Init(WebBrowser *This)
_Check_return_ _In_ D3DDDI_VIDEO_PRESENT_TARGET_ID _In_ PDXGKARG_SYSTEM_DISPLAY_ENABLE_FLAGS _Out_ UINT _Out_ UINT * Height
_Check_return_ _In_ D3DDDI_VIDEO_PRESENT_TARGET_ID _In_ PDXGKARG_SYSTEM_DISPLAY_ENABLE_FLAGS _Out_ UINT * Width
_In_ ULONG _In_ UCHAR Level
_In_ D3DDDI_VIDEO_PRESENT_TARGET_ID _In_ ULONG _In_ ULONG Flags
static const WCHAR version[]
void call_sink(ConnectionPoint *This, DISPID dispid, DISPPARAMS *dispparams)
static HRESULT WINAPI WebBrowser_get_Height(IWebBrowser2 *iface, LONG *pl)
static HRESULT STDMETHODCALLTYPE WBServiceProvider_QueryService(IServiceProvider *iface, REFGUID guidService, REFIID riid, void **ppv)
static HRESULT WINAPI WebBrowser_get_RegisterAsBrowser(IWebBrowser2 *iface, VARIANT_BOOL *pbRegister)
HRESULT WINAPI WebBrowserV1_Create(IClassFactory *iface, IUnknown *pOuter, REFIID riid, void **ppv)
static HRESULT WINAPI WebBrowser_PutProperty(IWebBrowser2 *iface, BSTR szProperty, VARIANT vtValue)
static ULONG WINAPI WebBrowser_Release(IUnknown *iface)
static HRESULT WINAPI WebBrowser_get_Silent(IWebBrowser2 *iface, VARIANT_BOOL *pbSilent)
static const IDocHostContainerVtbl DocHostContainerVtbl
static HRESULT WINAPI WebBrowser_get_Busy(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
static HRESULT WINAPI WebBrowser_Navigate(IWebBrowser2 *iface, BSTR szUrl, VARIANT *Flags, VARIANT *TargetFrameName, VARIANT *PostData, VARIANT *Headers)
static HRESULT WINAPI WebBrowser_Refresh2(IWebBrowser2 *iface, VARIANT *Level)
static HRESULT WINAPI WebBrowser_put_ToolBar(IWebBrowser2 *iface, int Value)
static HRESULT WINAPI WebBrowser_QueryStatusWB(IWebBrowser2 *iface, OLECMDID cmdID, OLECMDF *pcmdf)
static HRESULT WINAPI WebBrowser_get_AddressBar(IWebBrowser2 *iface, VARIANT_BOOL *Value)
static HRESULT WINAPI WebBrowser_put_Silent(IWebBrowser2 *iface, VARIANT_BOOL bSilent)
static HRESULT WINAPI WebBrowser_get_Application(IWebBrowser2 *iface, IDispatch **ppDisp)
static HRESULT WINAPI WebBrowser_ShowBrowserBar(IWebBrowser2 *iface, VARIANT *pvaClsid, VARIANT *pvarShow, VARIANT *pvarSize)
HRESULT WINAPI WebBrowser_Create(IClassFactory *iface, IUnknown *pOuter, REFIID riid, void **ppv)
static HRESULT WINAPI WebBrowser_Refresh(IWebBrowser2 *iface)
static HRESULT WINAPI WebBrowser_put_Top(IWebBrowser2 *iface, LONG Top)
static HRESULT WINAPI WebBrowser_put_Height(IWebBrowser2 *iface, LONG Height)
static HRESULT WINAPI WebBrowser_put_StatusBar(IWebBrowser2 *iface, VARIANT_BOOL Value)
static WebBrowser * impl_from_IWebBrowser2(IWebBrowser2 *iface)
static ULONG WebBrowser_addref(DocHost *iface)
static HRESULT WINAPI WebBrowser_put_TheaterMode(IWebBrowser2 *iface, VARIANT_BOOL bRegister)
static HRESULT WINAPI WebBrowser_GetProperty(IWebBrowser2 *iface, BSTR szProperty, VARIANT *pvtValue)
static HRESULT WINAPI WebBrowser_Invoke(IWebBrowser2 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExepInfo, UINT *puArgErr)
static HRESULT DocHostContainer_set_status_text(DocHost *This, const WCHAR *text)
static HRESULT WINAPI WebBrowser_put_Width(IWebBrowser2 *iface, LONG Width)
static HRESULT WINAPI WebBrowser_get_Resizable(IWebBrowser2 *iface, VARIANT_BOOL *Value)
static HRESULT WINAPI WBServiceProvider_QueryInterface(IServiceProvider *iface, REFIID riid, LPVOID *ppv)
static HRESULT WINAPI WebBrowser_ExecWB(IWebBrowser2 *iface, OLECMDID cmdID, OLECMDEXECOPT cmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
static HRESULT WINAPI WebBrowser_GetIDsOfNames(IWebBrowser2 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI WebBrowser_get_TheaterMode(IWebBrowser2 *iface, VARIANT_BOOL *pbRegister)
static ULONG WINAPI WebBrowser2_Release(IWebBrowser2 *iface)
static HRESULT WINAPI WebBrowser_GoSearch(IWebBrowser2 *iface)
static HRESULT WINAPI WebBrowser_get_FullScreen(IWebBrowser2 *iface, VARIANT_BOOL *pbFullScreen)
static HRESULT WINAPI WebBrowser_put_AddressBar(IWebBrowser2 *iface, VARIANT_BOOL Value)
static const IWebBrowser2Vtbl WebBrowser2Vtbl
static void DocHostContainer_get_docobj_rect(DocHost *This, RECT *rc)
static ULONG WINAPI WebBrowser_AddRef(IUnknown *iface)
static HRESULT WINAPI WebBrowser_QueryInterface(IUnknown *iface, REFIID riid, void **ppv)
static HRESULT WINAPI WebBrowser_get_LocationURL(IWebBrowser2 *iface, BSTR *LocationURL)
static ULONG WINAPI WBServiceProvider_AddRef(IServiceProvider *iface)
static HRESULT WINAPI WebBrowser_get_Name(IWebBrowser2 *iface, BSTR *Name)
static HRESULT WINAPI WebBrowser_GoBack(IWebBrowser2 *iface)
static HRESULT WINAPI WebBrowser_get_ReadyState(IWebBrowser2 *iface, READYSTATE *lpReadyState)
static HRESULT WINAPI WebBrowser_get_Left(IWebBrowser2 *iface, LONG *pl)
static HRESULT WINAPI WebBrowser_GoForward(IWebBrowser2 *iface)
static HRESULT WINAPI WebBrowser_get_HWND(IWebBrowser2 *iface, SHANDLE_PTR *pHWND)
static WebBrowser * impl_from_DocHost(DocHost *iface)
static HRESULT WINAPI WebBrowser_GetTypeInfoCount(IWebBrowser2 *iface, UINT *pctinfo)
static HRESULT WINAPI WebBrowser_put_RegisterAsDropTarget(IWebBrowser2 *iface, VARIANT_BOOL bRegister)
static HRESULT WINAPI WebBrowser_get_RegisterAsDropTarget(IWebBrowser2 *iface, VARIANT_BOOL *pbRegister)
static HRESULT WINAPI WebBrowser_put_RegisterAsBrowser(IWebBrowser2 *iface, VARIANT_BOOL bRegister)
static HRESULT WINAPI WebBrowser_put_Visible(IWebBrowser2 *iface, VARIANT_BOOL Value)
static HRESULT WINAPI WebBrowser_Stop(IWebBrowser2 *iface)
static HRESULT WINAPI WebBrowser_get_StatusText(IWebBrowser2 *iface, BSTR *StatusText)
static HRESULT WINAPI WebBrowser_put_Offline(IWebBrowser2 *iface, VARIANT_BOOL bOffline)
static HRESULT WINAPI WebBrowser_get_Container(IWebBrowser2 *iface, IDispatch **ppDisp)
static HRESULT WINAPI WebBrowser_get_FullName(IWebBrowser2 *iface, BSTR *FullName)
static WebBrowser * impl_from_IUnknown(IUnknown *iface)
static HRESULT WINAPI WebBrowser_get_Path(IWebBrowser2 *iface, BSTR *Path)
static ULONG WINAPI WebBrowser2_AddRef(IWebBrowser2 *iface)
static HRESULT WINAPI WebBrowser_get_MenuBar(IWebBrowser2 *iface, VARIANT_BOOL *Value)
static HRESULT WINAPI WebBrowser_put_Left(IWebBrowser2 *iface, LONG Left)
static HRESULT WINAPI WebBrowser_get_Offline(IWebBrowser2 *iface, VARIANT_BOOL *pbOffline)
static HRESULT WINAPI WebBrowser_put_MenuBar(IWebBrowser2 *iface, VARIANT_BOOL Value)
static HRESULT WINAPI WebBrowser_get_Top(IWebBrowser2 *iface, LONG *pl)
static ULONG WINAPI WBServiceProvider_Release(IServiceProvider *iface)
static HRESULT WINAPI WebBrowser_put_FullScreen(IWebBrowser2 *iface, VARIANT_BOOL bFullScreen)
static HRESULT WINAPI WebBrowser_Quit(IWebBrowser2 *iface)
static HRESULT WINAPI WebBrowser_get_Visible(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
static HRESULT WINAPI WebBrowser_GetTypeInfo(IWebBrowser2 *iface, UINT iTInfo, LCID lcid, LPTYPEINFO *ppTInfo)
static HRESULT WINAPI WebBrowser_Navigate2(IWebBrowser2 *iface, VARIANT *URL, VARIANT *Flags, VARIANT *TargetFrameName, VARIANT *PostData, VARIANT *Headers)
static HRESULT WINAPI WebBrowser_ClientToWindow(IWebBrowser2 *iface, int *pcx, int *pcy)
static const IServiceProviderVtbl ServiceProviderVtbl
static HRESULT WINAPI WebBrowser_get_Width(IWebBrowser2 *iface, LONG *pl)
static HRESULT WINAPI WebBrowser_get_StatusBar(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
static HRESULT WINAPI WebBrowser_get_Document(IWebBrowser2 *iface, IDispatch **ppDisp)
static ULONG WebBrowser_release(DocHost *iface)
static void DocHostContainer_on_command_state_change(DocHost *This, LONG command, BOOL enable)
static HRESULT WINAPI WebBrowser_get_ToolBar(IWebBrowser2 *iface, int *Value)
static HRESULT WINAPI WebBrowser_get_Parent(IWebBrowser2 *iface, IDispatch **ppDisp)
static void DocHostContainer_set_url(DocHost *This, const WCHAR *url)
static HRESULT WINAPI WebBrowser_put_Resizable(IWebBrowser2 *iface, VARIANT_BOOL Value)
static HRESULT WINAPI WebBrowser_get_LocationName(IWebBrowser2 *iface, BSTR *LocationName)
static WebBrowser * impl_from_IServiceProvider(IServiceProvider *iface)
static HRESULT WINAPI WebBrowser_put_StatusText(IWebBrowser2 *iface, BSTR StatusText)
static HRESULT WINAPI WebBrowser_GoHome(IWebBrowser2 *iface)
static HRESULT WINAPI WebBrowser2_QueryInterface(IWebBrowser2 *iface, REFIID riid, LPVOID *ppv)
static HRESULT WINAPI WebBrowser_get_TopLevelContainer(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
static HRESULT WINAPI WebBrowser_get_Type(IWebBrowser2 *iface, BSTR *Type)
static const struct IUnknownVtbl internal_unk_vtbl
void DocHost_Init(DocHost *This, IWebBrowser2 *wb, const IDocHostContainerVtbl *container)
HRESULT refresh_document(DocHost *This, const VARIANT *level)
void DocHost_Release(DocHost *This)
static const char * debugstr_variant(const VARIANT *var)
#define DISPID_ONSTATUSBAR
#define DISPID_ONADDRESSBAR
#define DISPID_WINDOWSETRESIZABLE
#define DISPID_ONFULLSCREEN
#define DISPID_ONTHEATERMODE
HRESULT get_location_url(DocHost *, BSTR *)
void HlinkFrame_Init(HlinkFrame *, IUnknown *, DocHost *)
static void lock_module(void)
void WebBrowser_OleObject_Destroy(WebBrowser *)
void WebBrowser_Persist_Init(WebBrowser *)
void WebBrowser_ViewObject_Init(WebBrowser *)
BOOL HlinkFrame_QI(HlinkFrame *, REFIID, void **)
static void unlock_module(void)
HRESULT go_forward(DocHost *)
void WebBrowser_OleObject_Init(WebBrowser *)
HRESULT go_home(DocHost *)
HRESULT go_back(DocHost *)
const IID IID_IObjectWithSite
static const WCHAR * navigate_url
#define create_webbrowser()
IHTMLDocument2 * html_doc
static VARIANTARG static DISPID
BSTR WINAPI SysAllocString(LPCOLESTR str)
UINT WINAPI SysStringLen(BSTR str)
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
const GUID IID_IOleInPlaceActiveObject
const GUID IID_IOleInPlaceSite
const GUID IID_IViewObject
const GUID IID_IConnectionPointContainer
const GUID IID_IProvideClassInfo
const GUID IID_IOleWindow
const GUID IID_IViewObject2
const GUID IID_IRunnableObject
const GUID IID_IProvideClassInfo2
const GUID IID_IDataObject
const GUID IID_IOleInPlaceObject
const GUID IID_IPersistStorage
const GUID IID_IPersistMemory
const GUID IID_IOleObject
const GUID IID_IOleControl
const GUID IID_IPerPropertyBrowsing
const GUID IID_IPersistStreamInit
#define IsEqualGUID(rguid1, rguid2)
#define IsEqualIID(riid1, riid2)
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
#define CONTAINING_RECORD(address, type, field)
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
WINBASEAPI _In_ DWORD _Out_ _In_ WORD wFlags
#define CLASS_E_NOAGGREGATION