diff --git a/include/mshtml.idl b/include/mshtml.idl
index 76ab0e81e5..85bfa98000 100644
--- a/include/mshtml.idl
+++ b/include/mshtml.idl
@@ -3485,6 +3485,10 @@ interface IHTMLDOMNode2 : IDispatch
[propget, id(DISPID_IHTMLDOMNODE2_OWNERDOCUMENT)] \
IDispatch *ownerDocument()
+#define WINE_HTMLDOMNODE_DISPINTERFACE_DECL \
+ WINE_IHTMLDOMNODE_DISPINTERFACE_DECL; \
+ WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL
+
/*****************************************************************************
* IHTMLDOMAttribute interface
*/
@@ -3727,8 +3731,7 @@ methods:
[in] LONG Count,
[in] BSTR bstrstring);
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
+ WINE_HTMLDOMNODE_DISPINTERFACE_DECL;
}
/*****************************************************************************
@@ -5446,6 +5449,23 @@ interface IHTMLDatabinding : IDispatch
[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] \
BSTR dataFormatAs()
+#define WINE_HTMLELEMENT_DISPINTERFACE_DECL \
+ WINE_IHTMLELEMENT_DISPINTERFACE_DECL; \
+ WINE_IHTMLELEMENT2_DISPINTERFACE_DECL; \
+ WINE_IHTMLELEMENT3_DISPINTERFACE_DECL; \
+ WINE_IHTMLELEMENT4_DISPINTERFACE_DECL; \
+ WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL; \
+ WINE_HTMLDOMNODE_DISPINTERFACE_DECL
+
+#define WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL \
+ WINE_IHTMLELEMENT_DISPINTERFACE_DECL; \
+ WINE_IHTMLELEMENT2_DISPINTERFACE_DECL; \
+ WINE_IHTMLELEMENT3_DISPINTERFACE_DECL; \
+ WINE_IHTMLELEMENT4_DISPINTERFACE_DECL; \
+ WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL; \
+ WINE_HTMLDOMNODE_DISPINTERFACE_DECL; \
+ WINE_IHTMLDATABINDING_DISPINTERFACE_DECL
+
/*****************************************************************************
* IHTMLGenericElement interface
*/
@@ -5478,13 +5498,7 @@ dispinterface DispHTMLGenericElement
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
+ WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;
[propget, id(DISPID_IHTMLGENERICELEMENT_RECORDSET), hidden]
IDispatch *recordset();
@@ -6386,14 +6400,7 @@ dispinterface DispHTMLImg
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
- WINE_IHTMLDATABINDING_DISPINTERFACE_DECL;
+ WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;
[propput, id(DISPID_IHTMLIMGELEMENT_ISMAP), displaybind, bindable]
void isMap(VARIANT_BOOL v);
@@ -6758,13 +6765,7 @@ dispinterface DispHTMLBody
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
+ WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;
[propput, id(DISPID_IHTMLBODYELEMENT_BACKGROUND), displaybind, bindable]
void background(BSTR v);
@@ -7051,14 +7052,7 @@ dispinterface DispHTMLAnchorElement
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
- WINE_IHTMLDATABINDING_DISPINTERFACE_DECL;
+ WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;
[id(DISPID_IHTMLELEMENT5_IE8_GETATTRIBUTENODE)]
IHTMLDOMAttribute2 *ie8_getAttributeNode([in] BSTR bstrname);
@@ -7582,14 +7576,7 @@ dispinterface DispHTMLSelectElement
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
- WINE_IHTMLDATABINDING_DISPINTERFACE_DECL;
+ WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;
[propput, id(DISPID_IHTMLSELECTELEMENT_SIZE), displaybind, bindable]
void size(LONG v);
@@ -7783,14 +7770,7 @@ dispinterface DispHTMLOptionElement
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
- WINE_IHTMLDATABINDING_DISPINTERFACE_DECL;
+ WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;
[propput, id(DISPID_IHTMLOPTIONELEMENT_SELECTED)]
void selected(VARIANT_BOOL v);
@@ -8152,14 +8132,7 @@ dispinterface DispHTMLInputElement
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
- WINE_IHTMLDATABINDING_DISPINTERFACE_DECL;
+ WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;
[propput, id(DISPID_IHTMLINPUTELEMENT_TYPE)]
void type(BSTR v);
@@ -8461,13 +8434,7 @@ dispinterface DispHTMLUnknownElement
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
+ WINE_HTMLELEMENT_DISPINTERFACE_DECL;
}
/*****************************************************************************
@@ -12347,8 +12314,7 @@ methods:
[propget, id(DISPID_IHTMLDOCUMENT5_COMPATMODE)]
BSTR compatMode();
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
+ WINE_HTMLDOMNODE_DISPINTERFACE_DECL;
}
/*****************************************************************************
@@ -12451,13 +12417,7 @@ dispinterface DispHTMLCommentElement
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
+ WINE_HTMLELEMENT_DISPINTERFACE_DECL;
[propput, id(DISPID_IHTMLCOMMENTELEMENT_TEXT), displaybind, bindable]
void text(BSTR v);
@@ -13676,14 +13636,7 @@ dispinterface DispHTMLTable
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
- WINE_IHTMLDATABINDING_DISPINTERFACE_DECL;
+ WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;
[propput, id(DISPID_IHTMLTABLE_COLS)]
void cols(LONG v);
@@ -13855,13 +13808,7 @@ dispinterface DispHTMLTableRow
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
+ WINE_HTMLELEMENT_DISPINTERFACE_DECL;
[propput, id(DISPID_IHTMLTABLEROW_ALIGN)]
void align(BSTR v);
@@ -14121,14 +14068,7 @@ dispinterface DispHTMLIFrame
{
properties:
methods:
- WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
- WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
- WINE_IHTMLUNIQUENAME_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE_DISPINTERFACE_DECL;
- WINE_IHTMLDOMNODE2_DISPINTERFACE_DECL;
- WINE_IHTMLDATABINDING_DISPINTERFACE_DECL;
+ WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;
[propput, id(DISPID_IHTMLFRAMEBASE_SRC)]
void src(BSTR v);