static HRESULT WINAPI WebBrowser_Navigate2(IWebBrowser2 *iface, VARIANT *URL, VARIANT *Flags, VARIANT *TargetFrameName, VARIANT *PostData, VARIANT *Headers) { WebBrowser *This = WEBBROWSER_THIS(iface); LPCWSTR url; TRACE("(%p)->(%s %s %s %s %s)\n", This, debugstr_variant(URL), debugstr_variant(Flags), debugstr_variant(TargetFrameName), debugstr_variant(PostData), debugstr_variant(Headers)); if(!This->client) return E_FAIL; if(!URL) return S_OK; switch (V_VT(URL)) { case VT_BSTR: url = V_BSTR(URL); break; case VT_BSTR|VT_BYREF: url = *V_BSTRREF(URL); break; default: FIXME("Unsupported V_VT(URL) %d\n", V_VT(URL)); return E_INVALIDARG; } return navigate_url(&This->doc_host, url, Flags, TargetFrameName, PostData, Headers); }
static HRESULT WINAPI WebBrowser_get_RegisterAsDropTarget(IWebBrowser2 *iface, VARIANT_BOOL *pbRegister) { WebBrowser *This = WEBBROWSER_THIS(iface); FIXME("(%p)->(%p)\n", This, pbRegister); return E_NOTIMPL; }
static ULONG WINAPI WebBrowser_AddRef(IWebBrowser2 *iface) { WebBrowser *This = WEBBROWSER_THIS(iface); LONG ref = InterlockedIncrement(&This->ref); TRACE("(%p) ref=%d\n", This, ref); return ref; }
static HRESULT WINAPI WebBrowser_put_RegisterAsBrowser(IWebBrowser2 *iface, VARIANT_BOOL bRegister) { WebBrowser *This = WEBBROWSER_THIS(iface); FIXME("(%p)->(%x)\n", This, bRegister); return E_NOTIMPL; }
static HRESULT WINAPI WebBrowser_ShowBrowserBar(IWebBrowser2 *iface, VARIANT *pvaClsid, VARIANT *pvarShow, VARIANT *pvarSize) { WebBrowser *This = WEBBROWSER_THIS(iface); FIXME("(%p)->(%p %p %p)\n", This, pvaClsid, pvarShow, pvarSize); return E_NOTIMPL; }
static HRESULT WINAPI WebBrowser_ExecWB(IWebBrowser2 *iface, OLECMDID cmdID, OLECMDEXECOPT cmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut) { WebBrowser *This = WEBBROWSER_THIS(iface); FIXME("(%p)->(%d %d %s %p)\n", This, cmdID, cmdexecopt, debugstr_variant(pvaIn), pvaOut); return E_NOTIMPL; }
static HRESULT WINAPI WebBrowser_put_RegisterAsDropTarget(IWebBrowser2 *iface, VARIANT_BOOL bRegister) { WebBrowser *This = WEBBROWSER_THIS(iface); FIXME("(%p)->(%x)\n", This, bRegister); return S_OK; }
static HRESULT WINAPI WebBrowser_GetTypeInfo(IWebBrowser2 *iface, UINT iTInfo, LCID lcid, LPTYPEINFO *ppTInfo) { WebBrowser *This = WEBBROWSER_THIS(iface); FIXME("(%p)->(%d %ld %p)\n", This, iTInfo, lcid, ppTInfo); return E_NOTIMPL; }
static HRESULT WINAPI WebBrowser_ShowBrowserBar(IWebBrowser2 *iface, VARIANT *pvaClsid, VARIANT *pvarShow, VARIANT *pvarSize) { WebBrowser *This = WEBBROWSER_THIS(iface); FIXME("(%p)->(%s %s %s)\n", This, debugstr_variant(pvaClsid), debugstr_variant(pvarShow), debugstr_variant(pvarSize)); return E_NOTIMPL; }
static HRESULT WINAPI WebBrowser_get_Height(IWebBrowser2 *iface, LONG *pl) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, pl); *pl = This->pos_rect.bottom - This->pos_rect.top; return S_OK; }
/* IDispatch methods */ static HRESULT WINAPI WebBrowser_GetTypeInfoCount(IWebBrowser2 *iface, UINT *pctinfo) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, pctinfo); *pctinfo = 1; return S_OK; }
static HRESULT WINAPI WebBrowser_get_Top(IWebBrowser2 *iface, long *pl) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, pl); *pl = This->pos_rect.top; return S_OK; }
static HRESULT WINAPI WebBrowser_get_ToolBar(IWebBrowser2 *iface, int *Value) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, Value); *Value = This->tool_bar; return S_OK; }
static HRESULT WINAPI WebBrowser_GetIDsOfNames(IWebBrowser2 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId) { WebBrowser *This = WEBBROWSER_THIS(iface); FIXME("(%p)->(%s %p %d %ld %p)\n", This, debugstr_guid(riid), rgszNames, cNames, lcid, rgDispId); return E_NOTIMPL; }
static HRESULT WINAPI WebBrowser_get_StatusBar(IWebBrowser2 *iface, VARIANT_BOOL *pBool) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, pBool); *pBool = This->status_bar; return S_OK; }
static HRESULT WINAPI WebBrowser_get_Width(IWebBrowser2 *iface, LONG *pl) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, pl); *pl = This->pos_rect.right - This->pos_rect.left; return S_OK; }
static HRESULT WINAPI WebBrowser_put_Silent(IWebBrowser2 *iface, VARIANT_BOOL bSilent) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%x)\n", This, bSilent); This->doc_host.silent = bSilent ? VARIANT_TRUE : VARIANT_FALSE; return S_OK; }
static HRESULT WINAPI WebBrowser_put_Offline(IWebBrowser2 *iface, VARIANT_BOOL bOffline) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%x)\n", This, bOffline); This->doc_host.offline = bOffline ? VARIANT_TRUE : VARIANT_FALSE; return S_OK; }
static HRESULT WINAPI WebBrowser_get_ReadyState(IWebBrowser2 *iface, READYSTATE *lpReadyState) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, lpReadyState); *lpReadyState = This->doc_host.ready_state; return S_OK; }
static HRESULT WINAPI WebBrowser_get_Offline(IWebBrowser2 *iface, VARIANT_BOOL *pbOffline) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, pbOffline); *pbOffline = This->doc_host.offline; return S_OK; }
static HRESULT WINAPI WebBrowser_get_Busy(IWebBrowser2 *iface, VARIANT_BOOL *pBool) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, pBool); *pBool = This->doc_host.busy; return S_OK; }
static HRESULT WINAPI WebBrowser_get_Silent(IWebBrowser2 *iface, VARIANT_BOOL *pbSilent) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, pbSilent); *pbSilent = This->doc_host.silent; return S_OK; }
static HRESULT WINAPI WebBrowser_Quit(IWebBrowser2 *iface) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)\n", This); /* It's a InternetExplorer specific method, we have nothing to do here. */ return E_FAIL; }
static HRESULT WINAPI WebBrowser_get_Resizable(IWebBrowser2 *iface, VARIANT_BOOL *Value) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, Value); /* It's InternetExplorer object's method. We have nothing to do here. */ return E_NOTIMPL; }
static HRESULT WINAPI WebBrowser_get_FullScreen(IWebBrowser2 *iface, VARIANT_BOOL *pbFullScreen) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, pbFullScreen); *pbFullScreen = This->full_screen; return S_OK; }
static HRESULT WINAPI WebBrowser_get_AddressBar(IWebBrowser2 *iface, VARIANT_BOOL *Value) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, Value); *Value = This->address_bar; return S_OK; }
static HRESULT WINAPI WebBrowser_get_TheaterMode(IWebBrowser2 *iface, VARIANT_BOOL *pbRegister) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, pbRegister); *pbRegister = This->theater_mode; return S_OK; }
static HRESULT WINAPI WebBrowser_get_HWND(IWebBrowser2 *iface, LONG *pHWND) { WebBrowser *This = WEBBROWSER_THIS(iface); TRACE("(%p)->(%p)\n", This, pHWND); /* WebBrowser control never has a frame window (in opposition to InternetExplorer) */ *pHWND = 0; return E_FAIL; }
static HRESULT WINAPI WebBrowser_put_RegisterAsBrowser(IWebBrowser2 *iface, VARIANT_BOOL bRegister) { WebBrowser *This = WEBBROWSER_THIS(iface); FIXME("(%p)->(%x)\n", This, bRegister); This->register_browser = bRegister ? VARIANT_TRUE : VARIANT_FALSE; return S_OK; }
static HRESULT WINAPI WebBrowser_get_RegisterAsBrowser(IWebBrowser2 *iface, VARIANT_BOOL *pbRegister) { WebBrowser *This = WEBBROWSER_THIS(iface); FIXME("(%p)->(%p)\n", This, pbRegister); *pbRegister = This->register_browser; return S_OK; }