51 static const WCHAR _parentW[] = {
'_',
'p',
'a',
'r',
'e',
'n',
't',0};
52 static const WCHAR _selfW[] = {
'_',
's',
'e',
'l',
'f',0};
53 static const WCHAR _topW[] = {
'_',
't',
'o',
'p',0};
55 *use_new_window =
FALSE;
61 IHTMLWindow2_AddRef(&
window->base.IHTMLWindow2_iface);
73 WARN(
"Window has no parent, treat as self\n");
74 IHTMLWindow2_AddRef(&
window->base.IHTMLWindow2_iface);
78 IHTMLWindow2_AddRef(&
window->parent->base.IHTMLWindow2_iface);
86 *use_new_window =
TRUE;
116 TRACE(
"empty href\n");
119 IHTMLWindow2_Release(&
window->base.IHTMLWindow2_iface);
133 nsres = nsIDOMEvent_QueryInterface(
event, &IID_nsIDOMMouseEvent, (
void**)&
mouse_event);
143 *prevent_default =
TRUE;
147 *prevent_default =
TRUE;
151 *prevent_default =
FALSE;
170 return IHTMLDOMNode_QueryInterface(&
This->element.node.IHTMLDOMNode_iface,
riid,
ppv);
177 return IHTMLDOMNode_AddRef(&
This->element.node.IHTMLDOMNode_iface);
184 return IHTMLDOMNode_Release(&
This->element.node.IHTMLDOMNode_iface);
190 return IDispatchEx_GetTypeInfoCount(&
This->element.node.event_target.dispex.IDispatchEx_iface, pctinfo);
197 return IDispatchEx_GetTypeInfo(&
This->element.node.event_target.dispex.IDispatchEx_iface, iTInfo, lcid,
206 return IDispatchEx_GetIDsOfNames(&
This->element.node.event_target.dispex.IDispatchEx_iface,
riid, rgszNames,
207 cNames, lcid, rgDispId);
212 VARIANT *pVarResult, EXCEPINFO *pExcepInfo,
UINT *puArgErr)
215 return IDispatchEx_Invoke(&
This->element.node.event_target.dispex.IDispatchEx_iface, dispIdMember,
riid,
216 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
228 nsres = nsIDOMHTMLAnchorElement_SetHref(
This->nsanchor, &nsstr);
246 nsres = nsIDOMHTMLAnchorElement_GetHref(
This->nsanchor, &href_str);
253 ERR(
"GetHref failed: %08x\n", nsres);
270 nsres = nsIDOMHTMLAnchorElement_SetTarget(
This->nsanchor, &nsstr);
287 nsres = nsIDOMHTMLAnchorElement_GetTarget(
This->nsanchor, &target_str);
301 nsres = nsIDOMHTMLAnchorElement_SetRel(
This->nsanchor, &nsstr);
318 nsres = nsIDOMHTMLAnchorElement_GetRel(
This->nsanchor, &nsstr);
373 nsres = nsIDOMHTMLAnchorElement_SetName(
This->nsanchor, &nsstr);
390 nsres = nsIDOMHTMLAnchorElement_GetName(
This->nsanchor, &name_str);
425 nsres = nsIDOMHTMLAnchorElement_GetHostname(
This->nsanchor, &hostname_str);
480 nsres = nsIDOMHTMLAnchorElement_SetSearch(
This->nsanchor, &nsstr);
497 nsres = nsIDOMHTMLAnchorElement_GetSearch(
This->nsanchor, &search_str);
517 nsres = nsIDOMHTMLAnchorElement_GetHash(
This->nsanchor, &hash_str);
527 return IHTMLElement2_put_onblur(&
This->element.IHTMLElement2_iface,
v);
536 return IHTMLElement2_get_onblur(&
This->element.IHTMLElement2_iface,
p);
545 return IHTMLElement2_put_onfocus(&
This->element.IHTMLElement2_iface,
v);
554 return IHTMLElement2_get_onfocus(&
This->element.IHTMLElement2_iface,
p);
563 return IHTMLElement2_put_accessKey(&
This->element.IHTMLElement2_iface,
v);
572 return IHTMLElement2_get_accessKey(&
This->element.IHTMLElement2_iface,
p);
602 return IHTMLElement2_put_tabIndex(&
This->element.IHTMLElement2_iface,
v);
611 return IHTMLElement2_get_tabIndex(&
This->element.IHTMLElement2_iface,
p);
620 return IHTMLElement2_focus(&
This->element.IHTMLElement2_iface);
629 return IHTMLElement2_blur(&
This->element.IHTMLElement2_iface);
696 *
ppv = &
This->IHTMLAnchorElement_iface;
699 *
ppv = &
This->IHTMLAnchorElement_iface;
701 TRACE(
"(%p)->(IID_IHTMLAnchorElement %p)\n",
This,
ppv);
702 *
ppv = &
This->IHTMLAnchorElement_iface;
721 nsres = nsIDOMHTMLAnchorElement_GetHref(
This->nsanchor, &href_str);
723 ERR(
"Could not get anchor href: %08x\n", nsres);
728 nsres = nsIDOMHTMLAnchorElement_GetTarget(
This->nsanchor, &target_str);
730 ERR(
"Could not get anchor target: %08x\n", nsres);
760 nsIDOMHTMLAnchorElement_Release(nsanchor);
785 IHTMLAnchorElement_tid,
793 DispHTMLAnchorElement_tid,
812 nsres = nsIDOMHTMLElement_QueryInterface(nselem, &IID_nsIDOMHTMLAnchorElement, (
void**)&
ret->nsanchor);
#define BINDING_NAVIGATED
HRESULT create_relative_uri(HTMLOuterWindow *, const WCHAR *, IUri **) DECLSPEC_HIDDEN
HRESULT navigate_new_window(HTMLOuterWindow *, IUri *, const WCHAR *, request_data_t *, IHTMLWindow2 **) DECLSPEC_HIDDEN
static HRESULT navigate_url(HHInfo *info, LPCWSTR surl)
static const tid_t HTMLAnchorElement_iface_tids[]
static HRESULT WINAPI HTMLAnchorElement_get_tabIndex(IHTMLAnchorElement *iface, short *p)
static HRESULT HTMLAnchorElement_handle_event(HTMLDOMNode *iface, DWORD eid, nsIDOMEvent *event, BOOL *prevent_default)
static HRESULT WINAPI HTMLAnchorElement_get_port(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_Invoke(IHTMLAnchorElement *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static HRESULT WINAPI HTMLAnchorElement_get_onfocus(IHTMLAnchorElement *iface, VARIANT *p)
static HRESULT WINAPI HTMLAnchorElement_GetTypeInfo(IHTMLAnchorElement *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static const IHTMLAnchorElementVtbl HTMLAnchorElementVtbl
HRESULT handle_link_click_event(HTMLElement *element, nsAString *href_str, nsAString *target_str, nsIDOMEvent *event, BOOL *prevent_default)
static HTMLAnchorElement * impl_from_IHTMLAnchorElement(IHTMLAnchorElement *iface)
static HTMLAnchorElement * impl_from_HTMLDOMNode(HTMLDOMNode *iface)
static HRESULT WINAPI HTMLAnchorElement_put_hash(IHTMLAnchorElement *iface, BSTR v)
static HRESULT WINAPI HTMLAnchorElement_put_port(IHTMLAnchorElement *iface, BSTR v)
static HRESULT WINAPI HTMLAnchorElement_put_name(IHTMLAnchorElement *iface, BSTR v)
static HRESULT WINAPI HTMLAnchorElement_get_protocolLong(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_put_pathname(IHTMLAnchorElement *iface, BSTR v)
static HRESULT WINAPI HTMLAnchorElement_get_accessKey(IHTMLAnchorElement *iface, BSTR *p)
static dispex_static_data_t HTMLAnchorElement_dispex
static void HTMLAnchorElement_traverse(HTMLDOMNode *iface, nsCycleCollectionTraversalCallback *cb)
static HRESULT WINAPI HTMLAnchorElement_get_href(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT navigate_href(HTMLElement *element, nsAString *href_str, nsAString *target_str)
static HRESULT WINAPI HTMLAnchorElement_put_rel(IHTMLAnchorElement *iface, BSTR v)
static HRESULT WINAPI HTMLAnchorElement_get_onblur(IHTMLAnchorElement *iface, VARIANT *p)
static HRESULT WINAPI HTMLAnchorElement_put_search(IHTMLAnchorElement *iface, BSTR v)
static HRESULT navigate_href_new_window(HTMLElement *element, nsAString *href_str, const WCHAR *target)
static HRESULT WINAPI HTMLAnchorElement_put_tabIndex(IHTMLAnchorElement *iface, short v)
static HRESULT WINAPI HTMLAnchorElement_get_search(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_get_name(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_put_href(IHTMLAnchorElement *iface, BSTR v)
static HRESULT WINAPI HTMLAnchorElement_GetIDsOfNames(IHTMLAnchorElement *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI HTMLAnchorElement_get_mimeType(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_get_pathname(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_get_host(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_put_onfocus(IHTMLAnchorElement *iface, VARIANT v)
static HRESULT WINAPI HTMLAnchorElement_get_rel(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_GetTypeInfoCount(IHTMLAnchorElement *iface, UINT *pctinfo)
HRESULT HTMLAnchorElement_Create(HTMLDocumentNode *doc, nsIDOMHTMLElement *nselem, HTMLElement **elem)
static HRESULT WINAPI HTMLAnchorElement_get_hostname(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_get_rev(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_blur(IHTMLAnchorElement *iface)
static HRESULT WINAPI HTMLAnchorElement_put_target(IHTMLAnchorElement *iface, BSTR v)
static ULONG WINAPI HTMLAnchorElement_AddRef(IHTMLAnchorElement *iface)
static HRESULT WINAPI HTMLAnchorElement_get_hash(IHTMLAnchorElement *iface, BSTR *p)
HTMLOuterWindow * get_target_window(HTMLOuterWindow *window, nsAString *target_str, BOOL *use_new_window)
static HRESULT WINAPI HTMLAnchorElement_put_Methods(IHTMLAnchorElement *iface, BSTR v)
static void HTMLAnchorElement_unlink(HTMLDOMNode *iface)
static HRESULT WINAPI HTMLAnchorElement_get_target(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_get_Methods(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_QueryInterface(IHTMLAnchorElement *iface, REFIID riid, void **ppv)
static HRESULT WINAPI HTMLAnchorElement_put_onblur(IHTMLAnchorElement *iface, VARIANT v)
static HRESULT WINAPI HTMLAnchorElement_get_nameProp(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_put_host(IHTMLAnchorElement *iface, BSTR v)
static HRESULT WINAPI HTMLAnchorElement_get_urn(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_get_protocol(IHTMLAnchorElement *iface, BSTR *p)
static HRESULT WINAPI HTMLAnchorElement_focus(IHTMLAnchorElement *iface)
static HRESULT WINAPI HTMLAnchorElement_put_hostname(IHTMLAnchorElement *iface, BSTR v)
static HRESULT HTMLAnchorElement_QI(HTMLDOMNode *iface, REFIID riid, void **ppv)
static HRESULT WINAPI HTMLAnchorElement_put_accessKey(IHTMLAnchorElement *iface, BSTR v)
static HRESULT WINAPI HTMLAnchorElement_put_urn(IHTMLAnchorElement *iface, BSTR v)
static const NodeImplVtbl HTMLAnchorElementImplVtbl
static ULONG WINAPI HTMLAnchorElement_Release(IHTMLAnchorElement *iface)
static HRESULT WINAPI HTMLAnchorElement_put_rev(IHTMLAnchorElement *iface, BSTR v)
static HRESULT WINAPI HTMLAnchorElement_put_protocol(IHTMLAnchorElement *iface, BSTR v)
HRESULT HTMLElement_clone(HTMLDOMNode *iface, nsIDOMNode *nsnode, HTMLDOMNode **ret)
void HTMLElement_destructor(HTMLDOMNode *iface)
HRESULT HTMLElement_handle_event(HTMLDOMNode *iface, DWORD eid, nsIDOMEvent *event, BOOL *prevent_default)
const cpc_entry_t HTMLElement_cpc[]
void HTMLElement_Init(HTMLElement *This, HTMLDocumentNode *doc, nsIDOMHTMLElement *nselem, dispex_static_data_t *dispex_data)
HRESULT HTMLElement_get_attr_col(HTMLDOMNode *iface, HTMLAttributeCollection **ac)
HRESULT HTMLElement_QI(HTMLDOMNode *iface, REFIID riid, void **ppv)
HRESULT get_frame_by_name(HTMLOuterWindow *This, const WCHAR *name, BOOL deep, HTMLOuterWindow **ret)
void get_top_window(HTMLOuterWindow *window, HTMLOuterWindow **ret)
static HMODULE MODULEINFO DWORD cb
static IHTMLWindow2 * window
static VARIANTARG static DISPID
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
UINT32 nsAString_GetData(const nsAString *, const PRUnichar **) DECLSPEC_HIDDEN
void nsAString_InitDepend(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
HRESULT nsuri_to_url(LPCWSTR, BOOL, BSTR *) DECLSPEC_HIDDEN
BOOL nsAString_Init(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
struct nsCycleCollectionTraversalCallback nsCycleCollectionTraversalCallback
#define NS_SUCCEEDED(res)
HRESULT return_nsstr(nsresult, nsAString *, BSTR *) DECLSPEC_HIDDEN
#define IsEqualGUID(rguid1, rguid2)
nsIDOMHTMLAnchorElement * nsanchor
IHTMLAnchorElement IHTMLAnchorElement_iface
IHTMLWindow2 IHTMLWindow2_iface
#define CONTAINING_RECORD(address, type, field)
_In_ DWORD _Out_ _In_ WORD wFlags
void WINAPI mouse_event(_In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ ULONG_PTR)