mshtml: Added textarea element IDispatchEx support.

This commit is contained in:
Jacek Caban 2010-01-28 23:53:55 +01:00 committed by Alexandre Julliard
parent fe3e19c8a4
commit 398161dcee
4 changed files with 19 additions and 2 deletions

View File

@ -105,6 +105,7 @@ static REFIID tid_ids[] = {
&DIID_DispHTMLStyle, &DIID_DispHTMLStyle,
&DIID_DispHTMLTable, &DIID_DispHTMLTable,
&DIID_DispHTMLTableRow, &DIID_DispHTMLTableRow,
&DIID_DispHTMLTextAreaElement,
&DIID_DispHTMLUnknownElement, &DIID_DispHTMLUnknownElement,
&DIID_DispHTMLWindow2, &DIID_DispHTMLWindow2,
&DIID_HTMLDocumentEvents, &DIID_HTMLDocumentEvents,
@ -151,6 +152,7 @@ static REFIID tid_ids[] = {
&IID_IHTMLStyle4, &IID_IHTMLStyle4,
&IID_IHTMLTable, &IID_IHTMLTable,
&IID_IHTMLTableRow, &IID_IHTMLTableRow,
&IID_IHTMLTextAreaElement,
&IID_IHTMLTextContainer, &IID_IHTMLTextContainer,
&IID_IHTMLUniqueName, &IID_IHTMLUniqueName,
&IID_IHTMLWindow2, &IID_IHTMLWindow2,

View File

@ -411,6 +411,19 @@ static const NodeImplVtbl HTMLTextAreaElementImplVtbl = {
HTMLTextAreaElementImpl_get_disabled HTMLTextAreaElementImpl_get_disabled
}; };
static const tid_t HTMLTextAreaElement_iface_tids[] = {
HTMLELEMENT_TIDS,
IHTMLTextAreaElement_tid,
0
};
static dispex_static_data_t HTMLTextAreaElement_dispex = {
NULL,
DispHTMLTextAreaElement_tid,
NULL,
HTMLTextAreaElement_iface_tids
};
HTMLElement *HTMLTextAreaElement_Create(HTMLDocumentNode *doc, nsIDOMHTMLElement *nselem) HTMLElement *HTMLTextAreaElement_Create(HTMLDocumentNode *doc, nsIDOMHTMLElement *nselem)
{ {
HTMLTextAreaElement *ret = heap_alloc_zero(sizeof(HTMLTextAreaElement)); HTMLTextAreaElement *ret = heap_alloc_zero(sizeof(HTMLTextAreaElement));
@ -419,7 +432,7 @@ HTMLElement *HTMLTextAreaElement_Create(HTMLDocumentNode *doc, nsIDOMHTMLElement
ret->lpHTMLTextAreaElementVtbl = &HTMLTextAreaElementVtbl; ret->lpHTMLTextAreaElementVtbl = &HTMLTextAreaElementVtbl;
ret->element.node.vtbl = &HTMLTextAreaElementImplVtbl; ret->element.node.vtbl = &HTMLTextAreaElementImplVtbl;
HTMLElement_Init(&ret->element, doc, nselem, NULL); HTMLElement_Init(&ret->element, doc, nselem, &HTMLTextAreaElement_dispex);
nsres = nsIDOMHTMLElement_QueryInterface(nselem, &IID_nsIDOMHTMLTextAreaElement, nsres = nsIDOMHTMLElement_QueryInterface(nselem, &IID_nsIDOMHTMLTextAreaElement,
(void**)&ret->nstextarea); (void**)&ret->nstextarea);

View File

@ -81,6 +81,7 @@ typedef enum {
DispHTMLStyle_tid, DispHTMLStyle_tid,
DispHTMLTable_tid, DispHTMLTable_tid,
DispHTMLTableRow_tid, DispHTMLTableRow_tid,
DispHTMLTextAreaElement_tid,
DispHTMLUnknownElement_tid, DispHTMLUnknownElement_tid,
DispHTMLWindow2_tid, DispHTMLWindow2_tid,
HTMLDocumentEvents_tid, HTMLDocumentEvents_tid,
@ -127,6 +128,7 @@ typedef enum {
IHTMLStyle4_tid, IHTMLStyle4_tid,
IHTMLTable_tid, IHTMLTable_tid,
IHTMLTableRow_tid, IHTMLTableRow_tid,
IHTMLTextAreaElement_tid,
IHTMLTextContainer_tid, IHTMLTextContainer_tid,
IHTMLUniqueName_tid, IHTMLUniqueName_tid,
IHTMLWindow2_tid, IHTMLWindow2_tid,

View File

@ -404,7 +404,7 @@ static const elem_type_info_t elem_type_infos[] = {
{"A", anchor_iids, &DIID_DispHTMLAnchorElement}, {"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, &DIID_DispHTMLTextAreaElement},
{"OPTION", option_iids, &DIID_DispHTMLOptionElement}, {"OPTION", option_iids, &DIID_DispHTMLOptionElement},
{"STYLE", elem_iids, NULL}, {"STYLE", elem_iids, NULL},
{"BLOCKQUOTE",elem_iids, NULL}, {"BLOCKQUOTE",elem_iids, NULL},