mshtml: Added HTMLAnchorElement dispex data.
This commit is contained in:
parent
a70bbf8285
commit
df90f665bb
@ -79,6 +79,7 @@ static REFIID tid_ids[] = {
|
|||||||
&IID_NULL,
|
&IID_NULL,
|
||||||
&DIID_DispCEventObj,
|
&DIID_DispCEventObj,
|
||||||
&DIID_DispDOMChildrenCollection,
|
&DIID_DispDOMChildrenCollection,
|
||||||
|
&DIID_DispHTMLAnchorElement,
|
||||||
&DIID_DispHTMLBody,
|
&DIID_DispHTMLBody,
|
||||||
&DIID_DispHTMLCommentElement,
|
&DIID_DispHTMLCommentElement,
|
||||||
&DIID_DispHTMLCurrentStyle,
|
&DIID_DispHTMLCurrentStyle,
|
||||||
@ -98,6 +99,7 @@ static REFIID tid_ids[] = {
|
|||||||
&DIID_DispHTMLTableRow,
|
&DIID_DispHTMLTableRow,
|
||||||
&DIID_DispHTMLUnknownElement,
|
&DIID_DispHTMLUnknownElement,
|
||||||
&DIID_DispHTMLWindow2,
|
&DIID_DispHTMLWindow2,
|
||||||
|
&IID_IHTMLAnchorElement,
|
||||||
&IID_IHTMLBodyElement,
|
&IID_IHTMLBodyElement,
|
||||||
&IID_IHTMLBodyElement2,
|
&IID_IHTMLBodyElement2,
|
||||||
&IID_IHTMLCommentElement,
|
&IID_IHTMLCommentElement,
|
||||||
|
@ -474,14 +474,34 @@ static const NodeImplVtbl HTMLAnchorElementImplVtbl = {
|
|||||||
HTMLAnchorElement_destructor
|
HTMLAnchorElement_destructor
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static const tid_t HTMLAnchorElement_iface_tids[] = {
|
||||||
|
IHTMLAnchorElement_tid,
|
||||||
|
IHTMLDOMNode_tid,
|
||||||
|
IHTMLDOMNode2_tid,
|
||||||
|
IHTMLElement_tid,
|
||||||
|
IHTMLElement2_tid,
|
||||||
|
IHTMLElement3_tid,
|
||||||
|
IHTMLElement4_tid,
|
||||||
|
IHTMLTextContainer_tid,
|
||||||
|
IHTMLUniqueName_tid,
|
||||||
|
0
|
||||||
|
};
|
||||||
|
|
||||||
|
static dispex_static_data_t HTMLAnchorElement_dispex = {
|
||||||
|
NULL,
|
||||||
|
DispHTMLAnchorElement_tid,
|
||||||
|
NULL,
|
||||||
|
HTMLAnchorElement_iface_tids
|
||||||
|
};
|
||||||
|
|
||||||
HTMLElement *HTMLAnchorElement_Create(nsIDOMHTMLElement *nselem)
|
HTMLElement *HTMLAnchorElement_Create(nsIDOMHTMLElement *nselem)
|
||||||
{
|
{
|
||||||
HTMLAnchorElement *ret = heap_alloc_zero(sizeof(HTMLAnchorElement));
|
HTMLAnchorElement *ret = heap_alloc_zero(sizeof(HTMLAnchorElement));
|
||||||
|
|
||||||
HTMLElement_Init(&ret->element, NULL);
|
|
||||||
|
|
||||||
ret->lpHTMLAnchorElementVtbl = &HTMLAnchorElementVtbl;
|
ret->lpHTMLAnchorElementVtbl = &HTMLAnchorElementVtbl;
|
||||||
ret->element.node.vtbl = &HTMLAnchorElementImplVtbl;
|
ret->element.node.vtbl = &HTMLAnchorElementImplVtbl;
|
||||||
|
|
||||||
|
HTMLElement_Init(&ret->element, &HTMLAnchorElement_dispex);
|
||||||
|
|
||||||
return &ret->element;
|
return &ret->element;
|
||||||
}
|
}
|
||||||
|
@ -59,6 +59,7 @@ typedef enum {
|
|||||||
NULL_tid,
|
NULL_tid,
|
||||||
DispCEventObj_tid,
|
DispCEventObj_tid,
|
||||||
DispDOMChildrenCollection_tid,
|
DispDOMChildrenCollection_tid,
|
||||||
|
DispHTMLAnchorElement_tid,
|
||||||
DispHTMLBody_tid,
|
DispHTMLBody_tid,
|
||||||
DispHTMLCommentElement_tid,
|
DispHTMLCommentElement_tid,
|
||||||
DispHTMLCurrentStyle_tid,
|
DispHTMLCurrentStyle_tid,
|
||||||
@ -78,6 +79,7 @@ typedef enum {
|
|||||||
DispHTMLTableRow_tid,
|
DispHTMLTableRow_tid,
|
||||||
DispHTMLUnknownElement_tid,
|
DispHTMLUnknownElement_tid,
|
||||||
DispHTMLWindow2_tid,
|
DispHTMLWindow2_tid,
|
||||||
|
IHTMLAnchorElement_tid,
|
||||||
IHTMLBodyElement_tid,
|
IHTMLBodyElement_tid,
|
||||||
IHTMLBodyElement2_tid,
|
IHTMLBodyElement2_tid,
|
||||||
IHTMLCommentElement_tid,
|
IHTMLCommentElement_tid,
|
||||||
|
@ -353,7 +353,7 @@ static const elem_type_info_t elem_type_infos[] = {
|
|||||||
{"HEAD", elem_iids, NULL},
|
{"HEAD", elem_iids, NULL},
|
||||||
{"TITLE", elem_iids, NULL},
|
{"TITLE", elem_iids, NULL},
|
||||||
{"BODY", body_iids, &DIID_DispHTMLBody},
|
{"BODY", body_iids, &DIID_DispHTMLBody},
|
||||||
{"A", anchor_iids, NULL},
|
{"A", anchor_iids, &DIID_DispHTMLAnchorElement},
|
||||||
{"INPUT", input_iids, &DIID_DispHTMLInputElement},
|
{"INPUT", input_iids, &DIID_DispHTMLInputElement},
|
||||||
{"SELECT", select_iids, &DIID_DispHTMLSelectElement},
|
{"SELECT", select_iids, &DIID_DispHTMLSelectElement},
|
||||||
{"TEXTAREA", textarea_iids, NULL},
|
{"TEXTAREA", textarea_iids, NULL},
|
||||||
@ -527,7 +527,8 @@ static void _test_disp(unsigned line, IUnknown *unk, const IID *diid, const char
|
|||||||
if(_test_get_dispid(line, unk, &iid))
|
if(_test_get_dispid(line, unk, &iid))
|
||||||
ok_(__FILE__,line) (IsEqualGUID(&iid, diid), "unexpected guid %s\n", dbgstr_guid(&iid));
|
ok_(__FILE__,line) (IsEqualGUID(&iid, diid), "unexpected guid %s\n", dbgstr_guid(&iid));
|
||||||
|
|
||||||
_test_disp_value(line, unk, val);
|
if(val)
|
||||||
|
_test_disp_value(line, unk, val);
|
||||||
}
|
}
|
||||||
|
|
||||||
#define test_disp2(u,id,id2,v) _test_disp2(__LINE__,u,id,id2,v)
|
#define test_disp2(u,id,id2,v) _test_disp2(__LINE__,u,id,id2,v)
|
||||||
@ -539,7 +540,8 @@ static void _test_disp2(unsigned line, IUnknown *unk, const IID *diid, const IID
|
|||||||
ok_(__FILE__,line) (IsEqualGUID(&iid, diid) || broken(IsEqualGUID(&iid, diid2)),
|
ok_(__FILE__,line) (IsEqualGUID(&iid, diid) || broken(IsEqualGUID(&iid, diid2)),
|
||||||
"unexpected guid %s\n", dbgstr_guid(&iid));
|
"unexpected guid %s\n", dbgstr_guid(&iid));
|
||||||
|
|
||||||
_test_disp_value(line, unk, val);
|
if(val)
|
||||||
|
_test_disp_value(line, unk, val);
|
||||||
}
|
}
|
||||||
|
|
||||||
#define get_elem_iface(u) _get_elem_iface(__LINE__,u)
|
#define get_elem_iface(u) _get_elem_iface(__LINE__,u)
|
||||||
@ -664,7 +666,7 @@ static void _test_elem_type(unsigned line, IUnknown *unk, elem_type_t type)
|
|||||||
_test_elem_tag(line, unk, elem_type_infos[type].tag);
|
_test_elem_tag(line, unk, elem_type_infos[type].tag);
|
||||||
_test_ifaces(line, unk, elem_type_infos[type].iids);
|
_test_ifaces(line, unk, elem_type_infos[type].iids);
|
||||||
|
|
||||||
if(elem_type_infos[type].dispiid)
|
if(elem_type_infos[type].dispiid && type != ET_A)
|
||||||
_test_disp(line, unk, elem_type_infos[type].dispiid, "[object]");
|
_test_disp(line, unk, elem_type_infos[type].dispiid, "[object]");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user