diff --git a/dlls/mshtml/main.c b/dlls/mshtml/main.c
index 4ab9df2e39b..3405ec29bfd 100644
--- a/dlls/mshtml/main.c
+++ b/dlls/mshtml/main.c
@@ -31,7 +31,7 @@
#include "winreg.h"
#include "ole2.h"
-#include "uuids.h"
+#include "mshtml.h"
#include "wine/unicode.h"
#include "wine/debug.h"
diff --git a/dlls/uuid/uuid.c b/dlls/uuid/uuid.c
index d18d546b080..60bab9ebfc4 100644
--- a/dlls/uuid/uuid.c
+++ b/dlls/uuid/uuid.c
@@ -55,6 +55,7 @@ DEFINE_GUID(GUID_NULL,0,0,0,0,0,0,0,0,0,0,0);
#include "activscp.h"
#include "dispex.h"
#include "mlang.h"
+#include "mshtml.h"
/* FIXME: cguids declares GUIDs but does not define their values */
diff --git a/include/.cvsignore b/include/.cvsignore
index 886929fa72d..aca0479b074 100644
--- a/include/.cvsignore
+++ b/include/.cvsignore
@@ -13,6 +13,7 @@ exdisp.h
mediaobj.h
mlang.h
mmstream.h
+mshtml.h
oaidl.h
objidl.h
ocidl.h
diff --git a/include/Makefile.in b/include/Makefile.in
index a034f0b7141..db47cc2f4e2 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -18,6 +18,7 @@ IDL_SRCS = \
mediaobj.idl \
mlang.idl \
mmstream.idl \
+ mshtml.idl \
oaidl.idl \
objidl.idl \
ocidl.idl \
@@ -156,6 +157,7 @@ WINDOWS_INCLUDES = \
msacmdlg.h \
msacmdrv.h \
mscat.h \
+ mshtmdid.h \
msi.h \
msiquery.h \
mssip.h \
diff --git a/include/mshtmdid.h b/include/mshtmdid.h
new file mode 100644
index 00000000000..fe8520cdc3f
--- /dev/null
+++ b/include/mshtmdid.h
@@ -0,0 +1,885 @@
+/*
+ * Copyright 2004 Jacek Caban
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef __MSHTMDID_H__
+#define __MSHTMDID_H__
+
+#define DISPID_NORMAL_FIRST 1000
+#define DISPID_OMDOCUMENT DISPID_NORMAL_FIRST
+#define DISPID_ANCHOR DISPID_NORMAL_FIRST
+#define DISPID_BLOCK DISPID_NORMAL_FIRST
+#define DISPID_BR DISPID_NORMAL_FIRST
+#define DISPID_BGSOUND DISPID_NORMAL_FIRST
+#define DISPID_DD DISPID_NORMAL_FIRST
+#define DISPID_DIR DISPID_NORMAL_FIRST
+#define DISPID_DIV DISPID_NORMAL_FIRST
+#define DISPID_DL DISPID_NORMAL_FIRST
+#define DISPID_DT DISPID_NORMAL_FIRST
+#define DISPID_EFONT DISPID_NORMAL_FIRST
+#define DISPID_FORM DISPID_NORMAL_FIRST
+#define DISPID_HEADER DISPID_NORMAL_FIRST
+#define DISPID_HEDELEMS DISPID_NORMAL_FIRST
+#define DISPID_HR DISPID_NORMAL_FIRST
+#define DISPID_LABEL DISPID_NORMAL_FIRST
+#define DISPID_LI DISPID_NORMAL_FIRST
+#define DISPID_IMGBASE DISPID_NORMAL_FIRST
+#define DISPID_MENU DISPID_NORMAL_FIRST
+#define DISPID_OL DISPID_NORMAL_FIRST
+#define DISPID_PARA DISPID_NORMAL_FIRST
+#define DISPID_SELECT DISPID_NORMAL_FIRST
+#define DISPID_SELECTOBJ DISPID_NORMAL_FIRST
+#define DISPID_TABLE DISPID_NORMAL_FIRST
+#define DISPID_TEXTSITE DISPID_NORMAL_FIRST
+#define DISPID_UL DISPID_NORMAL_FIRST
+#define DISPID_PHRASE DISPID_NORMAL_FIRST
+#define DISPID_UNKNOWNPDL DISPID_NORMAL_FIRST
+#define DISPID_COMMENTPDL DISPID_NORMAL_FIRST
+#define DISPID_RANGE DISPID_NORMAL_FIRST
+#define DISPID_SELECTION DISPID_NORMAL_FIRST
+#define DISPID_OPTION DISPID_NORMAL_FIRST
+#define DISPID_RANGE DISPID_NORMAL_FIRST
+#define DISPID_SELECTION DISPID_NORMAL_FIRST
+#define DISPID_OPTION DISPID_NORMAL_FIRST
+#define DISPID_RANGE DISPID_NORMAL_FIRST
+#define DISPID_SELECTION DISPID_NORMAL_FIRST
+#define DISPID_OPTION DISPID_NORMAL_FIRST
+#define DISPID_RANGE DISPID_NORMAL_FIRST
+#define DISPID_SELECTION DISPID_NORMAL_FIRST
+#define DISPID_OPTION DISPID_NORMAL_FIRST
+#define DISPID_RANGE DISPID_NORMAL_FIRST
+#define DISPID_SELECTION DISPID_NORMAL_FIRST
+#define DISPID_OPTION DISPID_NORMAL_FIRST
+#define DISPID_MAP DISPID_NORMAL_FIRST
+#define DISPID_AREA DISPID_NORMAL_FIRST
+#define DISPID_PARAM DISPID_NORMAL_FIRST
+#define DISPID_TABLESECTION DISPID_NORMAL_FIRST
+#define DISPID_TABLEROW DISPID_NORMAL_FIRST
+#define DISPID_TABLECOL DISPID_NORMAL_FIRST
+#define DISPID_SCRIPT DISPID_NORMAL_FIRST
+#define DISPID_STYLESHEET DISPID_NORMAL_FIRST
+#define DISPID_STYLERULE DISPID_NORMAL_FIRST
+#define DISPID_STYLESHEETS_COL DISPID_NORMAL_FIRST
+#define DISPID_STYLERULES_COL DISPID_NORMAL_FIRST
+#define DISPID_MIMETYPES_COL DISPID_NORMAL_FIRST
+#define DISPID_PLUGINS_COL DISPID_NORMAL_FIRST
+#define DISPID_2D DISPID_NORMAL_FIRST
+#define DISPID_OMWINDOW DISPID_NORMAL_FIRST
+#define DISPID_EVENTOBJ DISPID_NORMAL_FIRST
+#define DISPID_OLESITE DISPID_NORMAL_FIRST
+#define DISPID_FRAMESET DISPID_NORMAL_FIRST
+#define DISPID_LINK DISPID_NORMAL_FIRST
+#define DISPID_STYLEELEMENT DISPID_NORMAL_FIRST
+#define DISPID_FILTERS DISPID_NORMAL_FIRST
+#define DISPID_TABLESECTION DISPID_NORMAL_FIRST
+#define DISPID_OMDOCUMENT DISPID_NORMAL_FIRST
+#define DISPID_SCREEN DISPID_NORMAL_FIRST
+
+#define DISPID_COLLECTION (DISPID_NORMAL_FIRST+500)
+#define DISPID_IMG (DISPID_IMGBASE+1000)
+#define DISPID_INPUTIMAGE (DISPID_IMGBASE+1000)
+#define DISPID_INPUT (DISPID_TEXTSITE+1000)
+#define DISPID_TABLECELL (DISPID_TEXTSITE+1000)
+#define DISPID_1D (DISPID_TEXTSITE+1000)
+#define DISPID_BODY (DISPID_TEXTSITE+1000)
+#define DISPID_INPUTTEXTBASE (DISPID_INPUT+1000)
+#define DISPID_INPUTTEXT (DISPID_INPUTTEXTBASE+1000)
+#define DISPID_TEXTAREA (DISPID_INPUTTEXT+1000)
+#define DISPID_MARQUEE (DISPID_TEXTAREA+1000)
+
+#define DISPID_XOBJ_MIN 0x80010000
+#define DISPID_XOBJ_MAX 0x8001FFFF
+#define DISPID_XOBJ_BASE DISPID_XOBJ_MIN
+#define DISPID_HTMLOBJECT (DISPID_XOBJ_BASE+500)
+#define DISPID_ELEMENT (DISPID_HTMLOBJECT+500)
+#define DISPID_SITE (DISPID_ELEMENT+1000)
+#define DISPID_OBJECT (DISPID_SITE+1000)
+#define DISPID_STYLE (DISPID_OBJECT+1000)
+#define DISPID_ATTRS (DISPID_STYLE+1000)
+#define DISPID_EVENTS (DISPID_ATTRS+1000)
+#define DISPID_XOBJ_EXPANDO (DISPID_EVENTS+1000)
+#define DISPID_XOBJ_ORDINAL (DISPID_XOBJ_EXPANDO+1000)
+
+#define DISPID_WINDOW 1
+#define DISPID_HISTORY 1
+#define DISPID_LOCATION 1
+#define DISPID_NAVIGATOR 1
+
+#define STDPROPID_XOBJ_NAME (DISPID_XOBJ_BASE+0)
+#define STDPROPID_XOBJ_INDEX (DISPID_XOBJ_BASE+1)
+#define STDPROPID_XOBJ_BASEHREF (DISPID_XOBJ_BASE+2)
+#define STDPROPID_XOBJ_LEFT (DISPID_XOBJ_BASE+3)
+#define STDPROPID_XOBJ_TOP (DISPID_XOBJ_BASE+4)
+#define STDPROPID_XOBJ_WIDTH (DISPID_XOBJ_BASE+5)
+#define STDPROPID_XOBJ_HEIGHT (DISPID_XOBJ_BASE+6)
+#define STDPROPID_XOBJ_VISIBLE (DISPID_XOBJ_BASE+7)
+#define STDPROPID_XOBJ_PARENT (DISPID_XOBJ_BASE+8)
+#define STDPROPID_XOBJ_DRAGMODE (DISPID_XOBJ_BASE+9)
+#define STDPROPID_XOBJ_DRAGICON (DISPID_XOBJ_BASE+10)
+#define STDPROPID_XOBJ_TAG (DISPID_XOBJ_BASE+11)
+#define STDPROPID_XOBJ_TABSTOP (DISPID_XOBJ_BASE+14)
+#define STDPROPID_XOBJ_TABINDEX (DISPID_XOBJ_BASE+15)
+#define STDPROPID_XOBJ_HELPCONTEXTID (DISPID_XOBJ_BASE+50)
+#define STDPROPID_XOBJ_DEFAULT (DISPID_XOBJ_BASE+55)
+#define STDPROPID_XOBJ_CANCEL (DISPID_XOBJ_BASE+56)
+#define STDPROPID_XOBJ_LEFTNORUN (DISPID_XOBJ_BASE+57)
+#define STDPROPID_XOBJ_TOPNORUN (DISPID_XOBJ_BASE+58)
+#define STDPROPID_XOBJ_ALIGNPERSIST (DISPID_XOBJ_BASE+60)
+#define STDPROPID_XOBJ_LINKTIMEOUT (DISPID_XOBJ_BASE+61)
+#define STDPROPID_XOBJ_LINKTOPIC (DISPID_XOBJ_BASE+62)
+#define STDPROPID_XOBJ_LINKITEM (DISPID_XOBJ_BASE+63)
+#define STDPROPID_XOBJ_LINKMODE (DISPID_XOBJ_BASE+64)
+#define STDPROPID_XOBJ_DATACHANGED (DISPID_XOBJ_BASE+65)
+#define STDPROPID_XOBJ_DATAFIELD (DISPID_XOBJ_BASE+66)
+#define STDPROPID_XOBJ_DATASOURCE (DISPID_XOBJ_BASE+67)
+#define STDPROPID_XOBJ_WHATSTHISHELPID (DISPID_XOBJ_BASE+68)
+#define STDPROPID_XOBJ_CONTROLTIPTEXT (DISPID_XOBJ_BASE+69)
+#define STDPROPID_XOBJ_STATUSBARTEXT (DISPID_XOBJ_BASE+70)
+#define STDPROPID_XOBJ_APPLICATION (DISPID_XOBJ_BASE+71)
+#define STDPROPID_XOBJ_BLOCKALIGN (DISPID_XOBJ_BASE+72)
+#define STDPROPID_XOBJ_CONTROLALIGN (DISPID_XOBJ_BASE+73)
+#define STDPROPID_XOBJ_STYLE (DISPID_XOBJ_BASE+74)
+#define STDPROPID_XOBJ_COUNT (DISPID_XOBJ_BASE+75)
+#define STDPROPID_XOBJ_DISABLED (DISPID_XOBJ_BASE+76)
+
+#define DISPID_A_FIRST DISPID_ATTRS
+#define DISPID_A_BACKGROUNDIMAGE (DISPID_A_FIRST+1)
+#define DISPID_A_COLOR (DISPID_A_FIRST+2)
+#define DISPID_A_TEXTTRANSFORM (DISPID_A_FIRST+4)
+#define DISPID_A_NOWRAP (DISPID_A_FIRST+5)
+#define DISPID_A_LINEHEIGHT (DISPID_A_FIRST+6)
+#define DISPID_A_TEXTINDENT (DISPID_A_FIRST+7)
+#define DISPID_A_LETTERSPACING (DISPID_A_FIRST+8)
+#define DISPID_A_LANG (DISPID_A_FIRST+9)
+#define DISPID_A_OVERFLOW (DISPID_A_FIRST+10)
+#define DISPID_A_PADDING (DISPID_A_FIRST+11)
+#define DISPID_A_PADDINGTOP (DISPID_A_FIRST+12)
+#define DISPID_A_PADDINGRIGHT (DISPID_A_FIRST+13)
+#define DISPID_A_PADDINGBOTTOM (DISPID_A_FIRST+14)
+#define DISPID_A_PADDINGLEFT (DISPID_A_FIRST+15)
+#define DISPID_A_CLEAR (DISPID_A_FIRST+16)
+#define DISPID_A_LISTTYPE (DISPID_A_FIRST+17)
+#define DISPID_A_FONTFACE (DISPID_A_FIRST+18)
+#define DISPID_A_FONTSIZE (DISPID_A_FIRST+19)
+#define DISPID_A_TEXTDECORATIONLINETHROUGH (DISPID_A_FIRST+20)
+#define DISPID_A_TEXTDECORATIONUNDERLINE (DISPID_A_FIRST+21)
+#define DISPID_A_TEXTDECORATIONBLINK (DISPID_A_FIRST+22)
+#define DISPID_A_TEXTDECORATIONNONE (DISPID_A_FIRST+23)
+#define DISPID_A_FONTSTYLE (DISPID_A_FIRST+24)
+#define DISPID_A_FONTVARIANT (DISPID_A_FIRST+25)
+#define DISPID_A_BASEFONT (DISPID_A_FIRST+26)
+#define DISPID_A_FONTWEIGHT (DISPID_A_FIRST+27)
+#define DISPID_A_TABLEBORDERCOLOR (DISPID_A_FIRST+28)
+#define DISPID_A_TABLEBORDERCOLORLIGHT (DISPID_A_FIRST+29)
+#define DISPID_A_TABLEBORDERCOLORDARK (DISPID_A_FIRST+30)
+#define DISPID_A_TABLEVALIGN (DISPID_A_FIRST+31)
+#define DISPID_A_BACKGROUND (DISPID_A_FIRST+32)
+#define DISPID_A_BACKGROUNDPOSX (DISPID_A_FIRST+33)
+#define DISPID_A_BACKGROUNDPOSY (DISPID_A_FIRST+34)
+#define DISPID_A_TEXTDECORATION (DISPID_A_FIRST+35)
+#define DISPID_A_MARGIN (DISPID_A_FIRST+36)
+#define DISPID_A_MARGINTOP (DISPID_A_FIRST+37)
+#define DISPID_A_MARGINRIGHT (DISPID_A_FIRST+38)
+#define DISPID_A_MARGINBOTTOM (DISPID_A_FIRST+39)
+#define DISPID_A_MARGINLEFT (DISPID_A_FIRST+40)
+#define DISPID_A_FONT (DISPID_A_FIRST+41)
+#define DISPID_A_FONTSIZEKEYWORD (DISPID_A_FIRST+42)
+#define DISPID_A_FONTSIZECOMBINE (DISPID_A_FIRST+43)
+#define DISPID_A_BACKGROUNDREPEAT (DISPID_A_FIRST+44)
+#define DISPID_A_BACKGROUNDATTACHMENT (DISPID_A_FIRST+45)
+#define DISPID_A_BACKGROUNDPOSITION (DISPID_A_FIRST+46)
+#define DISPID_A_WORDSPACING (DISPID_A_FIRST+47)
+#define DISPID_A_VERTICALALIGN (DISPID_A_FIRST+48)
+#define DISPID_A_BORDER (DISPID_A_FIRST+49)
+#define DISPID_A_BORDERTOP (DISPID_A_FIRST+50)
+#define DISPID_A_BORDERRIGHT (DISPID_A_FIRST+51)
+#define DISPID_A_BORDERBOTTOM (DISPID_A_FIRST+52)
+#define DISPID_A_BORDERLEFT (DISPID_A_FIRST+53)
+#define DISPID_A_BORDERCOLOR (DISPID_A_FIRST+54)
+#define DISPID_A_BORDERTOPCOLOR (DISPID_A_FIRST+55)
+#define DISPID_A_BORDERRIGHTCOLOR (DISPID_A_FIRST+56)
+#define DISPID_A_BORDERBOTTOMCOLOR (DISPID_A_FIRST+57)
+#define DISPID_A_BORDERLEFTCOLOR (DISPID_A_FIRST+58)
+#define DISPID_A_BORDERWIDTH (DISPID_A_FIRST+59)
+#define DISPID_A_BORDERTOPWIDTH (DISPID_A_FIRST+60)
+#define DISPID_A_BORDERRIGHTWIDTH (DISPID_A_FIRST+61)
+#define DISPID_A_BORDERBOTTOMWIDTH (DISPID_A_FIRST+62)
+#define DISPID_A_BORDERLEFTWIDTH (DISPID_A_FIRST+63)
+#define DISPID_A_BORDERSTYLE (DISPID_A_FIRST+64)
+#define DISPID_A_BORDERTOPSTYLE (DISPID_A_FIRST+65)
+#define DISPID_A_BORDERRIGHTSTYLE (DISPID_A_FIRST+66)
+#define DISPID_A_BORDERBOTTOMSTYLE (DISPID_A_FIRST+67)
+#define DISPID_A_BORDERLEFTSTYLE (DISPID_A_FIRST+68)
+#define DISPID_A_TEXTDECORATIONOVERLINE (DISPID_A_FIRST+69)
+#define DISPID_A_FLOAT (DISPID_A_FIRST+70)
+#define DISPID_A_DISPLAY (DISPID_A_FIRST+71)
+#define DISPID_A_LISTSTYLETYPE (DISPID_A_FIRST+72)
+#define DISPID_A_LISTSTYLEPOSITION (DISPID_A_FIRST+73)
+#define DISPID_A_LISTSTYLEIMAGE (DISPID_A_FIRST+74)
+#define DISPID_A_LISTSTYLE (DISPID_A_FIRST+75)
+#define DISPID_A_WHITESPACE (DISPID_A_FIRST+76)
+#define DISPID_A_PAGEBREAKBEFORE (DISPID_A_FIRST+77)
+#define DISPID_A_PAGEBREAKAFTER (DISPID_A_FIRST+78)
+#define DISPID_A_SCROLL (DISPID_A_FIRST+79)
+#define DISPID_A_VISIBILITY (DISPID_A_FIRST+80)
+#define DISPID_A_HIDDEN (DISPID_A_FIRST+81)
+#define DISPID_A_FILTER (DISPID_A_FIRST+82)
+#define DISPID_DEFAULTVALUE (DISPID_A_FIRST+83)
+#define DISPID_A_POSITION (DISPID_A_FIRST+90)
+#define DISPID_A_ZINDEX (DISPID_A_FIRST+91)
+#define DISPID_A_CLIP (DISPID_A_FIRST+92)
+#define DISPID_A_CLIPRECTTOP (DISPID_A_FIRST+93)
+#define DISPID_A_CLIPRECTRIGHT (DISPID_A_FIRST+94)
+#define DISPID_A_CLIPRECTBOTTOM (DISPID_A_FIRST+95)
+#define DISPID_A_CLIPRECTLEFT (DISPID_A_FIRST+96)
+#define DISPID_A_FONTFACESRC (DISPID_A_FIRST+97)
+#define DISPID_A_STYLETEXT (DISPID_A_FIRST+99)
+#define DISPID_A_LANGUAGE (DISPID_A_FIRST+100)
+#define DISPID_A_VALUE (DISPID_A_FIRST+101)
+#define DISPID_A_CURSOR (DISPID_A_FIRST+102)
+
+/* events */
+#define DISPID_EVPROP_ONMOUSEOVER (DISPID_EVENTS+0)
+#define DISPID_EVPROP_ONMOUSEOUT (DISPID_EVENTS+1)
+#define DISPID_EVPROP_ONMOUSEDOWN (DISPID_EVENTS+2)
+#define DISPID_EVPROP_ONMOUSEUP (DISPID_EVENTS+3)
+#define DISPID_EVPROP_ONMOUSEMOVE (DISPID_EVENTS+4)
+#define DISPID_EVPROP_ONKEYDOWN (DISPID_EVENTS+5)
+#define DISPID_EVPROP_ONKEYUP (DISPID_EVENTS+6)
+#define DISPID_EVPROP_ONKEYPRESS (DISPID_EVENTS+7)
+#define DISPID_EVPROP_ONCLICK (DISPID_EVENTS+8)
+#define DISPID_EVPROP_ONDBLCLICK (DISPID_EVENTS+9)
+#define DISPID_EVPROP_ONSELECT (DISPID_EVENTS+10)
+#define DISPID_EVPROP_ONSUBMIT (DISPID_EVENTS+11)
+#define DISPID_EVPROP_ONRESET (DISPID_EVENTS+12)
+#define DISPID_EVPROP_ONHELP (DISPID_EVENTS+13)
+#define DISPID_EVPROP_ONFOCUS (DISPID_EVENTS+14)
+#define DISPID_EVPROP_ONBLUR (DISPID_EVENTS+15)
+#define DISPID_EVPROP_ONROWEXIT (DISPID_EVENTS+18)
+#define DISPID_EVPROP_ONROWENTER (DISPID_EVENTS+19)
+#define DISPID_EVPROP_ONBOUNCE (DISPID_EVENTS+20)
+#define DISPID_EVPROP_ONBEFOREUPDATE (DISPID_EVENTS+21)
+#define DISPID_EVPROP_ONAFTERUPDATE (DISPID_EVENTS+22)
+#define DISPID_EVPROP_ONBEFOREDRAGOVER (DISPID_EVENTS+23)
+#define DISPID_EVPROP_ONBEFOREDROPORPASTE (DISPID_EVENTS+24)
+#define DISPID_EVPROP_ONREADYSTATECHANGE (DISPID_EVENTS+25)
+#define DISPID_EVPROP_ONFINISH (DISPID_EVENTS+26)
+#define DISPID_EVPROP_ONSTART (DISPID_EVENTS+27)
+#define DISPID_EVPROP_ONABORT (DISPID_EVENTS+28)
+#define DISPID_EVPROP_ONERROR (DISPID_EVENTS+29)
+#define DISPID_EVPROP_ONCHANGE (DISPID_EVENTS+30)
+#define DISPID_EVPROP_ONSCROLL (DISPID_EVENTS+31)
+#define DISPID_EVPROP_ONLOAD (DISPID_EVENTS+32)
+#define DISPID_EVPROP_ONUNLOAD (DISPID_EVENTS+33)
+#define DISPID_EVPROP_ONLAYOUT (DISPID_EVENTS+34)
+#define DISPID_EVPROP_ONDRAGSTART (DISPID_EVENTS+35)
+#define DISPID_EVPROP_ONRESIZE (DISPID_EVENTS+36)
+#define DISPID_EVPROP_ONSELECTSTART (DISPID_EVENTS+37)
+#define DISPID_EVPROP_ONERRORUPDATE (DISPID_EVENTS+38)
+#define DISPID_EVPROP_ONBEFOREUNLOAD (DISPID_EVENTS+39)
+#define DISPID_EVPROP_ONDATASETCHANGED (DISPID_EVENTS+40)
+#define DISPID_EVPROP_ONDATAAVAILABLE (DISPID_EVENTS+41)
+#define DISPID_EVPROP_ONDATASETCOMPLETE (DISPID_EVENTS+42)
+#define DISPID_EVPROP_ONFILTER (DISPID_EVENTS+43)
+#define DISPID_EVPROP_ONCHANGEFOCUS (DISPID_EVENTS+44)
+#define DISPID_EVPROP_ONCHANGEBLUR (DISPID_EVENTS+45)
+
+/* IHTMLDocument */
+#define DISPID_IHTMLDOCUMENT_SCRIPT (DISPID_OMDOCUMENT+1)
+
+/* IHTMLDocument2 */
+#define DISPID_IHTMLDOCUMENT2_ALL (DISPID_OMDOCUMENT+3)
+#define DISPID_IHTMLDOCUMENT2_BODY (DISPID_OMDOCUMENT+4)
+#define DISPID_IHTMLDOCUMENT2_ACTIVEELEMENT (DISPID_OMDOCUMENT+5)
+#define DISPID_IHTMLDOCUMENT2_APPLETS (DISPID_OMDOCUMENT+8)
+#define DISPID_IHTMLDOCUMENT2_ANCHORS (DISPID_OMDOCUMENT+7)
+#define DISPID_IHTMLDOCUMENT2_LINKS (DISPID_OMDOCUMENT+9)
+#define DISPID_IHTMLDOCUMENT2_FORMS (DISPID_OMDOCUMENT+10)
+#define DISPID_IHTMLDOCUMENT2_IMAGES (DISPID_OMDOCUMENT+11)
+#define DISPID_IHTMLDOCUMENT2_TITLE (DISPID_OMDOCUMENT+12)
+#define DISPID_IHTMLDOCUMENT2_SCRIPTS (DISPID_OMDOCUMENT+13)
+#define DISPID_IHTMLDOCUMENT2_DESIGNMODE (DISPID_OMDOCUMENT+14)
+#define DISPID_IHTMLDOCUMENT2_EMBEDS (DISPID_OMDOCUMENT+15)
+#define DISPID_IHTMLDOCUMENT2_SELECTION (DISPID_OMDOCUMENT+17)
+#define DISPID_IHTMLDOCUMENT2_READYSTATE (DISPID_OMDOCUMENT+18)
+#define DISPID_IHTMLDOCUMENT2_FRAMES (DISPID_OMDOCUMENT+19)
+#define DISPID_IHTMLDOCUMENT2_PLUGINS (DISPID_OMDOCUMENT+21)
+#define DISPID_IHTMLDOCUMENT2_ALINKCOLOR (DISPID_OMDOCUMENT+22)
+#define DISPID_IHTMLDOCUMENT2_VLINKCOLOR (DISPID_OMDOCUMENT+23)
+#define DISPID_IHTMLDOCUMENT2_LINKCOLOR (DISPID_OMDOCUMENT+24)
+#define DISPID_IHTMLDOCUMENT2_URL (DISPID_OMDOCUMENT+25)
+#define DISPID_IHTMLDOCUMENT2_LOCATION (DISPID_OMDOCUMENT+26)
+#define DISPID_IHTMLDOCUMENT2_REFERRER (DISPID_OMDOCUMENT+27)
+#define DISPID_IHTMLDOCUMENT2_LASTMODIFIED (DISPID_OMDOCUMENT+28)
+#define DISPID_IHTMLDOCUMENT2_DOMAIN (DISPID_OMDOCUMENT+29)
+#define DISPID_IHTMLDOCUMENT2_COOKIE (DISPID_OMDOCUMENT+30)
+#define DISPID_IHTMLDOCUMENT2_EXPANDO (DISPID_OMDOCUMENT+31)
+#define DISPID_IHTMLDOCUMENT2_CHARSET (DISPID_OMDOCUMENT+32)
+#define DISPID_IHTMLDOCUMENT2_DEFAULTCHARSET (DISPID_OMDOCUMENT+33)
+#define DISPID_IHTMLDOCUMENT2_PARENTWINDOW (DISPID_OMDOCUMENT+34)
+#define DISPID_IHTMLDOCUMENT2_MIMETYPE (DISPID_OMDOCUMENT+41)
+#define DISPID_IHTMLDOCUMENT2_FILESIZE (DISPID_OMDOCUMENT+42)
+#define DISPID_IHTMLDOCUMENT2_FILECREATEDDATE (DISPID_OMDOCUMENT+43)
+#define DISPID_IHTMLDOCUMENT2_FILEMODIFIEDDATE (DISPID_OMDOCUMENT+44)
+#define DISPID_IHTMLDOCUMENT2_FILEUPDATEDDATE (DISPID_OMDOCUMENT+45)
+#define DISPID_IHTMLDOCUMENT2_SECURITY (DISPID_OMDOCUMENT+46)
+#define DISPID_IHTMLDOCUMENT2_PROTOCOL (DISPID_OMDOCUMENT+47)
+#define DISPID_IHTMLDOCUMENT2_NAMEPROP (DISPID_OMDOCUMENT+48)
+#define DISPID_IHTMLDOCUMENT2_WRITE (DISPID_OMDOCUMENT+54)
+#define DISPID_IHTMLDOCUMENT2_WRITELN (DISPID_OMDOCUMENT+55)
+#define DISPID_IHTMLDOCUMENT2_OPEN (DISPID_OMDOCUMENT+56)
+#define DISPID_IHTMLDOCUMENT2_CLOSE (DISPID_OMDOCUMENT+57)
+#define DISPID_IHTMLDOCUMENT2_CLEAR (DISPID_OMDOCUMENT+58)
+#define DISPID_IHTMLDOCUMENT2_QUERYCOMMANDSUPPORTED (DISPID_OMDOCUMENT+59)
+#define DISPID_IHTMLDOCUMENT2_QUERYCOMMANDENABLED (DISPID_OMDOCUMENT+60)
+#define DISPID_IHTMLDOCUMENT2_QUERYCOMMANDSTATE (DISPID_OMDOCUMENT+61)
+#define DISPID_IHTMLDOCUMENT2_QUERYCOMMANDINDETERM (DISPID_OMDOCUMENT+62)
+#define DISPID_IHTMLDOCUMENT2_QUERYCOMMANDTEXT (DISPID_OMDOCUMENT+63)
+#define DISPID_IHTMLDOCUMENT2_QUERYCOMMANDVALUE (DISPID_OMDOCUMENT+64)
+#define DISPID_IHTMLDOCUMENT2_EXECCOMMAND (DISPID_OMDOCUMENT+65)
+#define DISPID_IHTMLDOCUMENT2_EXECCOMMANDSHOWHELP (DISPID_OMDOCUMENT+66)
+#define DISPID_IHTMLDOCUMENT2_CREATEELEMENT (DISPID_OMDOCUMENT+67)
+#define DISPID_IHTMLDOCUMENT2_ELEMENTFROMPOINT (DISPID_OMDOCUMENT+68)
+#define DISPID_IHTMLDOCUMENT2_STYLESHEETS (DISPID_OMDOCUMENT+69)
+#define DISPID_IHTMLDOCUMENT2_TOSTRING (DISPID_OMDOCUMENT+70)
+#define DISPID_IHTMLDOCUMENT2_CREATESTYLESHEET (DISPID_OMDOCUMENT+71)
+#define DISPID_IHTMLDOCUMENT2_ONHELP DISPID_EVPROP_ONHELP
+#define DISPID_IHTMLDOCUMENT2_ONCLICK DISPID_EVPROP_ONCLICK
+#define DISPID_IHTMLDOCUMENT2_ONDBLCLICK DISPID_EVPROP_ONDBLCLICK
+#define DISPID_IHTMLDOCUMENT2_ONKEYUP DISPID_EVPROP_ONKEYUP
+#define DISPID_IHTMLDOCUMENT2_ONKEYDOWN DISPID_EVPROP_ONKEYDOWN
+#define DISPID_IHTMLDOCUMENT2_ONKEYPRESS DISPID_EVPROP_ONKEYPRESS
+#define DISPID_IHTMLDOCUMENT2_ONMOUSEUP DISPID_EVPROP_ONMOUSEUP
+#define DISPID_IHTMLDOCUMENT2_ONMOUSEDOWN DISPID_EVPROP_ONMOUSEDOWN
+#define DISPID_IHTMLDOCUMENT2_ONMOUSEMOVE DISPID_EVPROP_ONMOUSEMOVE
+#define DISPID_IHTMLDOCUMENT2_ONMOUSEOUT DISPID_EVPROP_ONMOUSEOUT
+#define DISPID_IHTMLDOCUMENT2_ONMOUSEOVER DISPID_EVPROP_ONMOUSEOVER
+#define DISPID_IHTMLDOCUMENT2_ONREADYSTATECHANGE DISPID_EVPROP_ONREADYSTATECHANGE
+#define DISPID_IHTMLDOCUMENT2_ONAFTERUPDATE DISPID_EVPROP_ONAFTERUPDATE
+#define DISPID_IHTMLDOCUMENT2_ONROWEXIT DISPID_EVPROP_ONROWEXIT
+#define DISPID_IHTMLDOCUMENT2_ONROWENTER DISPID_EVPROP_ONROWENTER
+#define DISPID_IHTMLDOCUMENT2_ONDRAGSTART DISPID_EVPROP_ONDRAGSTART
+#define DISPID_IHTMLDOCUMENT2_ONSELECTSTART DISPID_EVPROP_ONSELECTSTART
+#define DISPID_IHTMLDOCUMENT2_ONBEFOREUPDATE DISPID_EVPROP_ONBEFOREUPDATE
+#define DISPID_IHTMLDOCUMENT2_ONERRORUPDATE DISPID_EVPROP_ONERRORUPDATE
+#define DISPID_IHTMLDOCUMENT2_BGCOLOR DISPID_BACKCOLOR
+#define DISPID_IHTMLDOCUMENT2_FGCOLOR DISPID_A_COLOR
+
+/* IHTMLElementCollection */
+#define DISPID_IHTMLELEMENTCOLLECTION_LENGTH DISPID_COLLECTION
+#define DISPID_IHTMLELEMENTCOLLECTION_TOSTRING (DISPID_COLLECTION+1)
+#define DISPID_IHTMLELEMENTCOLLECTION_TAGS (DISPID_COLLECTION+2)
+#define DISPID_IHTMLELEMENTCOLLECTION__NEWENUM DISPID_NEWENUM
+#define DISPID_IHTMLELEMENTCOLLECTION_ITEM DISPID_VALUE
+
+/* IHTMLElement */
+#define DISPID_IHTMLELEMENT_SETATTRIBUTE (DISPID_HTMLOBJECT+1)
+#define DISPID_IHTMLELEMENT_GETATTRIBUTE (DISPID_HTMLOBJECT+2)
+#define DISPID_IHTMLELEMENT_REMOVEATTRIBUTE (DISPID_HTMLOBJECT+3)
+#define DISPID_IHTMLELEMENT_CLASSNAME (DISPID_ELEMENT+1)
+#define DISPID_IHTMLELEMENT_ID (DISPID_ELEMENT+2)
+#define DISPID_IHTMLELEMENT_TAGNAME (DISPID_ELEMENT+4)
+#define DISPID_IHTMLELEMENT_OFFSETLEFT (DISPID_ELEMENT+8)
+#define DISPID_IHTMLELEMENT_OFFSETTOP (DISPID_ELEMENT+9)
+#define DISPID_IHTMLELEMENT_OFFSETWIDTH (DISPID_ELEMENT+10)
+#define DISPID_IHTMLELEMENT_OFFSETHEIGHT (DISPID_ELEMENT+11)
+#define DISPID_IHTMLELEMENT_OFFSETPARENT (DISPID_ELEMENT+12)
+#define DISPID_IHTMLELEMENT_DOCUMENT (DISPID_ELEMENT+18)
+#define DISPID_IHTMLELEMENT_SCROLLINTOVIEW (DISPID_ELEMENT+19)
+#define DISPID_IHTMLELEMENT_CONTAINS (DISPID_ELEMENT+20)
+#define DISPID_IHTMLELEMENT_SOURCEINDEX (DISPID_ELEMENT+24)
+#define DISPID_IHTMLELEMENT_RECORDNUMBER (DISPID_ELEMENT+25)
+#define DISPID_IHTMLELEMENT_INNERHTML (DISPID_ELEMENT+26)
+#define DISPID_IHTMLELEMENT_INNERTEXT (DISPID_ELEMENT+27)
+#define DISPID_IHTMLELEMENT_OUTERHTML (DISPID_ELEMENT+28)
+#define DISPID_IHTMLELEMENT_OUTERTEXT (DISPID_ELEMENT+29)
+#define DISPID_IHTMLELEMENT_INSERTADJACENTHTML (DISPID_ELEMENT+30)
+#define DISPID_IHTMLELEMENT_INSERTADJACENTTEXT (DISPID_ELEMENT+31)
+#define DISPID_IHTMLELEMENT_PARENTTEXTEDIT (DISPID_ELEMENT+32)
+#define DISPID_IHTMLELEMENT_ISTEXTEDIT (DISPID_ELEMENT+34)
+#define DISPID_IHTMLELEMENT_CLICK (DISPID_ELEMENT+33)
+#define DISPID_IHTMLELEMENT_FILTERS (DISPID_ELEMENT+35)
+#define DISPID_IHTMLELEMENT_TOSTRING (DISPID_ELEMENT+36)
+#define DISPID_IHTMLELEMENT_CHILDREN (DISPID_ELEMENT+37)
+#define DISPID_IHTMLELEMENT_ALL (DISPID_ELEMENT+38)
+#define DISPID_IHTMLELEMENT_PARENTELEMENT STDPROPID_XOBJ_PARENT
+#define DISPID_IHTMLELEMENT_STYLE STDPROPID_XOBJ_STYLE
+#define DISPID_IHTMLELEMENT_ONHELP DISPID_EVPROP_ONHELP
+#define DISPID_IHTMLELEMENT_ONCLICK DISPID_EVPROP_ONCLICK
+#define DISPID_IHTMLELEMENT_ONDBLCLICK DISPID_EVPROP_ONDBLCLICK
+#define DISPID_IHTMLELEMENT_ONKEYDOWN DISPID_EVPROP_ONKEYDOWN
+#define DISPID_IHTMLELEMENT_ONKEYUP DISPID_EVPROP_ONKEYUP
+#define DISPID_IHTMLELEMENT_ONKEYPRESS DISPID_EVPROP_ONKEYPRESS
+#define DISPID_IHTMLELEMENT_ONMOUSEOUT DISPID_EVPROP_ONMOUSEOUT
+#define DISPID_IHTMLELEMENT_ONMOUSEOVER DISPID_EVPROP_ONMOUSEOVER
+#define DISPID_IHTMLELEMENT_ONMOUSEMOVE DISPID_EVPROP_ONMOUSEMOVE
+#define DISPID_IHTMLELEMENT_ONMOUSEDOWN DISPID_EVPROP_ONMOUSEDOWN
+#define DISPID_IHTMLELEMENT_ONMOUSEUP DISPID_EVPROP_ONMOUSEUP
+#define DISPID_IHTMLELEMENT_TITLE STDPROPID_XOBJ_CONTROLTIPTEXT
+#define DISPID_IHTMLELEMENT_LANGUAGE DISPID_A_LANGUAGE
+#define DISPID_IHTMLELEMENT_ONSELECTSTART DISPID_EVPROP_ONSELECTSTART
+#define DISPID_IHTMLELEMENT_LANG DISPID_A_LANG
+#define DISPID_IHTMLELEMENT_ONDRAGSTART DISPID_EVPROP_ONDRAGSTART
+#define DISPID_IHTMLELEMENT_ONBEFOREUPDATE DISPID_EVPROP_ONBEFOREUPDATE
+#define DISPID_IHTMLELEMENT_ONAFTERUPDATE DISPID_EVPROP_ONAFTERUPDATE
+#define DISPID_IHTMLELEMENT_ONERRORUPDATE DISPID_EVPROP_ONERRORUPDATE
+#define DISPID_IHTMLELEMENT_ONROWEXIT DISPID_EVPROP_ONROWEXIT
+#define DISPID_IHTMLELEMENT_ONROWENTER DISPID_EVPROP_ONROWENTER
+#define DISPID_IHTMLELEMENT_ONDATASETCHANGED DISPID_EVPROP_ONDATASETCHANGED
+#define DISPID_IHTMLELEMENT_ONDATAAVAILABLE DISPID_EVPROP_ONDATAAVAILABLE
+#define DISPID_IHTMLELEMENT_ONDATASETCOMPLETE DISPID_EVPROP_ONDATASETCOMPLETE
+#define DISPID_IHTMLELEMENT_ONFILTERCHANGE DISPID_EVPROP_ONFILTER
+
+/* IHTMLStyle */
+#define DISPID_IHTMLSTYLE_PIXELTOP DISPID_STYLE
+#define DISPID_IHTMLSTYLE_PIXELLEFT (DISPID_STYLE+1)
+#define DISPID_IHTMLSTYLE_PIXELWIDTH (DISPID_STYLE+2)
+#define DISPID_IHTMLSTYLE_PIXELHEIGHT (DISPID_STYLE+3)
+#define DISPID_IHTMLSTYLE_POSTOP (DISPID_STYLE+4)
+#define DISPID_IHTMLSTYLE_POSLEFT (DISPID_STYLE+5)
+#define DISPID_IHTMLSTYLE_POSWIDTH (DISPID_STYLE+6)
+#define DISPID_IHTMLSTYLE_POSHEIGHT (DISPID_STYLE+7)
+#define DISPID_IHTMLSTYLE_TOSTRING (DISPID_STYLE+8)
+#define DISPID_IHTMLSTYLE_SETATTRIBUTE (DISPID_HTMLOBJECT+1)
+#define DISPID_IHTMLSTYLE_GETATTRIBUTE (DISPID_HTMLOBJECT+2)
+#define DISPID_IHTMLSTYLE_REMOVEATTRIBUTE (DISPID_HTMLOBJECT+3)
+#define DISPID_IHTMLSTYLE_FONTFAMILY DISPID_A_FONTFACE
+#define DISPID_IHTMLSTYLE_FONTSTYLE DISPID_A_FONTSTYLE
+#define DISPID_IHTMLSTYLE_FONTVARIANT DISPID_A_FONTVARIANT
+#define DISPID_IHTMLSTYLE_FONTWEIGHT DISPID_A_FONTWEIGHT
+#define DISPID_IHTMLSTYLE_FONTSIZE DISPID_A_FONTSIZE
+#define DISPID_IHTMLSTYLE_FONT DISPID_A_FONT
+#define DISPID_IHTMLSTYLE_COLOR DISPID_A_COLOR
+#define DISPID_IHTMLSTYLE_BACKGROUND DISPID_A_BACKGROUND
+#define DISPID_IHTMLSTYLE_BACKGROUNDIMAGE DISPID_A_BACKGROUNDIMAGE
+#define DISPID_IHTMLSTYLE_BACKGROUNDREPEAT DISPID_A_BACKGROUNDREPEAT
+#define DISPID_IHTMLSTYLE_BACKGROUNDATTACHMENT DISPID_A_BACKGROUNDATTACHMENT
+#define DISPID_IHTMLSTYLE_BACKGROUNDPOSITION DISPID_A_BACKGROUNDPOSITION
+#define DISPID_IHTMLSTYLE_BACKGROUNDPOSITIONX DISPID_A_BACKGROUNDPOSX
+#define DISPID_IHTMLSTYLE_BACKGROUNDPOSITIONY DISPID_A_BACKGROUNDPOSY
+#define DISPID_IHTMLSTYLE_WORDSPACING DISPID_A_WORDSPACING
+#define DISPID_IHTMLSTYLE_LETTERSPACING DISPID_A_LETTERSPACING
+#define DISPID_IHTMLSTYLE_TEXTDECORATION DISPID_A_TEXTDECORATION
+#define DISPID_IHTMLSTYLE_TEXTDECORATIONNONE DISPID_A_TEXTDECORATIONNONE
+#define DISPID_IHTMLSTYLE_TEXTDECORATIONUNDERLINE DISPID_A_TEXTDECORATIONUNDERLINE
+#define DISPID_IHTMLSTYLE_TEXTDECORATIONOVERLINE DISPID_A_TEXTDECORATIONOVERLINE
+#define DISPID_IHTMLSTYLE_TEXTDECORATIONLINETHROUGH DISPID_A_TEXTDECORATIONLINETHROUGH
+#define DISPID_IHTMLSTYLE_TEXTDECORATIONBLINK DISPID_A_TEXTDECORATIONBLINK
+#define DISPID_IHTMLSTYLE_VERTICALALIGN DISPID_A_VERTICALALIGN
+#define DISPID_IHTMLSTYLE_TEXTTRANSFORM DISPID_A_TEXTTRANSFORM
+#define DISPID_IHTMLSTYLE_TEXTINDENT DISPID_A_TEXTINDENT
+#define DISPID_IHTMLSTYLE_LINEHEIGHT DISPID_A_LINEHEIGHT
+#define DISPID_IHTMLSTYLE_MARGINTOP DISPID_A_MARGINTOP
+#define DISPID_IHTMLSTYLE_MARGINRIGHT DISPID_A_MARGINRIGHT
+#define DISPID_IHTMLSTYLE_MARGINBOTTOM DISPID_A_MARGINBOTTOM
+#define DISPID_IHTMLSTYLE_MARGINLEFT DISPID_A_MARGINLEFT
+#define DISPID_IHTMLSTYLE_MARGIN DISPID_A_MARGIN
+#define DISPID_IHTMLSTYLE_PADDINGTOP DISPID_A_PADDINGTOP
+#define DISPID_IHTMLSTYLE_PADDINGRIGHT DISPID_A_PADDINGRIGHT
+#define DISPID_IHTMLSTYLE_PADDINGBOTTOM DISPID_A_PADDINGBOTTOM
+#define DISPID_IHTMLSTYLE_PADDINGLEFT DISPID_A_PADDINGLEFT
+#define DISPID_IHTMLSTYLE_PADDING DISPID_A_PADDING
+#define DISPID_IHTMLSTYLE_BORDER DISPID_A_BORDER
+#define DISPID_IHTMLSTYLE_BORDERTOP DISPID_A_BORDERTOP
+#define DISPID_IHTMLSTYLE_BORDERRIGHT DISPID_A_BORDERRIGHT
+#define DISPID_IHTMLSTYLE_BORDERBOTTOM DISPID_A_BORDERBOTTOM
+#define DISPID_IHTMLSTYLE_BORDERLEFT DISPID_A_BORDERLEFT
+#define DISPID_IHTMLSTYLE_BORDERCOLOR DISPID_A_BORDERCOLOR
+#define DISPID_IHTMLSTYLE_BORDERTOPCOLOR DISPID_A_BORDERTOPCOLOR
+#define DISPID_IHTMLSTYLE_BORDERRIGHTCOLOR DISPID_A_BORDERRIGHTCOLOR
+#define DISPID_IHTMLSTYLE_BORDERBOTTOMCOLOR DISPID_A_BORDERBOTTOMCOLOR
+#define DISPID_IHTMLSTYLE_BORDERLEFTCOLOR DISPID_A_BORDERLEFTCOLOR
+#define DISPID_IHTMLSTYLE_BORDERWIDTH DISPID_A_BORDERWIDTH
+#define DISPID_IHTMLSTYLE_BORDERTOPWIDTH DISPID_A_BORDERTOPWIDTH
+#define DISPID_IHTMLSTYLE_BORDERRIGHTWIDTH DISPID_A_BORDERRIGHTWIDTH
+#define DISPID_IHTMLSTYLE_BORDERBOTTOMWIDTH DISPID_A_BORDERBOTTOMWIDTH
+#define DISPID_IHTMLSTYLE_BORDERLEFTWIDTH DISPID_A_BORDERLEFTWIDTH
+#define DISPID_IHTMLSTYLE_BORDERSTYLE DISPID_A_BORDERSTYLE
+#define DISPID_IHTMLSTYLE_BORDERTOPSTYLE DISPID_A_BORDERTOPSTYLE
+#define DISPID_IHTMLSTYLE_BORDERRIGHTSTYLE DISPID_A_BORDERRIGHTSTYLE
+#define DISPID_IHTMLSTYLE_BORDERBOTTOMSTYLE DISPID_A_BORDERBOTTOMSTYLE
+#define DISPID_IHTMLSTYLE_BORDERLEFTSTYLE DISPID_A_BORDERLEFTSTYLE
+#define DISPID_IHTMLSTYLE_STYLEFLOAT DISPID_A_FLOAT
+#define DISPID_IHTMLSTYLE_CLEAR DISPID_A_CLEAR
+#define DISPID_IHTMLSTYLE_DISPLAY DISPID_A_DISPLAY
+#define DISPID_IHTMLSTYLE_VISIBILITY DISPID_A_VISIBILITY
+#define DISPID_IHTMLSTYLE_LISTSTYLETYPE DISPID_A_LISTSTYLETYPE
+#define DISPID_IHTMLSTYLE_LISTSTYLEPOSITION DISPID_A_LISTSTYLEPOSITION
+#define DISPID_IHTMLSTYLE_LISTSTYLEIMAGE DISPID_A_LISTSTYLEIMAGE
+#define DISPID_IHTMLSTYLE_LISTSTYLE DISPID_A_LISTSTYLE
+#define DISPID_IHTMLSTYLE_WHITESPACE DISPID_A_WHITESPACE
+#define DISPID_IHTMLSTYLE_POSITION DISPID_A_POSITION
+#define DISPID_IHTMLSTYLE_ZINDEX DISPID_A_ZINDEX
+#define DISPID_IHTMLSTYLE_OVERFLOW DISPID_A_OVERFLOW
+#define DISPID_IHTMLSTYLE_PAGEBREAKBEFORE DISPID_A_PAGEBREAKBEFORE
+#define DISPID_IHTMLSTYLE_PAGEBREAKAFTER DISPID_A_PAGEBREAKAFTER
+#define DISPID_IHTMLSTYLE_CSSTEXT DISPID_A_STYLETEXT
+#define DISPID_IHTMLSTYLE_CURSOR DISPID_A_CURSOR
+#define DISPID_IHTMLSTYLE_CLIP DISPID_A_CLIP
+#define DISPID_IHTMLSTYLE_FILTER DISPID_A_FILTER
+#define DISPID_IHTMLSTYLE_WIDTH STDPROPID_XOBJ_WIDTH
+#define DISPID_IHTMLSTYLE_HEIGHT STDPROPID_XOBJ_HEIGHT
+#define DISPID_IHTMLSTYLE_TOP STDPROPID_XOBJ_TOP
+#define DISPID_IHTMLSTYLE_LEFT STDPROPID_XOBJ_LEFT
+#define DISPID_IHTMLSTYLE_TEXTALIGN STDPROPID_XOBJ_BLOCKALIGN
+#define DISPID_IHTMLSTYLE_BACKGROUNDCOLOR DISPID_BACKCOLOR
+
+/* IHTMLFiltersCollection */
+#define DISPID_IHTMLFILTERSCOLLECTION_LENGTH (DISPID_FILTERS+1)
+#define DISPID_IHTMLFILTERSCOLLECTION__NEWENUM DISPID_NEWENUM
+#define DISPID_IHTMLFILTERSCOLLECTION_ITEM DISPID_VALUE
+
+/* IHTMLSelectionObject */
+#define DISPID_IHTMLSELECTIONOBJECT_CREATERANGE (DISPID_SELECTOBJ+1)
+#define DISPID_IHTMLSELECTIONOBJECT_EMPTY (DISPID_SELECTOBJ+2)
+#define DISPID_IHTMLSELECTIONOBJECT_CLEAR (DISPID_SELECTOBJ+3)
+#define DISPID_IHTMLSELECTIONOBJECT_TYPE (DISPID_SELECTOBJ+4)
+
+/* IHTMLFramesCollection2 */
+#define DISPID_IHTMLFRAMESCOLLECTION2_ITEM 0
+#define DISPID_IHTMLFRAMESCOLLECTION2_LENGTH 1001
+
+/* IHTMLLocation */
+#define DISPID_IHTMLLOCATION_HOST (DISPID_LOCATION+1)
+#define DISPID_IHTMLLOCATION_HOSTNAME (DISPID_LOCATION+2)
+#define DISPID_IHTMLLOCATION_PORT (DISPID_LOCATION+3)
+#define DISPID_IHTMLLOCATION_PATHNAME (DISPID_LOCATION+4)
+#define DISPID_IHTMLLOCATION_SEARCH (DISPID_LOCATION+5)
+#define DISPID_IHTMLLOCATION_HASH (DISPID_LOCATION+6)
+#define DISPID_IHTMLLOCATION_RELOAD (DISPID_LOCATION+7)
+#define DISPID_IHTMLLOCATION_REPLACE (DISPID_LOCATION+8)
+#define DISPID_IHTMLLOCATION_ASSIGN (DISPID_LOCATION+9)
+#define DISPID_IHTMLLOCATION_TOSTRING (DISPID_LOCATION+10)
+#define DISPID_IHTMLLOCATION_HREF DISPID_VALUE
+#define DISPID_IHTMLLOCATION_PROTOCOL DISPID_LOCATION
+
+/* IHTMLWindow2 */
+#define DISPID_IHTMLWINDOW2_HISTORY 2
+#define DISPID_IHTMLWINDOW2_CLOSE 3
+#define DISPID_IHTMLWINDOW2_OPENER 4
+#define DISPID_IHTMLWINDOW2_NAVIGATOR 5
+#define DISPID_IHTMLWINDOW2_MOVETO 6
+#define DISPID_IHTMLWINDOW2_MOVEBY 7
+#define DISPID_IHTMLWINDOW2_RESIZETO 9
+#define DISPID_IHTMLWINDOW2_RESIZEBY 8
+#define DISPID_IHTMLWINDOW2_NAME 11
+#define DISPID_IHTMLWINDOW2_PARENT 12
+#define DISPID_IHTMLWINDOW2_OPEN 13
+#define DISPID_IHTMLWINDOW2_LOCATION 14
+#define DISPID_IHTMLWINDOW2_SELF 20
+#define DISPID_IHTMLWINDOW2_TOP 21
+#define DISPID_IHTMLWINDOW2_WINDOW 22
+#define DISPID_IHTMLWINDOW2_CLOSED 23
+#define DISPID_IHTMLWINDOW2_NAVIGATE 25
+#define DISPID_IHTMLWINDOW2_FRAMES 1100
+#define DISPID_IHTMLWINDOW2_DEFAULTSTATUS 1101
+#define DISPID_IHTMLWINDOW2_STATUS 1102
+#define DISPID_IHTMLWINDOW2_SETTIMEOUT 1103
+#define DISPID_IHTMLWINDOW2_CLEARTIMEOUT 1104
+#define DISPID_IHTMLWINDOW2_ALERT 1105
+#define DISPID_IHTMLWINDOW2_CONFIRM 1110
+#define DISPID_IHTMLWINDOW2_PROMPT 1111
+#define DISPID_IHTMLWINDOW2_IMAGE 1125
+#define DISPID_IHTMLWINDOW2_DOCUMENT 1151
+#define DISPID_IHTMLWINDOW2_EVENT 1152
+#define DISPID_IHTMLWINDOW2__NEWENUM 1153
+#define DISPID_IHTMLWINDOW2_SHOWMODALDIALOG 1154
+#define DISPID_IHTMLWINDOW2_SHOWHELP 1155
+#define DISPID_IHTMLWINDOW2_SCREEN 1156
+#define DISPID_IHTMLWINDOW2_OPTION 1157
+#define DISPID_IHTMLWINDOW2_FOCUS 1158
+#define DISPID_IHTMLWINDOW2_BLUR 1159
+#define DISPID_IHTMLWINDOW2_SCROLL 1160
+#define DISPID_IHTMLWINDOW2_CLIENTINFORMATION 1161
+#define DISPID_IHTMLWINDOW2_SETINTERVAL 1162
+#define DISPID_IHTMLWINDOW2_CLEARINTERVAL 1163
+#define DISPID_IHTMLWINDOW2_OFFSCREENBUFFERING 1164
+#define DISPID_IHTMLWINDOW2_EXECSCRIPT 1165
+#define DISPID_IHTMLWINDOW2_TOSTRING 1166
+#define DISPID_IHTMLWINDOW2_SCROLLBY 1167
+#define DISPID_IHTMLWINDOW2_SCROLLTO 1168
+#define DISPID_IHTMLWINDOW2_EXTERNAL 1169
+#define DISPID_IHTMLWINDOW2_ONFOCUS DISPID_EVPROP_ONFOCUS
+#define DISPID_IHTMLWINDOW2_ONBLUR DISPID_EVPROP_ONBLUR
+#define DISPID_IHTMLWINDOW2_ONLOAD DISPID_EVPROP_ONLOAD
+#define DISPID_IHTMLWINDOW2_ONBEFOREUNLOAD DISPID_EVPROP_ONBEFOREUNLOAD
+#define DISPID_IHTMLWINDOW2_ONUNLOAD DISPID_EVPROP_ONUNLOAD
+#define DISPID_IHTMLWINDOW2_ONHELP DISPID_EVPROP_ONHELP
+#define DISPID_IHTMLWINDOW2_ONERROR DISPID_EVPROP_ONERROR
+#define DISPID_IHTMLWINDOW2_ONRESIZE DISPID_EVPROP_ONRESIZE
+#define DISPID_IHTMLWINDOW2_ONSCROLL DISPID_EVPROP_ONSCROLL
+
+/* IHTMLImageElementFactory */
+#define DISPID_IHTMLIMAGEELEMENTFACTORY_CREATE DISPID_VALUE
+
+/* IHTMLImgElement */
+#define DISPID_IHTMLIMGELEMENT_BORDER (DISPID_IMGBASE+4)
+#define DISPID_IHTMLIMGELEMENT_VSPACE (DISPID_IMGBASE+5)
+#define DISPID_IHTMLIMGELEMENT_HSPACE (DISPID_IMGBASE+6)
+#define DISPID_IHTMLIMGELEMENT_ALT (DISPID_IMGBASE+2)
+#define DISPID_IHTMLIMGELEMENT_SRC (DISPID_IMGBASE+3)
+#define DISPID_IHTMLIMGELEMENT_LOWSRC (DISPID_IMGBASE+7)
+#define DISPID_IHTMLIMGELEMENT_VRML (DISPID_IMGBASE+8)
+#define DISPID_IHTMLIMGELEMENT_DYNSRC (DISPID_IMGBASE+9)
+#define DISPID_IHTMLIMGELEMENT_READYSTATE (DISPID_IMGBASE+12)
+#define DISPID_IHTMLIMGELEMENT_COMPLETE (DISPID_IMGBASE+10)
+#define DISPID_IHTMLIMGELEMENT_LOOP (DISPID_IMGBASE+11)
+#define DISPID_IHTMLIMGELEMENT_ISMAP (DISPID_IMG+2)
+#define DISPID_IHTMLIMGELEMENT_USEMAP (DISPID_IMG+8)
+#define DISPID_IHTMLIMGELEMENT_MIMETYPE (DISPID_IMG+10)
+#define DISPID_IHTMLIMGELEMENT_FILESIZE (DISPID_IMG+11)
+#define DISPID_IHTMLIMGELEMENT_FILECREATEDDATE (DISPID_IMG+12)
+#define DISPID_IHTMLIMGELEMENT_FILEMODIFIEDDATE (DISPID_IMG+13)
+#define DISPID_IHTMLIMGELEMENT_FILEUPDATEDDATE (DISPID_IMG+14)
+#define DISPID_IHTMLIMGELEMENT_PROTOCOL (DISPID_IMG+15)
+#define DISPID_IHTMLIMGELEMENT_HREF (DISPID_IMG+16)
+#define DISPID_IHTMLIMGELEMENT_NAMEPROP (DISPID_IMG+17)
+#define DISPID_IHTMLIMGELEMENT_ALIGN STDPROPID_XOBJ_CONTROLALIGN
+#define DISPID_IHTMLIMGELEMENT_ONLOAD DISPID_EVPROP_ONLOAD
+#define DISPID_IHTMLIMGELEMENT_ONERROR DISPID_EVPROP_ONERROR
+#define DISPID_IHTMLIMGELEMENT_ONABORT DISPID_EVPROP_ONABORT
+#define DISPID_IHTMLIMGELEMENT_NAME STDPROPID_XOBJ_NAME
+#define DISPID_IHTMLIMGELEMENT_WIDTH STDPROPID_XOBJ_WIDTH
+#define DISPID_IHTMLIMGELEMENT_HEIGHT STDPROPID_XOBJ_HEIGHT
+#define DISPID_IHTMLIMGELEMENT_START DISPID_IMGBASE+13
+
+/* IOmHistory */
+#define DISPID_IOMHISTORY_LENGTH DISPID_HISTORY
+#define DISPID_IOMHISTORY_BACK (DISPID_HISTORY+1)
+#define DISPID_IOMHISTORY_FORWARD (DISPID_HISTORY+2)
+#define DISPID_IOMHISTORY_GO (DISPID_HISTORY+3)
+
+/* IOmNavigator */
+#define DISPID_IOMNAVIGATOR_APPCODENAME DISPID_NAVIGATOR
+#define DISPID_IOMNAVIGATOR_APPNAME (DISPID_NAVIGATOR+1)
+#define DISPID_IOMNAVIGATOR_APPVERSION (DISPID_NAVIGATOR+2)
+#define DISPID_IOMNAVIGATOR_USERAGENT (DISPID_NAVIGATOR+3)
+#define DISPID_IOMNAVIGATOR_JAVAENABLED (DISPID_NAVIGATOR+4)
+#define DISPID_IOMNAVIGATOR_TAINTENABLED (DISPID_NAVIGATOR+5)
+#define DISPID_IOMNAVIGATOR_MIMETYPES (DISPID_NAVIGATOR+6)
+#define DISPID_IOMNAVIGATOR_PLUGINS (DISPID_NAVIGATOR+7)
+#define DISPID_IOMNAVIGATOR_COOKIEENABLED (DISPID_NAVIGATOR+8)
+#define DISPID_IOMNAVIGATOR_OPSPROFILE (DISPID_NAVIGATOR+9)
+#define DISPID_IOMNAVIGATOR_TOSTRING (DISPID_NAVIGATOR+10)
+#define DISPID_IOMNAVIGATOR_CPUCLASS (DISPID_NAVIGATOR+11)
+#define DISPID_IOMNAVIGATOR_SYSTEMLANGUAGE (DISPID_NAVIGATOR+12)
+#define DISPID_IOMNAVIGATOR_BROWSERLANGUAGE (DISPID_NAVIGATOR+13)
+#define DISPID_IOMNAVIGATOR_USERLANGUAGE (DISPID_NAVIGATOR+14)
+#define DISPID_IOMNAVIGATOR_PLATFORM (DISPID_NAVIGATOR+15)
+#define DISPID_IOMNAVIGATOR_APPMINORVERSION (DISPID_NAVIGATOR+16)
+#define DISPID_IOMNAVIGATOR_CONNECTIONSPEED (DISPID_NAVIGATOR+17)
+#define DISPID_IOMNAVIGATOR_ONLINE (DISPID_NAVIGATOR+18)
+#define DISPID_IOMNAVIGATOR_USERPROFILE (DISPID_NAVIGATOR+19)
+
+/* IHTMLMimeTypesCollection */
+#define DISPID_IHTMLMIMETYPESCOLLECTION_LENGTH 1
+
+/* IHTMLPluginsCollection */
+#define DISPID_IHTMLPLUGINSCOLLECTION_LENGTH 1
+#define DISPID_IHTMLPLUGINSCOLLECTION_REFRESH 2
+
+/* IHTMLOpsProfile */
+#define DISPID_IHTMLOPSPROFILE_ADDREQUEST 1
+#define DISPID_IHTMLOPSPROFILE_CLEARREQUEST 2
+#define DISPID_IHTMLOPSPROFILE_DOREQUEST 3
+#define DISPID_IHTMLOPSPROFILE_GETATTRIBUTE 4
+#define DISPID_IHTMLOPSPROFILE_SETATTRIBUTE 5
+#define DISPID_IHTMLOPSPROFILE_COMMITCHANGES 6
+#define DISPID_IHTMLOPSPROFILE_ADDREADREQUEST 7
+#define DISPID_IHTMLOPSPROFILE_DOREADREQUEST 8
+#define DISPID_IHTMLOPSPROFILE_DOWRITEREQUEST 9
+
+/* IHTMLEventObj */
+#define DISPID_IHTMLEVENTOBJ_SRCELEMENT (DISPID_EVENTOBJ+1)
+#define DISPID_IHTMLEVENTOBJ_ALTKEY (DISPID_EVENTOBJ+2)
+#define DISPID_IHTMLEVENTOBJ_CTRLKEY (DISPID_EVENTOBJ+3)
+#define DISPID_IHTMLEVENTOBJ_SHIFTKEY (DISPID_EVENTOBJ+4)
+#define DISPID_IHTMLEVENTOBJ_X (DISPID_EVENTOBJ+5)
+#define DISPID_IHTMLEVENTOBJ_Y (DISPID_EVENTOBJ+6)
+#define DISPID_IHTMLEVENTOBJ_RETURNVALUE (DISPID_EVENTOBJ+7)
+#define DISPID_IHTMLEVENTOBJ_CANCELBUBBLE (DISPID_EVENTOBJ+8)
+#define DISPID_IHTMLEVENTOBJ_FROMELEMENT (DISPID_EVENTOBJ+9)
+#define DISPID_IHTMLEVENTOBJ_TOELEMENT (DISPID_EVENTOBJ+10)
+#define DISPID_IHTMLEVENTOBJ_KEYCODE (DISPID_EVENTOBJ+11)
+#define DISPID_IHTMLEVENTOBJ_BUTTON (DISPID_EVENTOBJ+12)
+#define DISPID_IHTMLEVENTOBJ_TYPE (DISPID_EVENTOBJ+13)
+#define DISPID_IHTMLEVENTOBJ_QUALIFIER (DISPID_EVENTOBJ+14)
+#define DISPID_IHTMLEVENTOBJ_REASON (DISPID_EVENTOBJ+15)
+#define DISPID_IHTMLEVENTOBJ_CLIENTX (DISPID_EVENTOBJ+20)
+#define DISPID_IHTMLEVENTOBJ_CLIENTY (DISPID_EVENTOBJ+21)
+#define DISPID_IHTMLEVENTOBJ_OFFSETX (DISPID_EVENTOBJ+22)
+#define DISPID_IHTMLEVENTOBJ_OFFSETY (DISPID_EVENTOBJ+23)
+#define DISPID_IHTMLEVENTOBJ_SCREENX (DISPID_EVENTOBJ+24)
+#define DISPID_IHTMLEVENTOBJ_SCREENY (DISPID_EVENTOBJ+25)
+#define DISPID_IHTMLEVENTOBJ_SRCFILTER (DISPID_EVENTOBJ+26)
+
+/* IHTMLScreen */
+#define DISPID_IHTMLSCREEN_COLORDEPTH (DISPID_SCREEN+1)
+#define DISPID_IHTMLSCREEN_BUFFERDEPTH (DISPID_SCREEN+2)
+#define DISPID_IHTMLSCREEN_WIDTH (DISPID_SCREEN+3)
+#define DISPID_IHTMLSCREEN_HEIGHT (DISPID_SCREEN+4)
+#define DISPID_IHTMLSCREEN_UPDATEINTERVAL (DISPID_SCREEN+5)
+#define DISPID_IHTMLSCREEN_AVAILHEIGHT (DISPID_SCREEN+6)
+#define DISPID_IHTMLSCREEN_AVAILWIDTH (DISPID_SCREEN+7)
+#define DISPID_IHTMLSCREEN_FONTSMOOTHINGENABLED (DISPID_SCREEN+8)
+
+/* IHTMLOptionElementFactory */
+#define DISPID_IHTMLOPTIONELEMENTFACTORY_CREATE DISPID_VALUE
+
+/* IHTMLOptionElement */
+#define DISPID_IHTMLOPTIONELEMENT_SELECTED (DISPID_OPTION+1)
+#define DISPID_IHTMLOPTIONELEMENT_VALUE (DISPID_OPTION+2)
+#define DISPID_IHTMLOPTIONELEMENT_DEFAULTSELECTED (DISPID_OPTION+3)
+#define DISPID_IHTMLOPTIONELEMENT_INDEX (DISPID_OPTION+5)
+#define DISPID_IHTMLOPTIONELEMENT_TEXT (DISPID_OPTION+4)
+#define DISPID_IHTMLOPTIONELEMENT_FORM (DISPID_OPTION+6)
+
+/* IHTMLFormElement */
+#define DISPID_IHTMLFORMELEMENT_ACTION (DISPID_FORM+1)
+#define DISPID_IHTMLFORMELEMENT_DIR (DISPID_FORM+2)
+#define DISPID_IHTMLFORMELEMENT_ENCODING (DISPID_FORM+3)
+#define DISPID_IHTMLFORMELEMENT_METHOD (DISPID_FORM+4)
+#define DISPID_IHTMLFORMELEMENT_ELEMENTS (DISPID_FORM+5)
+#define DISPID_IHTMLFORMELEMENT_TARGET (DISPID_FORM+6)
+#define DISPID_IHTMLFORMELEMENT_SUBMIT (DISPID_FORM+9)
+#define DISPID_IHTMLFORMELEMENT_RESET (DISPID_FORM+10)
+#define DISPID_IHTMLFORMELEMENT_TAGS (DISPID_COLLECTION+2)
+#define DISPID_IHTMLFORMELEMENT_NAME STDPROPID_XOBJ_NAME
+#define DISPID_IHTMLFORMELEMENT_ONSUBMIT DISPID_EVPROP_ONSUBMIT
+#define DISPID_IHTMLFORMELEMENT_ONRESET DISPID_EVPROP_ONRESET
+#define DISPID_IHTMLFORMELEMENT_LENGTH DISPID_COLLECTION
+#define DISPID_IHTMLFORMELEMENT__NEWENUM DISPID_NEWENUM
+#define DISPID_IHTMLFORMELEMENT_ITEM DISPID_VALUE
+
+/* IHTMLStyleSheetsCollection */
+#define DISPID_IHTMLSTYLESHEETSCOLLECTION_LENGTH (DISPID_STYLESHEETS_COL+1)
+#define DISPID_IHTMLSTYLESHEETSCOLLECTION__NEWENUM DISPID_NEWENUM
+#define DISPID_IHTMLSTYLESHEETSCOLLECTION_ITEM DISPID_VALUE
+
+/* IHTMLStyleSheet */
+#define DISPID_IHTMLSTYLESHEET_TITLE (DISPID_STYLESHEET+1)
+#define DISPID_IHTMLSTYLESHEET_PARENTSTYLESHEET (DISPID_STYLESHEET+2)
+#define DISPID_IHTMLSTYLESHEET_OWNINGELEMENT (DISPID_STYLESHEET+3)
+#define DISPID_IHTMLSTYLESHEET_READONLY (DISPID_STYLESHEET+4)
+#define DISPID_IHTMLSTYLESHEET_IMPORTS (DISPID_STYLESHEET+5)
+#define DISPID_IHTMLSTYLESHEET_HREF (DISPID_STYLESHEET+6)
+#define DISPID_IHTMLSTYLESHEET_TYPE (DISPID_STYLESHEET+7)
+#define DISPID_IHTMLSTYLESHEET_ID (DISPID_STYLESHEET+8)
+#define DISPID_IHTMLSTYLESHEET_ADDIMPORT (DISPID_STYLESHEET+9)
+#define DISPID_IHTMLSTYLESHEET_ADDRULE (DISPID_STYLESHEET+10)
+#define DISPID_IHTMLSTYLESHEET_REMOVEIMPORT (DISPID_STYLESHEET+11)
+#define DISPID_IHTMLSTYLESHEET_REMOVERULE (DISPID_STYLESHEET+12)
+#define DISPID_IHTMLSTYLESHEET_MEDIA (DISPID_STYLESHEET+13)
+#define DISPID_IHTMLSTYLESHEET_CSSTEXT (DISPID_STYLESHEET+14)
+#define DISPID_IHTMLSTYLESHEET_RULES (DISPID_STYLESHEET+15)
+#define DISPID_IHTMLSTYLESHEET_DISABLED STDPROPID_XOBJ_DISABLED
+
+/* IHTMLStyleSheetRulesCollection */
+#define DISPID_IHTMLSTYLESHEETRULESCOLLECTION_LENGTH (DISPID_STYLERULES_COL+1)
+#define DISPID_IHTMLSTYLESHEETRULESCOLLECTION_ITEM DISPID_VALUE
+
+/* IHTMLStyleSheetRule */
+#define DISPID_IHTMLSTYLESHEETRULE_SELECTORTEXT (DISPID_STYLERULE+1)
+#define DISPID_IHTMLSTYLESHEETRULE_READONLY (DISPID_STYLERULE+2)
+#define DISPID_IHTMLSTYLESHEETRULE_STYLE STDPROPID_XOBJ_STYLE
+
+/* IHTMLRuleStyle */
+#define DISPID_IHTMLRULESTYLE_SETATTRIBUTE (DISPID_HTMLOBJECT+1)
+#define DISPID_IHTMLRULESTYLE_GETATTRIBUTE (DISPID_HTMLOBJECT+2)
+#define DISPID_IHTMLRULESTYLE_REMOVEATTRIBUTE (DISPID_HTMLOBJECT+3)
+#define DISPID_IHTMLRULESTYLE_FONTFAMILY DISPID_A_FONTFACE
+#define DISPID_IHTMLRULESTYLE_FONTSTYLE DISPID_A_FONTSTYLE
+#define DISPID_IHTMLRULESTYLE_FONTVARIANT DISPID_A_FONTVARIANT
+#define DISPID_IHTMLRULESTYLE_FONTWEIGHT DISPID_A_FONTWEIGHT
+#define DISPID_IHTMLRULESTYLE_FONTSIZE DISPID_A_FONTSIZE
+#define DISPID_IHTMLRULESTYLE_FONT DISPID_A_FONT
+#define DISPID_IHTMLRULESTYLE_COLOR DISPID_A_COLOR
+#define DISPID_IHTMLRULESTYLE_BACKGROUND DISPID_A_BACKGROUND
+#define DISPID_IHTMLRULESTYLE_BACKGROUNDIMAGE DISPID_A_BACKGROUNDIMAGE
+#define DISPID_IHTMLRULESTYLE_BACKGROUNDREPEAT DISPID_A_BACKGROUNDREPEAT
+#define DISPID_IHTMLRULESTYLE_BACKGROUNDATTACHMENT DISPID_A_BACKGROUNDATTACHMENT
+#define DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITION DISPID_A_BACKGROUNDPOSITION
+#define DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITIONX DISPID_A_BACKGROUNDPOSX
+#define DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITIONY DISPID_A_BACKGROUNDPOSY
+#define DISPID_IHTMLRULESTYLE_WORDSPACING DISPID_A_WORDSPACING
+#define DISPID_IHTMLRULESTYLE_LETTERSPACING DISPID_A_LETTERSPACING
+#define DISPID_IHTMLRULESTYLE_TEXTDECORATION DISPID_A_TEXTDECORATION
+#define DISPID_IHTMLRULESTYLE_TEXTDECORATIONNONE DISPID_A_TEXTDECORATIONNONE
+#define DISPID_IHTMLRULESTYLE_TEXTDECORATIONUNDERLINE DISPID_A_TEXTDECORATIONUNDERLINE
+#define DISPID_IHTMLRULESTYLE_TEXTDECORATIONOVERLINE DISPID_A_TEXTDECORATIONOVERLINE
+#define DISPID_IHTMLRULESTYLE_TEXTDECORATIONLINETHROUGH DISPID_A_TEXTDECORATIONLINETHROUGH
+#define DISPID_IHTMLRULESTYLE_TEXTDECORATIONBLINK DISPID_A_TEXTDECORATIONBLINK
+#define DISPID_IHTMLRULESTYLE_VERTICALALIGN DISPID_A_VERTICALALIGN
+#define DISPID_IHTMLRULESTYLE_TEXTTRANSFORM DISPID_A_TEXTTRANSFORM
+#define DISPID_IHTMLRULESTYLE_TEXTINDENT DISPID_A_TEXTINDENT
+#define DISPID_IHTMLRULESTYLE_LINEHEIGHT DISPID_A_LINEHEIGHT
+#define DISPID_IHTMLRULESTYLE_MARGINTOP DISPID_A_MARGINTOP
+#define DISPID_IHTMLRULESTYLE_MARGINRIGHT DISPID_A_MARGINRIGHT
+#define DISPID_IHTMLRULESTYLE_MARGINBOTTOM DISPID_A_MARGINBOTTOM
+#define DISPID_IHTMLRULESTYLE_MARGINLEFT DISPID_A_MARGINLEFT
+#define DISPID_IHTMLRULESTYLE_MARGIN DISPID_A_MARGIN
+#define DISPID_IHTMLRULESTYLE_PADDINGTOP DISPID_A_PADDINGTOP
+#define DISPID_IHTMLRULESTYLE_PADDINGRIGHT DISPID_A_PADDINGRIGHT
+#define DISPID_IHTMLRULESTYLE_PADDINGBOTTOM DISPID_A_PADDINGBOTTOM
+#define DISPID_IHTMLRULESTYLE_PADDINGLEFT DISPID_A_PADDINGLEFT
+#define DISPID_IHTMLRULESTYLE_PADDING DISPID_A_PADDING
+#define DISPID_IHTMLRULESTYLE_BORDER DISPID_A_BORDER
+#define DISPID_IHTMLRULESTYLE_BORDERTOP DISPID_A_BORDERTOP
+#define DISPID_IHTMLRULESTYLE_BORDERRIGHT DISPID_A_BORDERRIGHT
+#define DISPID_IHTMLRULESTYLE_BORDERBOTTOM DISPID_A_BORDERBOTTOM
+#define DISPID_IHTMLRULESTYLE_BORDERLEFT DISPID_A_BORDERLEFT
+#define DISPID_IHTMLRULESTYLE_BORDERCOLOR DISPID_A_BORDERCOLOR
+#define DISPID_IHTMLRULESTYLE_BORDERTOPCOLOR DISPID_A_BORDERTOPCOLOR
+#define DISPID_IHTMLRULESTYLE_BORDERRIGHTCOLOR DISPID_A_BORDERRIGHTCOLOR
+#define DISPID_IHTMLRULESTYLE_BORDERBOTTOMCOLOR DISPID_A_BORDERBOTTOMCOLOR
+#define DISPID_IHTMLRULESTYLE_BORDERLEFTCOLOR DISPID_A_BORDERLEFTCOLOR
+#define DISPID_IHTMLRULESTYLE_BORDERWIDTH DISPID_A_BORDERWIDTH
+#define DISPID_IHTMLRULESTYLE_BORDERTOPWIDTH DISPID_A_BORDERTOPWIDTH
+#define DISPID_IHTMLRULESTYLE_BORDERRIGHTWIDTH DISPID_A_BORDERRIGHTWIDTH
+#define DISPID_IHTMLRULESTYLE_BORDERBOTTOMWIDTH DISPID_A_BORDERBOTTOMWIDTH
+#define DISPID_IHTMLRULESTYLE_BORDERLEFTWIDTH DISPID_A_BORDERLEFTWIDTH
+#define DISPID_IHTMLRULESTYLE_BORDERSTYLE DISPID_A_BORDERSTYLE
+#define DISPID_IHTMLRULESTYLE_BORDERTOPSTYLE DISPID_A_BORDERTOPSTYLE
+#define DISPID_IHTMLRULESTYLE_BORDERRIGHTSTYLE DISPID_A_BORDERRIGHTSTYLE
+#define DISPID_IHTMLRULESTYLE_BORDERBOTTOMSTYLE DISPID_A_BORDERBOTTOMSTYLE
+#define DISPID_IHTMLRULESTYLE_BORDERLEFTSTYLE DISPID_A_BORDERLEFTSTYLE
+#define DISPID_IHTMLRULESTYLE_STYLEFLOAT DISPID_A_FLOAT
+#define DISPID_IHTMLRULESTYLE_CLEAR DISPID_A_CLEAR
+#define DISPID_IHTMLRULESTYLE_DISPLAY DISPID_A_DISPLAY
+#define DISPID_IHTMLRULESTYLE_VISIBILITY DISPID_A_VISIBILITY
+#define DISPID_IHTMLRULESTYLE_LISTSTYLETYPE DISPID_A_LISTSTYLETYPE
+#define DISPID_IHTMLRULESTYLE_LISTSTYLEPOSITION DISPID_A_LISTSTYLEPOSITION
+#define DISPID_IHTMLRULESTYLE_LISTSTYLEIMAGE DISPID_A_LISTSTYLEIMAGE
+#define DISPID_IHTMLRULESTYLE_LISTSTYLE DISPID_A_LISTSTYLE
+#define DISPID_IHTMLRULESTYLE_WHITESPACE DISPID_A_WHITESPACE
+#define DISPID_IHTMLRULESTYLE_POSITION DISPID_A_POSITION
+#define DISPID_IHTMLRULESTYLE_ZINDEX DISPID_A_ZINDEX
+#define DISPID_IHTMLRULESTYLE_OVERFLOW DISPID_A_OVERFLOW
+#define DISPID_IHTMLRULESTYLE_PAGEBREAKBEFORE DISPID_A_PAGEBREAKBEFORE
+#define DISPID_IHTMLRULESTYLE_PAGEBREAKAFTER DISPID_A_PAGEBREAKAFTER
+#define DISPID_IHTMLRULESTYLE_CSSTEXT DISPID_A_STYLETEXT
+#define DISPID_IHTMLRULESTYLE_CURSOR DISPID_A_CURSOR
+#define DISPID_IHTMLRULESTYLE_CLIP DISPID_A_CLIP
+#define DISPID_IHTMLRULESTYLE_FILTER DISPID_A_FILTER
+#define DISPID_IHTMLRULESTYLE_TOP STDPROPID_XOBJ_TOP
+#define DISPID_IHTMLRULESTYLE_LEFT STDPROPID_XOBJ_LEFT
+#define DISPID_IHTMLRULESTYLE_WIDTH STDPROPID_XOBJ_WIDTH
+#define DISPID_IHTMLRULESTYLE_HEIGHT STDPROPID_XOBJ_HEIGHT
+#define DISPID_IHTMLRULESTYLE_TEXTALIGN STDPROPID_XOBJ_BLOCKALIGN
+#define DISPID_IHTMLRULESTYLE_BACKGROUNDCOLOR DISPID_BACKCOLOR
+
+#endif /* __MSHTMDID_H__ */
diff --git a/include/mshtml.idl b/include/mshtml.idl
new file mode 100644
index 00000000000..270fa60a27c
--- /dev/null
+++ b/include/mshtml.idl
@@ -0,0 +1,2991 @@
+/*
+ * Copyright 2004 Jacek Caban
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include
+/* #include */
+#include
+
+import "ocidl.idl";
+/* import "dimm.idl"; */
+
+cpp_quote("#include ")
+
+interface IHTMLElement;
+interface IHTMLDocument2;
+interface IHTMLStyleSheetsCollection;
+
+/*****************************************************************************
+ * IHTMLStyle interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F25E-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLStyle : IDispatch
+{
+ [propput, id(DISPID_IHTMLSTYLE_FONTFAMILY)]
+ HRESULT fontFamily([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_FONTFAMILY)]
+ HRESULT fontFamily([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_FONTSTYLE)]
+ HRESULT fontStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_FONTSTYLE)]
+ HRESULT fontStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_FONTVARIANT)]
+ HRESULT fontVariant([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_FONTVARIANT)]
+ HRESULT fontVariant([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_FONTWEIGHT)]
+ HRESULT fontWeight([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_FONTWEIGHT)]
+ HRESULT fontWeight([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_FONTSIZE)]
+ HRESULT fontSize([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_FONTSIZE)]
+ HRESULT fontSize([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_FONT)]
+ HRESULT font([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_FONT)]
+ HRESULT font([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_COLOR)]
+ HRESULT color([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_COLOR)]
+ HRESULT color([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BACKGROUND)]
+ HRESULT background([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BACKGROUND)]
+ HRESULT background([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BACKGROUNDCOLOR)]
+ HRESULT backgroundColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BACKGROUNDCOLOR)]
+ HRESULT backgroundColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BACKGROUNDIMAGE)]
+ HRESULT backgroundImage([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BACKGROUNDIMAGE)]
+ HRESULT backgroundImage([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BACKGROUNDREPEAT)]
+ HRESULT backgroundRepeat([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BACKGROUNDREPEAT)]
+ HRESULT backgroundRepeat([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BACKGROUNDATTACHMENT)]
+ HRESULT backgroundAttachment([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BACKGROUNDATTACHMENT)]
+ HRESULT backgroundAttachment([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITION)]
+ HRESULT backgroundPosition([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITION)]
+ HRESULT backgroundPosition([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITIONX)]
+ HRESULT backgroundPositionX([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITIONX)]
+ HRESULT backgroundPositionX([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITIONY)]
+ HRESULT backgroundPositionY([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITIONY)]
+ HRESULT backgroundPositionY([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_WORDSPACING)]
+ HRESULT wordSpacing([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_WORDSPACING)]
+ HRESULT wordSpacing([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_LETTERSPACING)]
+ HRESULT letterSpacing([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_LETTERSPACING)]
+ HRESULT letterSpacing([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_TEXTDECORATION)]
+ HRESULT textDecoration([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_TEXTDECORATION)]
+ HRESULT textDecoration([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_TEXTDECORATIONNONE)]
+ HRESULT textDecorationNone([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLSTYLE_TEXTDECORATIONNONE)]
+ HRESULT textDecorationNone([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_TEXTDECORATIONUNDERLINE)]
+ HRESULT textDecorationUnderline([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLSTYLE_TEXTDECORATIONUNDERLINE)]
+ HRESULT textDecorationUnderline([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_TEXTDECORATIONOVERLINE)]
+ HRESULT textDecorationOverline([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLSTYLE_TEXTDECORATIONOVERLINE)]
+ HRESULT textDecorationOverline([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_TEXTDECORATIONLINETHROUGH)]
+ HRESULT textDecorationLineThrough([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLSTYLE_TEXTDECORATIONLINETHROUGH)]
+ HRESULT textDecorationLineThrough([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_TEXTDECORATIONBLINK)]
+ HRESULT textDecorationBlink([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLSTYLE_TEXTDECORATIONBLINK)]
+ HRESULT textDecorationBlink([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_VERTICALALIGN)]
+ HRESULT verticalAlign([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_VERTICALALIGN)]
+ HRESULT verticalAlign([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_TEXTTRANSFORM)]
+ HRESULT textTransform([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_TEXTTRANSFORM)]
+ HRESULT textTransform([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_TEXTALIGN)]
+ HRESULT textAlign([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_TEXTALIGN)]
+ HRESULT textAlign([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_TEXTINDENT)]
+ HRESULT textIndent([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_TEXTINDENT)]
+ HRESULT textIndent([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_LINEHEIGHT)]
+ HRESULT lineHeight([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_LINEHEIGHT)]
+ HRESULT lineHeight([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_MARGINTOP)]
+ HRESULT marginTop([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_MARGINTOP)]
+ HRESULT marginTop([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_MARGINRIGHT)]
+ HRESULT marginRight([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_MARGINRIGHT)]
+ HRESULT marginRight([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_MARGINBOTTOM)]
+ HRESULT marginBottom([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_MARGINBOTTOM)]
+ HRESULT marginBottom([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_MARGINLEFT)]
+ HRESULT marginLeft([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_MARGINLEFT)]
+ HRESULT marginLeft([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_MARGIN)]
+ HRESULT margin([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_MARGIN)]
+ HRESULT margin([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_PADDINGTOP)]
+ HRESULT paddingTop([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_PADDINGTOP)]
+ HRESULT paddingTop([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_PADDINGRIGHT)]
+ HRESULT paddingRight([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_PADDINGRIGHT)]
+ HRESULT paddingRight([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_PADDINGBOTTOM)]
+ HRESULT paddingBottom([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_PADDINGBOTTOM)]
+ HRESULT paddingBottom([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_PADDINGLEFT)]
+ HRESULT paddingLeft([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_PADDINGLEFT)]
+ HRESULT paddingLeft([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_PADDING)]
+ HRESULT padding([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_PADDING)]
+ HRESULT padding([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDER)]
+ HRESULT border([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDER)]
+ HRESULT border([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERTOP)]
+ HRESULT borderTop([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERTOP)]
+ HRESULT borderTop([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERRIGHT)]
+ HRESULT borderRight([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERRIGHT)]
+ HRESULT borderRight([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERBOTTOM)]
+ HRESULT borderBottom([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERBOTTOM)]
+ HRESULT borderBottom([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERLEFT)]
+ HRESULT borderLeft([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERLEFT)]
+ HRESULT borderLeft([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERCOLOR)]
+ HRESULT borderColor([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERCOLOR)]
+ HRESULT borderColor([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERTOPCOLOR)]
+ HRESULT borderTopColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERTOPCOLOR)]
+ HRESULT borderTopColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERRIGHTCOLOR)]
+ HRESULT borderRightColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERRIGHTCOLOR)]
+ HRESULT borderRightColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERBOTTOMCOLOR)]
+ HRESULT borderBottomColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERBOTTOMCOLOR)]
+ HRESULT borderBottomColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERLEFTCOLOR)]
+ HRESULT borderLeftColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERLEFTCOLOR)]
+ HRESULT borderLeftColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERWIDTH)]
+ HRESULT borderWidth([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERWIDTH)]
+ HRESULT borderWidth([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERTOPWIDTH)]
+ HRESULT borderTopWidth([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERTOPWIDTH)]
+ HRESULT borderTopWidth([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERRIGHTWIDTH)]
+ HRESULT borderRightWidth([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERRIGHTWIDTH)]
+ HRESULT borderRightWidth([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERBOTTOMWIDTH)]
+ HRESULT borderBottomWidth([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERBOTTOMWIDTH)]
+ HRESULT borderBottomWidth([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERLEFTWIDTH)]
+ HRESULT borderLeftWidth([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERLEFTWIDTH)]
+ HRESULT borderLeftWidth([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERSTYLE)]
+ HRESULT borderStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERSTYLE)]
+ HRESULT borderStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERTOPSTYLE)]
+ HRESULT borderTopStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERTOPSTYLE)]
+ HRESULT borderTopStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERRIGHTSTYLE)]
+ HRESULT borderRightStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERRIGHTSTYLE)]
+ HRESULT borderRightStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERBOTTOMSTYLE)]
+ HRESULT borderBottomStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERBOTTOMSTYLE)]
+ HRESULT borderBottomStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_BORDERLEFTSTYLE)]
+ HRESULT borderLeftStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_BORDERLEFTSTYLE)]
+ HRESULT borderLeftStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_WIDTH)]
+ HRESULT width([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_WIDTH)]
+ HRESULT width([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_HEIGHT)]
+ HRESULT height([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_HEIGHT)]
+ HRESULT height([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_STYLEFLOAT)]
+ HRESULT styleFloat([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_STYLEFLOAT)]
+ HRESULT styleFloat([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_CLEAR)]
+ HRESULT clear([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_CLEAR)]
+ HRESULT clear([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_DISPLAY)]
+ HRESULT display([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_DISPLAY)]
+ HRESULT display([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_VISIBILITY)]
+ HRESULT visibility([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_VISIBILITY)]
+ HRESULT visibility([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_LISTSTYLETYPE)]
+ HRESULT listStyleType([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_LISTSTYLETYPE)]
+ HRESULT listStyleType([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_LISTSTYLEPOSITION)]
+ HRESULT listStylePosition([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_LISTSTYLEPOSITION)]
+ HRESULT listStylePosition([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_LISTSTYLEIMAGE)]
+ HRESULT listStyleImage([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_LISTSTYLEIMAGE)]
+ HRESULT listStyleImage([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_LISTSTYLE)]
+ HRESULT listStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_LISTSTYLE)]
+ HRESULT listStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_WHITESPACE)]
+ HRESULT whiteSpace([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_WHITESPACE)]
+ HRESULT whiteSpace([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_TOP)]
+ HRESULT top([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_TOP)]
+ HRESULT top([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_LEFT)]
+ HRESULT left([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_LEFT)]
+ HRESULT left([retval, out] VARIANT *p);
+
+ [propget, id(DISPID_IHTMLSTYLE_POSITION)]
+ HRESULT position([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_ZINDEX)]
+ HRESULT zIndex([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLSTYLE_ZINDEX)]
+ HRESULT zIndex([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_OVERFLOW)]
+ HRESULT overflow([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_OVERFLOW)]
+ HRESULT overflow([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_PAGEBREAKBEFORE)]
+ HRESULT pageBreakBefore([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_PAGEBREAKBEFORE)]
+ HRESULT pageBreakBefore([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_PAGEBREAKAFTER)]
+ HRESULT pageBreakAfter([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_PAGEBREAKAFTER)]
+ HRESULT pageBreakAfter([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_CSSTEXT)]
+ HRESULT cssText([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_CSSTEXT)]
+ HRESULT cssText([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_PIXELTOP)]
+ HRESULT pixelTop([in] long v);
+
+ [propget, id(DISPID_IHTMLSTYLE_PIXELTOP)]
+ HRESULT pixelTop([retval, out] long *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_PIXELLEFT)]
+ HRESULT pixelLeft([in] long v);
+
+ [propget, id(DISPID_IHTMLSTYLE_PIXELLEFT)]
+ HRESULT pixelLeft([retval, out] long *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_PIXELWIDTH)]
+ HRESULT pixelWidth([in] long v);
+
+ [propget, id(DISPID_IHTMLSTYLE_PIXELWIDTH)]
+ HRESULT pixelWidth([retval, out] long *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_PIXELHEIGHT)]
+ HRESULT pixelHeight([in] long v);
+
+ [propget, id(DISPID_IHTMLSTYLE_PIXELHEIGHT)]
+ HRESULT pixelHeight([retval, out] long *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_POSTOP)]
+ HRESULT posTop([in] float v);
+
+ [propget, id(DISPID_IHTMLSTYLE_POSTOP)]
+ HRESULT posTop([retval, out] float *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_POSLEFT)]
+ HRESULT posLeft([in] float v);
+
+ [propget, id(DISPID_IHTMLSTYLE_POSLEFT)]
+ HRESULT posLeft([retval, out] float *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_POSWIDTH)]
+ HRESULT posWidth([in] float v);
+
+ [propget, id(DISPID_IHTMLSTYLE_POSWIDTH)]
+ HRESULT posWidth([retval, out] float *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_POSHEIGHT)]
+ HRESULT posHeight([in] float v);
+
+ [propget, id(DISPID_IHTMLSTYLE_POSHEIGHT)]
+ HRESULT posHeight([retval, out] float *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_CURSOR)]
+ HRESULT cursor([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_CURSOR)]
+ HRESULT cursor([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_CLIP)]
+ HRESULT clip([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_CLIP)]
+ HRESULT clip([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLE_FILTER)]
+ HRESULT filter([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLE_FILTER)]
+ HRESULT filter([retval, out] BSTR *p);
+
+ [id(DISPID_IHTMLSTYLE_SETATTRIBUTE)]
+ HRESULT setAttribute(
+ [in] BSTR strAttributeName,
+ [in] VARIANT AttributeValue,
+ [defaultvalue(1), in] LONG lFlags);
+
+ [id(DISPID_IHTMLSTYLE_GETATTRIBUTE)]
+ HRESULT getAttribute(
+ [in] BSTR strAttributeName,
+ [defaultvalue(0), in] LONG lFlags,
+ [retval, out] VARIANT *AttributeValue);
+
+ [id(DISPID_IHTMLSTYLE_REMOVEATTRIBUTE)]
+ HRESULT removeAttribute(
+ [in] BSTR strAttributeName,
+ [defaultvalue(1), in]
+ LONG lFlags,
+ [retval, out] VARIANT_BOOL *pfSuccess);
+
+ [id(DISPID_IHTMLSTYLE_TOSTRING)]
+ HRESULT toString([retval, out] BSTR *String);
+}
+
+/*****************************************************************************
+ * IHTMLRuleStyle interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F3CF-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLRuleStyle : IDispatch
+{
+ [propput, id(DISPID_IHTMLRULESTYLE_FONTFAMILY)]
+ HRESULT fontFamily([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_FONTFAMILY)]
+ HRESULT fontFamily([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_FONTSTYLE)]
+ HRESULT fontStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_FONTSTYLE)]
+ HRESULT fontStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_FONTVARIANT)]
+ HRESULT fontVariant([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_FONTVARIANT)]
+ HRESULT fontVariant([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_FONTWEIGHT)]
+ HRESULT fontWeight([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_FONTWEIGHT)]
+ HRESULT fontWeight([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_FONTSIZE)]
+ HRESULT fontSize([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_FONTSIZE)]
+ HRESULT fontSize([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_FONT)]
+ HRESULT font([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_FONT)]
+ HRESULT font([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_COLOR)]
+ HRESULT color([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_COLOR)]
+ HRESULT color([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BACKGROUND)]
+ HRESULT background([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BACKGROUND)]
+ HRESULT background([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDCOLOR)]
+ HRESULT backgroundColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDCOLOR)]
+ HRESULT backgroundColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDIMAGE)]
+ HRESULT backgroundImage([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDIMAGE)]
+ HRESULT backgroundImage([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDREPEAT)]
+ HRESULT backgroundRepeat([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDREPEAT)]
+ HRESULT backgroundRepeat([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDATTACHMENT)]
+ HRESULT backgroundAttachment([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDATTACHMENT)]
+ HRESULT backgroundAttachment([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITION)]
+ HRESULT backgroundPosition([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITION)]
+ HRESULT backgroundPosition([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITIONX)]
+ HRESULT backgroundPositionX([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITIONX)]
+ HRESULT backgroundPositionX([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITIONY)]
+ HRESULT backgroundPositionY([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITIONY)]
+ HRESULT backgroundPositionY([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_WORDSPACING)]
+ HRESULT wordSpacing([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_WORDSPACING)]
+ HRESULT wordSpacing([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_LETTERSPACING)]
+ HRESULT letterSpacing([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_LETTERSPACING)]
+ HRESULT letterSpacing([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATION)]
+ HRESULT textDecoration([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATION)]
+ HRESULT textDecoration([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONNONE)]
+ HRESULT textDecorationNone([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONNONE)]
+ HRESULT textDecorationNone([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONUNDERLINE)]
+ HRESULT textDecorationUnderline([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONUNDERLINE)]
+ HRESULT textDecorationUnderline([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONOVERLINE)]
+ HRESULT textDecorationOverline([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONOVERLINE)]
+ HRESULT textDecorationOverline([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONLINETHROUGH)]
+ HRESULT textDecorationLineThrough([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONLINETHROUGH)]
+ HRESULT textDecorationLineThrough([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONBLINK)]
+ HRESULT textDecorationBlink([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONBLINK)]
+ HRESULT textDecorationBlink([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_VERTICALALIGN)]
+ HRESULT verticalAlign([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_VERTICALALIGN)]
+ HRESULT verticalAlign([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_TEXTTRANSFORM)]
+ HRESULT textTransform([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_TEXTTRANSFORM)]
+ HRESULT textTransform([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_TEXTALIGN)]
+ HRESULT textAlign([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_TEXTALIGN)]
+ HRESULT textAlign([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_TEXTINDENT)]
+ HRESULT textIndent([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_TEXTINDENT)]
+ HRESULT textIndent([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_LINEHEIGHT)]
+ HRESULT lineHeight([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_LINEHEIGHT)]
+ HRESULT lineHeight([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_MARGINTOP)]
+ HRESULT marginTop([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_MARGINTOP)]
+ HRESULT marginTop([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_MARGINRIGHT)]
+ HRESULT marginRight([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_MARGINRIGHT)]
+ HRESULT marginRight([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_MARGINBOTTOM)]
+ HRESULT marginBottom([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_MARGINBOTTOM)]
+ HRESULT marginBottom([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_MARGINLEFT)]
+ HRESULT marginLeft([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_MARGINLEFT)]
+ HRESULT marginLeft([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_MARGIN)]
+ HRESULT margin([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_MARGIN)]
+ HRESULT margin([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_PADDINGTOP)]
+ HRESULT paddingTop([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_PADDINGTOP)]
+ HRESULT paddingTop([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_PADDINGRIGHT)]
+ HRESULT paddingRight([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_PADDINGRIGHT)]
+ HRESULT paddingRight([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_PADDINGBOTTOM)]
+ HRESULT paddingBottom([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_PADDINGBOTTOM)]
+ HRESULT paddingBottom([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_PADDINGLEFT)]
+ HRESULT paddingLeft([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_PADDINGLEFT)]
+ HRESULT paddingLeft([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_PADDING)]
+ HRESULT padding([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_PADDING)]
+ HRESULT padding([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDER)]
+ HRESULT border([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDER)]
+ HRESULT border([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERTOP)]
+ HRESULT borderTop([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERTOP)]
+ HRESULT borderTop([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERRIGHT)]
+ HRESULT borderRight([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERRIGHT)]
+ HRESULT borderRight([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOM)]
+ HRESULT borderBottom([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOM)]
+ HRESULT borderBottom([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERLEFT)]
+ HRESULT borderLeft([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERLEFT)]
+ HRESULT borderLeft([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERCOLOR)]
+ HRESULT borderColor([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERCOLOR)]
+ HRESULT borderColor([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERTOPCOLOR)]
+ HRESULT borderTopColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERTOPCOLOR)]
+ HRESULT borderTopColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTCOLOR)]
+ HRESULT borderRightColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTCOLOR)]
+ HRESULT borderRightColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMCOLOR)]
+ HRESULT borderBottomColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMCOLOR)]
+ HRESULT borderBottomColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERLEFTCOLOR)]
+ HRESULT borderLeftColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERLEFTCOLOR)]
+ HRESULT borderLeftColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERWIDTH)]
+ HRESULT borderWidth([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERWIDTH)]
+ HRESULT borderWidth([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERTOPWIDTH)]
+ HRESULT borderTopWidth([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERTOPWIDTH)]
+ HRESULT borderTopWidth([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTWIDTH)]
+ HRESULT borderRightWidth([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTWIDTH)]
+ HRESULT borderRightWidth([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMWIDTH)]
+ HRESULT borderBottomWidth([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMWIDTH)]
+ HRESULT borderBottomWidth([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERLEFTWIDTH)]
+ HRESULT borderLeftWidth([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERLEFTWIDTH)]
+ HRESULT borderLeftWidth([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERSTYLE)]
+ HRESULT borderStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERSTYLE)]
+ HRESULT borderStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERTOPSTYLE)]
+ HRESULT borderTopStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERTOPSTYLE)]
+ HRESULT borderTopStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTSTYLE)]
+ HRESULT borderRightStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTSTYLE)]
+ HRESULT borderRightStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMSTYLE)]
+ HRESULT borderBottomStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMSTYLE)]
+ HRESULT borderBottomStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_BORDERLEFTSTYLE)]
+ HRESULT borderLeftStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_BORDERLEFTSTYLE)]
+ HRESULT borderLeftStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_WIDTH)]
+ HRESULT width([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_WIDTH)]
+ HRESULT width([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_HEIGHT)]
+ HRESULT height([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_HEIGHT)]
+ HRESULT height([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_STYLEFLOAT)]
+ HRESULT styleFloat([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_STYLEFLOAT)]
+ HRESULT styleFloat([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_CLEAR)]
+ HRESULT clear([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_CLEAR)]
+ HRESULT clear([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_DISPLAY)]
+ HRESULT display([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_DISPLAY)]
+ HRESULT display([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_VISIBILITY)]
+ HRESULT visibility([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_VISIBILITY)]
+ HRESULT visibility([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_LISTSTYLETYPE)]
+ HRESULT listStyleType([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_LISTSTYLETYPE)]
+ HRESULT listStyleType([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_LISTSTYLEPOSITION)]
+ HRESULT listStylePosition([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_LISTSTYLEPOSITION)]
+ HRESULT listStylePosition([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_LISTSTYLEIMAGE)]
+ HRESULT listStyleImage([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_LISTSTYLEIMAGE)]
+ HRESULT listStyleImage([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_LISTSTYLE)]
+ HRESULT listStyle([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_LISTSTYLE)]
+ HRESULT listStyle([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_WHITESPACE)]
+ HRESULT whiteSpace([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_WHITESPACE)]
+ HRESULT whiteSpace([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_TOP)]
+ HRESULT top([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_TOP)]
+ HRESULT top([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_LEFT)]
+ HRESULT left([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_LEFT)]
+ HRESULT left([retval, out] VARIANT *p);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_POSITION)]
+ HRESULT position([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_ZINDEX)]
+ HRESULT zIndex([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_ZINDEX)]
+ HRESULT zIndex([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_OVERFLOW)]
+ HRESULT overflow([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_OVERFLOW)]
+ HRESULT overflow([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_PAGEBREAKBEFORE)]
+ HRESULT pageBreakBefore([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_PAGEBREAKBEFORE)]
+ HRESULT pageBreakBefore([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_PAGEBREAKAFTER)]
+ HRESULT pageBreakAfter([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_PAGEBREAKAFTER)]
+ HRESULT pageBreakAfter([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_CSSTEXT)]
+ HRESULT cssText([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_CSSTEXT)]
+ HRESULT cssText([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_CURSOR)]
+ HRESULT cursor([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_CURSOR)]
+ HRESULT cursor([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_CLIP)]
+ HRESULT clip([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_CLIP)]
+ HRESULT clip([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLRULESTYLE_FILTER)]
+ HRESULT filter([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLRULESTYLE_FILTER)]
+ HRESULT filter([retval, out] BSTR *p);
+
+ [id(DISPID_IHTMLRULESTYLE_SETATTRIBUTE)]
+ HRESULT setAttribute(
+ [in] BSTR strAttributeName,
+ [in] VARIANT AttributeValue,
+ [defaultvalue(1), in] LONG lFlags);
+
+ [id(DISPID_IHTMLRULESTYLE_GETATTRIBUTE)]
+ HRESULT getAttribute(
+ [in] BSTR strAttributeName,
+ [defaultvalue(0), in] LONG lFlags,
+ [retval, out] VARIANT *AttributeValue);
+
+ [id(DISPID_IHTMLRULESTYLE_REMOVEATTRIBUTE)]
+ HRESULT removeAttribute(
+ [in] BSTR strAttributeName,
+ [defaultvalue(1), in] LONG lFlags,
+ [retval, out] VARIANT_BOOL *pfSuccess);
+}
+
+/*****************************************************************************
+ * IHTMLFiltersCollection interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F3EE-98B5-11Cf-BB82-00AA00BDCE0B)
+]
+interface IHTMLFiltersCollection : IDispatch
+{
+ [propget, id(DISPID_IHTMLFILTERSCOLLECTION_LENGTH)]
+ HRESULT length([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLFILTERSCOLLECTION__NEWENUM)]
+ HRESULT _newEnum([retval, out] IUnknown **p);
+
+ [id(DISPID_IHTMLFILTERSCOLLECTION_ITEM)]
+ HRESULT item(
+ [in] VARIANT *pvarIndex,
+ [retval, out] VARIANT *pvarResult);
+}
+
+
+/*****************************************************************************
+ * IHTMLElement interface
+ */
+[
+ odl,
+ dual,
+ oleautomation,
+ uuid(3050f1FF-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLElement : IDispatch
+{
+ [id(DISPID_IHTMLELEMENT_SETATTRIBUTE)]
+ HRESULT setAttribute(
+ [in] BSTR strAttributeName,
+ [in] VARIANT AttributeValue,
+ [defaultvalue(1), in] LONG lFlags);
+
+ [id(DISPID_IHTMLELEMENT_GETATTRIBUTE)]
+ HRESULT getAttribute(
+ [in] BSTR strAttributeName,
+ [defaultvalue(0), in] LONG lFlags,
+ [retval, out] VARIANT AttributeValue);
+
+ [id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)]
+ HRESULT removeAttribute(
+ [in] BSTR strAttributeName,
+ [defaultvalue(1), in] LONG lFlags,
+ [retval, out] VARIANT_BOOL *pfSuccess);
+
+ [propput, id(DISPID_IHTMLELEMENT_CLASSNAME)]
+ HRESULT className([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLELEMENT_CLASSNAME)]
+ HRESULT className([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ID)]
+ HRESULT id([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ID)]
+ HRESULT id([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLELEMENT_TAGNAME)]
+ HRESULT tagName([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)]
+ HRESULT parentElement([retval, out] IHTMLElement **p);
+
+ [propget, id(DISPID_IHTMLELEMENT_STYLE)]
+ HRESULT style([retval, out] IHTMLStyle **p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONHELP)]
+ HRESULT onhelp([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONHELP)]
+ HRESULT onhelp([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONCLICK)]
+ HRESULT onclick([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONCLICK)]
+ HRESULT onclick([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK)]
+ HRESULT ondblclick([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK)]
+ HRESULT ondblclick([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN)]
+ HRESULT onkeydown([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN)]
+ HRESULT onkeydown([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONKEYUP)]
+ HRESULT onkeyup([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONKEYUP)]
+ HRESULT onkeyup([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS)]
+ HRESULT onkeypress([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS)]
+ HRESULT onkeypress([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT)]
+ HRESULT onmouseout([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT)]
+ HRESULT onmouseout([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER)]
+ HRESULT onmouseover([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER)]
+ HRESULT onmouseover([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE)]
+ HRESULT onmousemove([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE)]
+ HRESULT onmousemove([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN)]
+ HRESULT onmousedown([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN)]
+ HRESULT onmousedown([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP)]
+ HRESULT onmouseup([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP)]
+ HRESULT onmouseup([retval, out] VARIANT *p);
+
+ [propget, id(DISPID_IHTMLELEMENT_DOCUMENT)]
+ HRESULT document([retval, out] IDispatch **p);
+
+ [propput, id(DISPID_IHTMLELEMENT_TITLE)]
+ HRESULT title([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLELEMENT_TITLE)]
+ HRESULT title([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_LANGUAGE)]
+ HRESULT language([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLELEMENT_LANGUAGE)]
+ HRESULT language([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART)]
+ HRESULT onselectstart([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART)]
+ HRESULT onselectstart([retval, out] VARIANT *p);
+
+ [id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)]
+ HRESULT scrollIntoView([optional, in] VARIANT varargStart);
+
+ [id(DISPID_IHTMLELEMENT_CONTAINS)]
+ HRESULT contains(
+ [in] IHTMLElement *pChild,
+ [retval, out] VARIANT_BOOL *pfResult);
+
+ [propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX)]
+ HRESULT sourceIndex([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)]
+ HRESULT recordNumber([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_LANG)]
+ HRESULT lang([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLELEMENT_LANG)]
+ HRESULT lang([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)]
+ HRESULT offsetLeft([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)]
+ HRESULT offsetTop([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)]
+ HRESULT offsetWidth([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)]
+ HRESULT offsetHeight([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)]
+ HRESULT offsetParent([retval, out] IHTMLElement **p);
+
+ [propput, id(DISPID_IHTMLELEMENT_INNERHTML)]
+ HRESULT innerHTML([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLELEMENT_INNERHTML)]
+ HRESULT innerHTML([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_INNERTEXT)]
+ HRESULT innerText([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLELEMENT_INNERTEXT)]
+ HRESULT innerText([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_OUTERHTML)]
+ HRESULT outerHTML([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLELEMENT_OUTERHTML)]
+ HRESULT outerHTML([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)]
+ HRESULT outerText([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)]
+ HRESULT outerText([retval, out] BSTR *p);
+
+ [id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)]
+ HRESULT insertAdjacentHTML([in] BSTR where, [in] BSTR html);
+
+ [id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)]
+ HRESULT insertAdjacentText([in] BSTR where, [in] BSTR text);
+
+ [propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)]
+ HRESULT parentTextEdit([retval, out] IHTMLElement **p);
+
+ [propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)]
+ HRESULT isTextEdit([retval, out] VARIANT_BOOL *p);
+
+ [id(DISPID_IHTMLELEMENT_CLICK)]
+ HRESULT click();
+
+ [propget, id(DISPID_IHTMLELEMENT_FILTERS)]
+ HRESULT filters([retval, out] IHTMLFiltersCollection **p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART)]
+ HRESULT ondragstart([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART)]
+ HRESULT ondragstart([retval, out] VARIANT *p);
+
+ [id(DISPID_IHTMLELEMENT_TOSTRING)]
+ HRESULT toString([retval, out] BSTR *String);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE)]
+ HRESULT onbeforeupdate([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE)]
+ HRESULT onbeforeupdate([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE)]
+ HRESULT onafterupdate([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE)]
+ HRESULT onafterupdate([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE)]
+ HRESULT onerrorupdate([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE)]
+ HRESULT onerrorupdate([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONROWEXIT)]
+ HRESULT onrowexit([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONROWEXIT)]
+ HRESULT onrowexit([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONROWENTER)]
+ HRESULT onrowenter([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONROWENTER)]
+ HRESULT onrowenter([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED)]
+ HRESULT ondatasetchanged([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED)]
+ HRESULT ondatasetchanged([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE)]
+ HRESULT ondataavailable([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE)]
+ HRESULT ondataavailable([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE)]
+ HRESULT ondatasetcomplete([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE)]
+ HRESULT ondatasetcomplete([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE)]
+ HRESULT onfilterchange([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE)]
+ HRESULT onfilterchange([retval, out] VARIANT *p);
+
+ [propget, id(DISPID_IHTMLELEMENT_CHILDREN)]
+ HRESULT children([retval, out] IDispatch **p);
+
+ [propget, id(DISPID_IHTMLELEMENT_ALL)]
+ HRESULT all([retval, out] IDispatch **p);
+}
+
+/*****************************************************************************
+ * IHTMLStyleSheetRule interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F357-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLStyleSheetRule : IDispatch
+{
+ [propput, id(DISPID_IHTMLSTYLESHEETRULE_SELECTORTEXT)]
+ HRESULT selectorText([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLESHEETRULE_SELECTORTEXT)]
+ HRESULT selectorText([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLSTYLESHEETRULE_STYLE)]
+ HRESULT style([retval, out] IHTMLRuleStyle **p);
+
+ [propget, id(DISPID_IHTMLSTYLESHEETRULE_READONLY)]
+ HRESULT readOnly([retval, out] VARIANT_BOOL *p);
+}
+
+/*****************************************************************************
+ * IHTMLStyleSheetRulesCollection interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F2E5-98B5-11Cf-BB82-00AA00BDCE0B)
+]
+interface IHTMLStyleSheetRulesCollection : IDispatch
+{
+ [propget, id(DISPID_IHTMLSTYLESHEETRULESCOLLECTION_LENGTH)]
+ HRESULT length([retval, out] long *p);
+
+ [id(DISPID_IHTMLSTYLESHEETRULESCOLLECTION_ITEM)]
+ HRESULT item(
+ [in] long index,
+ [retval, out] IHTMLStyleSheetRule **ppHTMLStyleSheetRule);
+}
+
+/*****************************************************************************
+ * IHTMLStyleSheet interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F2E3-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLStyleSheet : IDispatch
+{
+ [propput, id(DISPID_IHTMLSTYLESHEET_TITLE)]
+ HRESULT title([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_TITLE)]
+ HRESULT title([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_PARENTSTYLESHEET)]
+ HRESULT parentStyleSheet([retval, out] IHTMLStyleSheet **p);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_OWNINGELEMENT)]
+ HRESULT owningElement([retval, out] IHTMLElement **p);
+
+ [propput, id(DISPID_IHTMLSTYLESHEET_DISABLED)]
+ HRESULT disabled([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_DISABLED)]
+ HRESULT disabled([retval, out] VARIANT_BOOL *p);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_READONLY)]
+ HRESULT readOnly([retval, out] VARIANT_BOOL *p);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_IMPORTS)]
+ HRESULT imports([retval, out] IHTMLStyleSheetsCollection **p);
+
+ [propput, id(DISPID_IHTMLSTYLESHEET_HREF)]
+ HRESULT href([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_HREF)]
+ HRESULT href([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_TYPE)]
+ HRESULT type([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_ID)]
+ HRESULT id([retval, out] BSTR *p);
+
+ [id(DISPID_IHTMLSTYLESHEET_ADDIMPORT)]
+ HRESULT addImport(
+ [in] BSTR bstrURL,
+ [defaultvalue(-1), in] long lIndex,
+ [retval, out] long *plIndex);
+
+ [id(DISPID_IHTMLSTYLESHEET_ADDRULE)]
+ HRESULT addRule(
+ [in] BSTR bstrSelector,
+ [in] BSTR bstrStyle,
+ [defaultvalue(-1), in] long lIndex,
+ [retval, out] long *plNewIndex);
+
+ [id(DISPID_IHTMLSTYLESHEET_REMOVEIMPORT)]
+ HRESULT removeImport([in] long lIndex);
+
+ [id(DISPID_IHTMLSTYLESHEET_REMOVERULE)]
+ HRESULT removeRule([in] long lIndex);
+
+ [propput, id(DISPID_IHTMLSTYLESHEET_MEDIA)]
+ HRESULT media([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_MEDIA)]
+ HRESULT media([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLSTYLESHEET_CSSTEXT)]
+ HRESULT cssText([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_CSSTEXT)]
+ HRESULT cssText([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLSTYLESHEET_RULES)]
+ HRESULT rules([retval, out] IHTMLStyleSheetRulesCollection **p);
+}
+
+/*****************************************************************************
+ * IHTMLStyleSheetsCollection interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F37E-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLStyleSheetsCollection : IDispatch
+{
+ [propget, id(DISPID_IHTMLSTYLESHEETSCOLLECTION_LENGTH)]
+ HRESULT length([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLSTYLESHEETSCOLLECTION__NEWENUM)]
+ HRESULT _newEnum([retval, out] IUnknown **p);
+
+ [id(DISPID_IHTMLSTYLESHEETSCOLLECTION_ITEM)]
+ HRESULT item(
+ [in] VARIANT *pvarIndex,
+ [retval, out] VARIANT *pvarResult);
+}
+
+/*****************************************************************************
+ * IHTMLFormElement interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F1F7-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLFormElement : IDispatch
+{
+ [propput, id(DISPID_IHTMLFORMELEMENT_ACTION)]
+ HRESULT action([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLFORMELEMENT_ACTION)]
+ HRESULT action([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLFORMELEMENT_DIR)]
+ HRESULT dir([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLFORMELEMENT_DIR)]
+ HRESULT dir([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLFORMELEMENT_ENCODING)]
+ HRESULT encoding([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLFORMELEMENT_ENCODING)]
+ HRESULT encoding([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLFORMELEMENT_METHOD)]
+ HRESULT method([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLFORMELEMENT_METHOD)]
+ HRESULT method([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLFORMELEMENT_ELEMENTS)]
+ HRESULT elements([retval, out] IDispatch **p);
+
+ [propput, id(DISPID_IHTMLFORMELEMENT_TARGET)]
+ HRESULT target([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLFORMELEMENT_TARGET)]
+ HRESULT target([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLFORMELEMENT_NAME)]
+ HRESULT name([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLFORMELEMENT_NAME)]
+ HRESULT name([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLFORMELEMENT_ONSUBMIT)]
+ HRESULT onsubmit([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLFORMELEMENT_ONSUBMIT)]
+ HRESULT onsubmit([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLFORMELEMENT_ONRESET)]
+ HRESULT onreset([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLFORMELEMENT_ONRESET)]
+ HRESULT onreset([retval, out] VARIANT *p);
+
+ [id(DISPID_IHTMLFORMELEMENT_SUBMIT)]
+ HRESULT submit();
+
+ [id(DISPID_IHTMLFORMELEMENT_RESET)]
+ HRESULT reset();
+
+ [propput, id(DISPID_IHTMLFORMELEMENT_LENGTH)]
+ HRESULT length([in] long v);
+
+ [propget, id(DISPID_IHTMLFORMELEMENT_LENGTH)]
+ HRESULT length([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLFORMELEMENT__NEWENUM)]
+ HRESULT _newEnum([retval, out] IUnknown **p);
+
+ [id(DISPID_IHTMLFORMELEMENT_ITEM)]
+ HRESULT item(
+ [optional, in] VARIANT name,
+ [optional, in] VARIANT index,
+ [retval, out] IDispatch **pdisp);
+
+ [id(DISPID_IHTMLFORMELEMENT_TAGS)]
+ HRESULT tags(
+ [in] VARIANT tagName,
+ [retval, out] IDispatch **pdisp);
+}
+
+/*****************************************************************************
+ * IHTMLImgElement interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F240-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLImgElement : IDispatch
+{
+ [propput, id(DISPID_IHTMLIMGELEMENT_ISMAP)]
+ HRESULT isMap([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_ISMAP)]
+ HRESULT isMap([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_USEMAP)]
+ HRESULT useMap([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_USEMAP)]
+ HRESULT useMap([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_MIMETYPE)]
+ HRESULT mimeType([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_FILESIZE)]
+ HRESULT fileSize([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_FILECREATEDDATE)]
+ HRESULT fileCreatedDate([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_FILEMODIFIEDDATE)]
+ HRESULT fileModifiedDate([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_FILEUPDATEDDATE)]
+ HRESULT fileUpdatedDate([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_PROTOCOL)]
+ HRESULT protocol([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_HREF)]
+ HRESULT href([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_NAMEPROP)]
+ HRESULT nameProp([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_BORDER)]
+ HRESULT border([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_BORDER)]
+ HRESULT border([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_VSPACE)]
+ HRESULT vspace([in] long v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_VSPACE)]
+ HRESULT vspace([retval, out] long *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_HSPACE)]
+ HRESULT hspace([in] long v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_HSPACE)]
+ HRESULT hspace([retval, out] long *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_ALT)]
+ HRESULT alt([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_ALT)]
+ HRESULT alt([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_SRC)]
+ HRESULT src([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_SRC)]
+ HRESULT src([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_LOWSRC)]
+ HRESULT lowsrc([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_LOWSRC)]
+ HRESULT lowsrc([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_VRML)]
+ HRESULT vrml([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_VRML)]
+ HRESULT vrml([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_DYNSRC)]
+ HRESULT dynsrc([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_DYNSRC)]
+ HRESULT dynsrc([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_READYSTATE)]
+ HRESULT readyState([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_COMPLETE)]
+ HRESULT complete([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_LOOP)]
+ HRESULT loop([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_LOOP)]
+ HRESULT loop([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_ALIGN)]
+ HRESULT align([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_ALIGN)]
+ HRESULT align([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_ONLOAD)]
+ HRESULT onload([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_ONLOAD)]
+ HRESULT onload([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_ONERROR)]
+ HRESULT onerror([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_ONERROR)]
+ HRESULT onerror([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_ONABORT)]
+ HRESULT onabort([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_ONABORT)]
+ HRESULT onabort([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_NAME)]
+ HRESULT name([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_NAME)]
+ HRESULT name([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_WIDTH)]
+ HRESULT width([in] long v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_WIDTH)]
+ HRESULT width([retval, out] long *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_HEIGHT)]
+ HRESULT height([in] long v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_HEIGHT)]
+ HRESULT height([retval, out] long *p);
+
+ [propput, id(DISPID_IHTMLIMGELEMENT_START)]
+ HRESULT start([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLIMGELEMENT_START)]
+ HRESULT start([retval, out] BSTR *p);
+}
+
+/*****************************************************************************
+ * IHTMLImageElementFactory interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F38E-98B5-11CF-BB82-00AAA0BDCE0B)
+]
+interface IHTMLImageElementFactory : IDispatch
+{
+ [id(DISPID_IHTMLIMAGEELEMENTFACTORY_CREATE)]
+ HRESULT create(
+ [optional, in] VARIANT width,
+ [optional, in] VARIANT height,
+ [retval, out] IHTMLImgElement **elem);
+}
+
+/*****************************************************************************
+ * IHTMLElementCollection interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F21F-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLElementCollection : IDispatch
+{
+ [id(DISPID_IHTMLELEMENTCOLLECTION_TOSTRING)]
+ HRESULT toString([retval, out] BSTR *String);
+
+ [propput, id(DISPID_IHTMLELEMENTCOLLECTION_LENGTH)]
+ HRESULT length([in] long v);
+
+ [propget, id(DISPID_IHTMLELEMENTCOLLECTION_LENGTH)]
+ HRESULT length([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLELEMENTCOLLECTION__NEWENUM)]
+ HRESULT _newEnum([retval, out] IUnknown **p);
+
+ [id(DISPID_IHTMLELEMENTCOLLECTION_ITEM)]
+ HRESULT item(
+ [optional, in] VARIANT name,
+ [optional, in] VARIANT index,
+ [retval, out] IDispatch **pdisp);
+
+ [id(DISPID_IHTMLELEMENTCOLLECTION_TAGS)]
+ HRESULT tags(
+ [in] VARIANT tagName,
+ [retval, out] IDispatch **pdisp);
+}
+
+/*****************************************************************************
+ * IHTMLSelectionObject interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F25A-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLSelectionObject : IDispatch
+{
+ [id(DISPID_IHTMLSELECTIONOBJECT_CREATERANGE)]
+ HRESULT createRange([retval, out] IDispatch **range);
+
+ [id(DISPID_IHTMLSELECTIONOBJECT_EMPTY)]
+ HRESULT empty();
+
+ [id(DISPID_IHTMLSELECTIONOBJECT_CLEAR)]
+ HRESULT clear();
+
+ [propget, id(DISPID_IHTMLSELECTIONOBJECT_TYPE)]
+ HRESULT type([retval, out] BSTR *p);
+}
+
+/*****************************************************************************
+ * IHTMLOptionElement interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F211-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLOptionElement : IDispatch
+{
+ [propput, id(DISPID_IHTMLOPTIONELEMENT_SELECTED)]
+ HRESULT selected([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLOPTIONELEMENT_SELECTED)]
+ HRESULT selected([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLOPTIONELEMENT_VALUE)]
+ HRESULT value([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLOPTIONELEMENT_VALUE)]
+ HRESULT value([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLOPTIONELEMENT_DEFAULTSELECTED)]
+ HRESULT defaultSelected([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLOPTIONELEMENT_DEFAULTSELECTED)]
+ HRESULT defaultSelected([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLOPTIONELEMENT_INDEX)]
+ HRESULT index([in] LONG v);
+
+ [propget, id(DISPID_IHTMLOPTIONELEMENT_INDEX)]
+ HRESULT index([retval, out] LONG *p);
+
+ [propput, id(DISPID_IHTMLOPTIONELEMENT_TEXT)]
+ HRESULT text([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLOPTIONELEMENT_TEXT)]
+ HRESULT text([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLOPTIONELEMENT_FORM)]
+ HRESULT form([retval, out] IHTMLFormElement **p);
+}
+
+/*****************************************************************************
+ * IHTMLOptionElementFactory interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F38C-98B5-11Cf-BB82-00AA00BDCE0B)
+]
+interface IHTMLOptionElementFactory : IDispatch
+{
+ [id(DISPID_IHTMLOPTIONELEMENTFACTORY_CREATE)]
+ HRESULT create(
+ [optional, in] VARIANT text,
+ [optional, in] VARIANT value,
+ [optional, in] VARIANT defaultselected,
+ [optional, in] VARIANT selected,
+ [retval, out] IHTMLOptionElement **optelem);
+}
+
+/*****************************************************************************
+ * IOmHistory interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(FECEAAA2-8405-11CF-8BA1-00AA00476DA6)
+]
+interface IOmHistory : IDispatch
+{
+ [propget, id(DISPID_IOMHISTORY_LENGTH)]
+ HRESULT length([retval, out] short *p);
+
+ [id(DISPID_IOMHISTORY_BACK)]
+ HRESULT back([optional, in] VARIANT *pvargdistance);
+
+ [id(DISPID_IOMHISTORY_FORWARD)]
+ HRESULT forward([optional, in] VARIANT *pvargdistance);
+
+ [id(DISPID_IOMHISTORY_GO)]
+ HRESULT go([optional, in] VARIANT *pvargdistance);
+}
+
+/*****************************************************************************
+ * IHTMLMimeTypesCollection interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F3FC-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLMimeTypesCollection : IDispatch
+{
+ [propget, id(DISPID_IHTMLMIMETYPESCOLLECTION_LENGTH)]
+ HRESULT length([retval, out] long *p);
+}
+
+/*****************************************************************************
+ * IHTMLPluginsCollection interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F3FD-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLPluginsCollection : IDispatch
+{
+ [propget, id(DISPID_IHTMLPLUGINSCOLLECTION_LENGTH)]
+ HRESULT length([retval, out] long *p);
+
+ [id(DISPID_IHTMLPLUGINSCOLLECTION_REFRESH)]
+ HRESULT refresh([defaultvalue(0), in] VARIANT_BOOL reload);
+}
+
+/*****************************************************************************
+ * IHTMLOpsProfile interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F401-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLOpsProfile : IDispatch
+{
+ [id(DISPID_IHTMLOPSPROFILE_ADDREQUEST)]
+ HRESULT addRequest(
+ [in] BSTR name,
+ [optional, in] VARIANT reserved,
+ [retval, out] VARIANT_BOOL *success);
+
+ [id(DISPID_IHTMLOPSPROFILE_CLEARREQUEST)]
+ HRESULT clearRequest();
+
+ [id(DISPID_IHTMLOPSPROFILE_DOREQUEST)]
+ HRESULT doRequest(
+ [in] VARIANT usage,
+ [optional, in] VARIANT fname,
+ [optional, in] VARIANT domain,
+ [optional, in] VARIANT path,
+ [optional, in] VARIANT expire,
+ [optional, in] VARIANT reserved);
+
+ [id(DISPID_IHTMLOPSPROFILE_GETATTRIBUTE)]
+ HRESULT getAttribute(
+ [in] BSTR name,
+ [retval, out] BSTR *value);
+
+ [id(DISPID_IHTMLOPSPROFILE_SETATTRIBUTE)]
+ HRESULT setAttribute(
+ [in] BSTR name,
+ [in] BSTR value,
+ [optional, in] VARIANT prefs,
+ [retval, out] VARIANT_BOOL *success);
+
+ [id(DISPID_IHTMLOPSPROFILE_COMMITCHANGES)]
+ HRESULT commitChanges([retval, out] VARIANT_BOOL *success);
+
+ [id(DISPID_IHTMLOPSPROFILE_ADDREADREQUEST)]
+ HRESULT addReadRequest(
+ [in] BSTR name,
+ [optional, in] VARIANT reserved,
+ [retval, out] VARIANT_BOOL *success);
+
+ [id(DISPID_IHTMLOPSPROFILE_DOREADREQUEST)]
+ HRESULT doReadRequest(
+ [in] VARIANT usage,
+ [optional, in] VARIANT fname,
+ [optional, in] VARIANT domain,
+ [optional, in] VARIANT path,
+ [optional, in] VARIANT expire,
+ [optional, in] VARIANT reserved);
+
+ [id(DISPID_IHTMLOPSPROFILE_DOWRITEREQUEST)]
+ HRESULT doWriteRequest([retval, out] VARIANT_BOOL *success);
+}
+
+/*****************************************************************************
+ * IOmNavigator interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(FECEAAA5-8405-11CF-8BA1-00AA00476DA6)
+]
+interface IOmNavigator : IDispatch
+{
+ [propget, id(DISPID_IOMNAVIGATOR_APPCODENAME)]
+ HRESULT appCodeName([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_APPNAME)]
+ HRESULT appName([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_APPVERSION)]
+ HRESULT appVersion([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_USERAGENT)]
+ HRESULT userAgent([retval, out] BSTR *p);
+
+ [id(DISPID_IOMNAVIGATOR_JAVAENABLED)]
+ HRESULT javaEnabled([retval, out] VARIANT_BOOL *enabled);
+
+ [id(DISPID_IOMNAVIGATOR_TAINTENABLED)]
+ HRESULT taintEnabled([retval, out] VARIANT_BOOL *enabled);
+
+ [propget, id(DISPID_IOMNAVIGATOR_MIMETYPES)]
+ HRESULT mimeTypes([retval, out] IHTMLMimeTypesCollection **p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_PLUGINS)]
+ HRESULT plugins([retval, out] IHTMLPluginsCollection **p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_COOKIEENABLED)]
+ HRESULT cookieEnabled([retval, out] VARIANT_BOOL *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_OPSPROFILE)]
+ HRESULT opsProfile([retval, out] IHTMLOpsProfile **p);
+
+ [id(DISPID_IOMNAVIGATOR_TOSTRING)]
+ HRESULT toString([retval, out] BSTR *String);
+
+ [propget, id(DISPID_IOMNAVIGATOR_CPUCLASS)]
+ HRESULT cpuClass([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_SYSTEMLANGUAGE)]
+ HRESULT systemLanguage([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_BROWSERLANGUAGE)]
+ HRESULT browserLanguage([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_USERLANGUAGE)]
+ HRESULT userLanguage([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_PLATFORM)]
+ HRESULT platform([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_APPMINORVERSION)]
+ HRESULT appMinorVersion([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_CONNECTIONSPEED)]
+ HRESULT connectionSpeed([retval, out] long *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_ONLINE)]
+ HRESULT onLine([retval, out] VARIANT_BOOL *p);
+
+ [propget, id(DISPID_IOMNAVIGATOR_USERPROFILE)]
+ HRESULT userProfile([retval, out] IHTMLOpsProfile **p);
+}
+
+/*****************************************************************************
+ * IHTMLLocation interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(163BB1E0-6E00-11cf-837A-48DC04C10000)
+]
+interface IHTMLLocation : IDispatch
+{
+ [propput, id(DISPID_IHTMLLOCATION_HREF)]
+ HRESULT href([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLLOCATION_HREF)]
+ HRESULT href([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLLOCATION_PROTOCOL)]
+ HRESULT protocol([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLLOCATION_PROTOCOL)]
+ HRESULT protocol([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLLOCATION_HOST)]
+ HRESULT host([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLLOCATION_HOST)]
+ HRESULT host([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLLOCATION_HOSTNAME)]
+ HRESULT hostname([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLLOCATION_HOSTNAME)]
+ HRESULT hostname([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLLOCATION_PORT)]
+ HRESULT port([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLLOCATION_PORT)]
+ HRESULT port([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLLOCATION_PATHNAME)]
+ HRESULT pathname([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLLOCATION_PATHNAME)]
+ HRESULT pathname([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLLOCATION_SEARCH)]
+ HRESULT search([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLLOCATION_SEARCH)]
+ HRESULT search([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLLOCATION_HASH)]
+ HRESULT hash([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLLOCATION_HASH)]
+ HRESULT hash([retval, out] BSTR *p);
+
+ [id(DISPID_IHTMLLOCATION_RELOAD)]
+ HRESULT reload([defaultvalue(0), in] VARIANT_BOOL flag);
+
+ [id(DISPID_IHTMLLOCATION_REPLACE)]
+ HRESULT replace([in] BSTR bstr);
+
+ [id(DISPID_IHTMLLOCATION_ASSIGN)]
+ HRESULT assign([in] BSTR bstr);
+
+ [id(DISPID_IHTMLLOCATION_TOSTRING)]
+ HRESULT toString([retval, out] BSTR *String);
+}
+
+/*****************************************************************************
+ * IHTMLEventObj interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050F32D-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLEventObj : IDispatch
+{
+ [propget, id(DISPID_IHTMLEVENTOBJ_SRCELEMENT)]
+ HRESULT srcElement([retval, out] IHTMLElement **p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_ALTKEY)]
+ HRESULT altKey([retval, out] VARIANT_BOOL *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_CTRLKEY)]
+ HRESULT ctrlKey([retval, out] VARIANT_BOOL *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_SHIFTKEY)]
+ HRESULT shiftKey([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLEVENTOBJ_RETURNVALUE)]
+ HRESULT returnValue([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_RETURNVALUE)]
+ HRESULT returnValue([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLEVENTOBJ_CANCELBUBBLE)]
+ HRESULT cancelBubble([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_CANCELBUBBLE)]
+ HRESULT cancelBubble([retval, out] VARIANT_BOOL *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_FROMELEMENT)]
+ HRESULT fromElement([retval, out] IHTMLElement **p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_TOELEMENT)]
+ HRESULT toElement([retval, out] IHTMLElement **p);
+
+ [propput, id(DISPID_IHTMLEVENTOBJ_KEYCODE)]
+ HRESULT keyCode([in] long v);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_KEYCODE)]
+ HRESULT keyCode([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_BUTTON)]
+ HRESULT button([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_TYPE)]
+ HRESULT type([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_QUALIFIER)]
+ HRESULT qualifier([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_REASON)]
+ HRESULT reason([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_X)]
+ HRESULT x([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_Y)]
+ HRESULT y([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_CLIENTX)]
+ HRESULT clientX([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_CLIENTY)]
+ HRESULT clientY([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_OFFSETX)]
+ HRESULT offsetX([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_OFFSETY)]
+ HRESULT offsetY([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_SCREENX)]
+ HRESULT screenX([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_SCREENY)]
+ HRESULT screenY([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLEVENTOBJ_SRCFILTER)]
+ HRESULT srcFilter([retval, out] IDispatch **p);
+}
+
+/*****************************************************************************
+ * IHTMLFramesCollection2 interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(332C4426-26CB-11D0-B483-00C04FD90119)
+]
+interface IHTMLFramesCollection2 : IDispatch
+{
+ [id(DISPID_IHTMLFRAMESCOLLECTION2_ITEM)]
+ HRESULT item(
+ [in] VARIANT *pvarIndex,
+ [retval, out] VARIANT *pvarResult);
+
+ [propget, id(DISPID_IHTMLFRAMESCOLLECTION2_LENGTH)]
+ HRESULT length([retval, out] long *p);
+}
+
+/*****************************************************************************
+ * IHTMLScreen interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(3050f35C-98B5-11CF-BB82-00AA00BDCE0B)
+]
+interface IHTMLScreen : IDispatch
+{
+ [propget, id(DISPID_IHTMLSCREEN_COLORDEPTH)]
+ HRESULT colorDepth([retval, out] long *p);
+
+ [propput, id(DISPID_IHTMLSCREEN_BUFFERDEPTH)]
+ HRESULT bufferDepth([in] long v);
+
+ [propget, id(DISPID_IHTMLSCREEN_BUFFERDEPTH)]
+ HRESULT bufferDepth([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLSCREEN_WIDTH)]
+ HRESULT width([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLSCREEN_HEIGHT)]
+ HRESULT height([retval, out] long *p);
+
+ [propput, id(DISPID_IHTMLSCREEN_UPDATEINTERVAL)]
+ HRESULT updateInterval([in] long v);
+
+ [propget, id(DISPID_IHTMLSCREEN_UPDATEINTERVAL)]
+ HRESULT updateInterval([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLSCREEN_AVAILHEIGHT)]
+ HRESULT availHeight([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLSCREEN_AVAILWIDTH)]
+ HRESULT availWidth([retval, out] long *p);
+
+ [propget, id(DISPID_IHTMLSCREEN_FONTSMOOTHINGENABLED)]
+ HRESULT fontSmoothingEnabled([retval, out] VARIANT_BOOL *p);
+}
+
+/*****************************************************************************
+ * IHTMLWindow2 interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(332C4427-26CB-11D0-B483-00C04FD90119)
+]
+interface IHTMLWindow2 : IHTMLFramesCollection2
+{
+ [propget, id(DISPID_IHTMLWINDOW2_FRAMES)]
+ HRESULT frames([retval, out] IHTMLFramesCollection2 **p);
+
+ [propput, id(DISPID_IHTMLWINDOW2_DEFAULTSTATUS)]
+ HRESULT defaultStatus([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_DEFAULTSTATUS)]
+ HRESULT defaultStatus([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLWINDOW2_STATUS)]
+ HRESULT status([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_STATUS)]
+ HRESULT status([retval, out] BSTR *p);
+
+ [id(DISPID_IHTMLWINDOW2_SETTIMEOUT)]
+ HRESULT setTimeout(
+ [in] BSTR expression,
+ [in] long msec,
+ [optional, in] VARIANT *language,
+ [retval, out] long *timerID);
+
+ [id(DISPID_IHTMLWINDOW2_CLEARTIMEOUT)]
+ HRESULT clearTimeout([in] long timerID);
+
+ [id(DISPID_IHTMLWINDOW2_ALERT)]
+ HRESULT alert([defaultvalue(""), in] BSTR message);
+
+ [id(DISPID_IHTMLWINDOW2_CONFIRM)]
+ HRESULT confirm(
+ [defaultvalue(""), in] BSTR message,
+ [retval, out] VARIANT_BOOL *confirmed);
+
+ [id(DISPID_IHTMLWINDOW2_PROMPT)]
+ HRESULT prompt(
+ [defaultvalue(""), in] BSTR message,
+ [defaultvalue("undefined"), in] BSTR defstr,
+ [retval, out] VARIANT *textdata);
+
+ [propget, id(DISPID_IHTMLWINDOW2_IMAGE)]
+ HRESULT Image([retval, out] IHTMLImageElementFactory **p);
+
+ [propget, id(DISPID_IHTMLWINDOW2_LOCATION)]
+ HRESULT location([retval, out] IHTMLLocation **p);
+
+ [propget, id(DISPID_IHTMLWINDOW2_HISTORY)]
+ HRESULT history([retval, out] IOmHistory **p);
+
+ [id(DISPID_IHTMLWINDOW2_CLOSE)]
+ HRESULT close();
+
+ [propput, id(DISPID_IHTMLWINDOW2_OPENER)]
+ HRESULT opener([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_OPENER)]
+ HRESULT opener([retval, out] VARIANT *p);
+
+ [propget, id(DISPID_IHTMLWINDOW2_NAVIGATOR)]
+ HRESULT navigator([retval, out] IOmNavigator **p);
+
+ [propput, id(DISPID_IHTMLWINDOW2_NAME)]
+ HRESULT name([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_NAME)]
+ HRESULT name([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLWINDOW2_PARENT)]
+ HRESULT parent([retval, out] IHTMLWindow2 **p);
+
+ [id(DISPID_IHTMLWINDOW2_OPEN)]
+ HRESULT open(
+ [defaultvalue(""), in] BSTR url,
+ [defaultvalue(""), in] BSTR name,
+ [defaultvalue(""), in] BSTR features,
+ [defaultvalue(0), in] VARIANT_BOOL replace,
+ [retval, out] IHTMLWindow2 **pomWindowResult);
+
+ [propget, id(DISPID_IHTMLWINDOW2_SELF)]
+ HRESULT self([retval, out] IHTMLWindow2 **p);
+
+ [propget, id(DISPID_IHTMLWINDOW2_TOP)]
+ HRESULT top([retval, out] IHTMLWindow2 **p);
+
+ [propget, id(DISPID_IHTMLWINDOW2_WINDOW)]
+ HRESULT window([retval, out] IHTMLWindow2 **p);
+
+ [id(DISPID_IHTMLWINDOW2_NAVIGATE)]
+ HRESULT navigate([in] BSTR url);
+
+ [propput, id(DISPID_IHTMLWINDOW2_ONFOCUS)]
+ HRESULT onfocus([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_ONFOCUS)]
+ HRESULT onfocus([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLWINDOW2_ONBLUR)]
+ HRESULT onblur([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_ONBLUR)]
+ HRESULT onblur([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLWINDOW2_ONLOAD)]
+ HRESULT onload([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_ONLOAD)]
+ HRESULT onload([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLWINDOW2_ONBEFOREUNLOAD)]
+ HRESULT onbeforeunload([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_ONBEFOREUNLOAD)]
+ HRESULT onbeforeunload([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLWINDOW2_ONUNLOAD)]
+ HRESULT onunload([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_ONUNLOAD)]
+ HRESULT onunload([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLWINDOW2_ONHELP)]
+ HRESULT onhelp([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_ONHELP)]
+ HRESULT onhelp([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLWINDOW2_ONERROR)]
+ HRESULT onerror([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_ONERROR)]
+ HRESULT onerror([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLWINDOW2_ONRESIZE)]
+ HRESULT onresize([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_ONRESIZE)]
+ HRESULT onresize([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLWINDOW2_ONSCROLL)]
+ HRESULT onscroll([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_ONSCROLL)]
+ HRESULT onscroll([retval, out] VARIANT *p);
+
+ [propget, id(DISPID_IHTMLWINDOW2_DOCUMENT)]
+ HRESULT document([retval, out] IHTMLDocument2 **p);
+
+ [propget, id(DISPID_IHTMLWINDOW2_EVENT)]
+ HRESULT event([retval, out] IHTMLEventObj **p);
+
+ [propget, id(DISPID_IHTMLWINDOW2__NEWENUM)]
+ HRESULT _newEnum([retval, out] IUnknown **p);
+
+ [id(DISPID_IHTMLWINDOW2_SHOWMODALDIALOG)]
+ HRESULT showModalDialog(
+ [in] BSTR dialog,
+ [optional, in] VARIANT *varArgIn,
+ [optional, in] VARIANT *varOptions,
+ [retval, out] VARIANT *varArgOut);
+
+ [id(DISPID_IHTMLWINDOW2_SHOWHELP)]
+ HRESULT showHelp(
+ [in] BSTR helpURL,
+ [optional, in] VARIANT helpArg,
+ [defaultvalue(""), in] BSTR features);
+
+ [propget, id(DISPID_IHTMLWINDOW2_SCREEN)]
+ HRESULT screen([retval, out] IHTMLScreen **p);
+
+ [propget, id(DISPID_IHTMLWINDOW2_OPTION)]
+ HRESULT Option([retval, out] IHTMLOptionElementFactory **p);
+
+ [id(DISPID_IHTMLWINDOW2_FOCUS)]
+ HRESULT focus();
+
+ [propget, id(DISPID_IHTMLWINDOW2_CLOSED)]
+ HRESULT closed([retval, out] VARIANT_BOOL *p);
+
+ [id(DISPID_IHTMLWINDOW2_BLUR)]
+ HRESULT blur();
+
+ [id(DISPID_IHTMLWINDOW2_SCROLL)]
+ HRESULT scroll([in] long x, [in] long y);
+
+ [propget, id(DISPID_IHTMLWINDOW2_CLIENTINFORMATION)]
+ HRESULT clientInformation([retval, out] IOmNavigator **p);
+
+ [id(DISPID_IHTMLWINDOW2_SETINTERVAL)]
+ HRESULT setInterval([
+ in] BSTR expression,
+ [in] long msec,
+ [optional, in] VARIANT *language,
+ [retval, out] long *timerID);
+
+ [id(DISPID_IHTMLWINDOW2_CLEARINTERVAL)]
+ HRESULT clearInterval([in] long timerID);
+
+ [propput, id(DISPID_IHTMLWINDOW2_OFFSCREENBUFFERING)]
+ HRESULT offscreenBuffering([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLWINDOW2_OFFSCREENBUFFERING)]
+ HRESULT offscreenBuffering([retval, out] VARIANT *p);
+
+ [id(DISPID_IHTMLWINDOW2_EXECSCRIPT)]
+ HRESULT execScript(
+ [in] BSTR scode,
+ [defaultvalue("JScript"), in] BSTR language,
+ [retval, out] VARIANT *pvarRet);
+
+ [id(DISPID_IHTMLWINDOW2_TOSTRING)]
+ HRESULT toString([retval, out] BSTR *String);
+
+ [id(DISPID_IHTMLWINDOW2_SCROLLBY)]
+ HRESULT scrollBy([in] long x, [in] long y);
+
+ [id(DISPID_IHTMLWINDOW2_SCROLLTO)]
+ HRESULT scrollTo([in] long x, [in] long y);
+
+ [id(DISPID_IHTMLWINDOW2_MOVETO)]
+ HRESULT moveTo([in] long x, [in] long y);
+
+ [id(DISPID_IHTMLWINDOW2_MOVEBY)]
+ HRESULT moveBy([in] long x, [in] long y);
+
+ [id(DISPID_IHTMLWINDOW2_RESIZETO)]
+ HRESULT resizeTo([in] long x, [in] long y);
+
+ [id(DISPID_IHTMLWINDOW2_RESIZEBY)]
+ HRESULT resizeBy([in] long x, [in] long y);
+
+ [propget, id(DISPID_IHTMLWINDOW2_EXTERNAL)]
+ HRESULT external([retval, out] IDispatch **p);
+}
+
+/*****************************************************************************
+ * IHTMLDocument interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(626FC520-A41E-11CF-A731-00A0C9082637)
+]
+interface IHTMLDocument : IDispatch
+{
+ [propget, id(DISPID_IHTMLDOCUMENT_SCRIPT)]
+ HRESULT Script([retval, out] IDispatch **p);
+}
+
+/*****************************************************************************
+ * IHTMLDocument2 interface
+ */
+[
+ odl,
+ oleautomation,
+ dual,
+ uuid(332C4425-26CB-11D0-B483-00C04FD90119)
+]
+interface IHTMLDocument2 : IHTMLDocument
+{
+ [propget, id(DISPID_IHTMLDOCUMENT2_ALL)]
+ HRESULT all([retval, out] IHTMLElementCollection **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_BODY)]
+ HRESULT body([retval, out] IHTMLElement **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ACTIVEELEMENT)]
+ HRESULT activeElement([retval, out] IHTMLElement **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_IMAGES)]
+ HRESULT images([retval, out] IHTMLElementCollection **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_APPLETS)]
+ HRESULT applets([retval, out] IHTMLElementCollection **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_LINKS)]
+ HRESULT links([retval, out] IHTMLElementCollection **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_FORMS)]
+ HRESULT forms([retval, out] IHTMLElementCollection **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ANCHORS)]
+ HRESULT anchors([retval, out] IHTMLElementCollection **p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_TITLE)]
+ HRESULT title([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_TITLE)]
+ HRESULT title([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_SCRIPTS)]
+ HRESULT scripts([retval, out] IHTMLElementCollection **p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_DESIGNMODE)]
+ HRESULT designMode([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_DESIGNMODE)]
+ HRESULT designMode([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_SELECTION)]
+ HRESULT selection([retval, out] IHTMLSelectionObject **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_READYSTATE)]
+ HRESULT readyState([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_FRAMES)]
+ HRESULT frames([retval, out] IHTMLFramesCollection2 **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_EMBEDS)]
+ HRESULT embeds([retval, out] IHTMLElementCollection **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_PLUGINS)]
+ HRESULT plugins([retval, out] IHTMLElementCollection **p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ALINKCOLOR)]
+ HRESULT alinkColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ALINKCOLOR)]
+ HRESULT alinkColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_BGCOLOR)]
+ HRESULT bgColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_BGCOLOR)]
+ HRESULT bgColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_FGCOLOR)]
+ HRESULT fgColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_FGCOLOR)]
+ HRESULT fgColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_LINKCOLOR)]
+ HRESULT linkColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_LINKCOLOR)]
+ HRESULT linkColor([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_VLINKCOLOR)]
+ HRESULT vlinkColor([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_VLINKCOLOR)]
+ HRESULT vlinkColor([retval, out] VARIANT *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_REFERRER)]
+ HRESULT referrer([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_LOCATION)]
+ HRESULT location([retval, out] IHTMLLocation **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_LASTMODIFIED)]
+ HRESULT lastModified([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_URL)]
+ HRESULT URL([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_URL)]
+ HRESULT URL([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_DOMAIN)]
+ HRESULT domain([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_DOMAIN)]
+ HRESULT domain([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_COOKIE)]
+ HRESULT cookie([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_COOKIE)]
+ HRESULT cookie([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_EXPANDO)]
+ HRESULT expando([in] VARIANT_BOOL v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_EXPANDO)]
+ HRESULT expando([retval, out] VARIANT_BOOL *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_CHARSET)]
+ HRESULT charset([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_CHARSET)]
+ HRESULT charset([retval, out] BSTR *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_DEFAULTCHARSET)]
+ HRESULT defaultCharset([in] BSTR v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_DEFAULTCHARSET)]
+ HRESULT defaultCharset([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_MIMETYPE)]
+ HRESULT mimeType([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_FILESIZE)]
+ HRESULT fileSize([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_FILECREATEDDATE)]
+ HRESULT fileCreatedDate([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_FILEMODIFIEDDATE)]
+ HRESULT fileModifiedDate([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_FILEUPDATEDDATE)]
+ HRESULT fileUpdatedDate([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_SECURITY)]
+ HRESULT security([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_PROTOCOL)]
+ HRESULT protocol([retval, out] BSTR *p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_NAMEPROP)]
+ HRESULT nameProp([retval, out] BSTR *p);
+
+ [vararg, id(DISPID_IHTMLDOCUMENT2_WRITE)]
+ HRESULT write([in] SAFEARRAY *psarray);
+
+ [vararg, id(DISPID_IHTMLDOCUMENT2_WRITELN)]
+ HRESULT writeln([in] SAFEARRAY *psarray);
+
+ [id(DISPID_IHTMLDOCUMENT2_OPEN)]
+ HRESULT open(
+ [defaultvalue("text/html"), in] BSTR url,
+ [optional, in] VARIANT name,
+ [optional, in] VARIANT features,
+ [optional, in] VARIANT replace,
+ [retval, out] IDispatch **pomWindowResult);
+
+ [id(DISPID_IHTMLDOCUMENT2_CLOSE)]
+ HRESULT close();
+
+ [id(DISPID_IHTMLDOCUMENT2_CLEAR)]
+ HRESULT clear();
+
+ [id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDSUPPORTED)]
+ HRESULT queryCommandSupported(
+ [in] BSTR cmdID,
+ [retval, out] VARIANT_BOOL *pfRet);
+
+ [id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDENABLED)]
+ HRESULT queryCommandEnabled(
+ [in] BSTR cmdID,
+ [retval, out] VARIANT_BOOL *pfRet);
+
+ [id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDSTATE)]
+ HRESULT queryCommandState(
+ [in] BSTR cmdID,
+ [retval, out] VARIANT_BOOL *pfRet);
+
+ [id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDINDETERM)]
+ HRESULT queryCommandIndeterm(
+ [in] BSTR cmdID,
+ [retval, out] VARIANT_BOOL *pfRet);
+
+ [id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDTEXT)]
+ HRESULT queryCommandText(
+ [in] BSTR cmdID,
+ [retval, out] BSTR *pcmdText);
+
+ [id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDVALUE)]
+ HRESULT queryCommandValue(
+ [in] BSTR cmdID,
+ [retval, out] VARIANT *pcmdValue);
+
+ [id(DISPID_IHTMLDOCUMENT2_EXECCOMMAND)]
+ HRESULT execCommand(
+ [in] BSTR cmdID,
+ [defaultvalue(0), in] VARIANT_BOOL showUI,
+ [optional, in] VARIANT value,
+ [retval, out] VARIANT_BOOL *pfRet);
+
+ [id(DISPID_IHTMLDOCUMENT2_EXECCOMMANDSHOWHELP)]
+ HRESULT execCommandShowHelp(
+ [in] BSTR cmdID,
+ [retval, out] VARIANT_BOOL *pfRet);
+
+ [id(DISPID_IHTMLDOCUMENT2_CREATEELEMENT)]
+ HRESULT createElement(
+ [in] BSTR eTag,
+ [retval, out] IHTMLElement **newElem);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONHELP)]
+ HRESULT onhelp([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONHELP)]
+ HRESULT onhelp([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONCLICK)]
+ HRESULT onclick([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONCLICK)]
+ HRESULT onclick([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONDBLCLICK)]
+ HRESULT ondblclick([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONDBLCLICK)]
+ HRESULT ondblclick([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONKEYUP)]
+ HRESULT onkeyup([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONKEYUP)]
+ HRESULT onkeyup([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONKEYDOWN)]
+ HRESULT onkeydown([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONKEYDOWN)]
+ HRESULT onkeydown([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONKEYPRESS)]
+ HRESULT onkeypress([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONKEYPRESS)]
+ HRESULT onkeypress([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONMOUSEUP)]
+ HRESULT onmouseup([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONMOUSEUP)]
+ HRESULT onmouseup([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONMOUSEDOWN)]
+ HRESULT onmousedown([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONMOUSEDOWN)]
+ HRESULT onmousedown([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONMOUSEMOVE)]
+ HRESULT onmousemove([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONMOUSEMOVE)]
+ HRESULT onmousemove([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONMOUSEOUT)]
+ HRESULT onmouseout([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONMOUSEOUT)]
+ HRESULT onmouseout([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONMOUSEOVER)]
+ HRESULT onmouseover([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONMOUSEOVER)]
+ HRESULT onmouseover([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONREADYSTATECHANGE)]
+ HRESULT onreadystatechange([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONREADYSTATECHANGE)]
+ HRESULT onreadystatechange([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONAFTERUPDATE)]
+ HRESULT onafterupdate([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONAFTERUPDATE)]
+ HRESULT onafterupdate([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONROWEXIT)]
+ HRESULT onrowexit([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONROWEXIT)]
+ HRESULT onrowexit([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONROWENTER)]
+ HRESULT onrowenter([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONROWENTER)]
+ HRESULT onrowenter([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONDRAGSTART)]
+ HRESULT ondragstart([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONDRAGSTART)]
+ HRESULT ondragstart([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONSELECTSTART)]
+ HRESULT onselectstart([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONSELECTSTART)]
+ HRESULT onselectstart([retval, out] VARIANT *p);
+
+ [id(DISPID_IHTMLDOCUMENT2_ELEMENTFROMPOINT)]
+ HRESULT elementFromPoint(
+ [in] long x,
+ [in] long y,
+ [retval, out] IHTMLElement **elementHit);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_PARENTWINDOW)]
+ HRESULT parentWindow([retval, out] IHTMLWindow2 **p);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_STYLESHEETS)]
+ HRESULT styleSheets([retval, out] IHTMLStyleSheetsCollection **p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONBEFOREUPDATE)]
+ HRESULT onbeforeupdate([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONBEFOREUPDATE)]
+ HRESULT onbeforeupdate([retval, out] VARIANT *p);
+
+ [propput, id(DISPID_IHTMLDOCUMENT2_ONERRORUPDATE)]
+ HRESULT onerrorupdate([in] VARIANT v);
+
+ [propget, id(DISPID_IHTMLDOCUMENT2_ONERRORUPDATE)]
+ HRESULT onerrorupdate([retval, out] VARIANT *p);
+
+ [id(DISPID_IHTMLDOCUMENT2_TOSTRING)]
+ HRESULT toString([retval, out] BSTR *String);
+
+ [id(DISPID_IHTMLDOCUMENT2_CREATESTYLESHEET)]
+ HRESULT createStyleSheet(
+ [defaultvalue(""), in] BSTR bstrHref,
+ [defaultvalue(-1), in] long lIndex,
+ [retval, out] IHTMLStyleSheet **ppnewStyleSheet);
+}
+
+/*****************************************************************************
+ * HTMLDocument coclass
+ */
+[
+ uuid(25336920-03F9-11cf-8FD0-00AA00686F13)
+]
+coclass HTMLDocument
+{
+ [default] interface IHTMLDocument2;
+ [source, default] dispinterface HTMLDocumentEvents;
+};
diff --git a/include/olectl.h b/include/olectl.h
index 7a9927ceba6..64ec7612d2d 100644
--- a/include/olectl.h
+++ b/include/olectl.h
@@ -19,6 +19,8 @@
#ifndef __WINE_OLECTL_H
#define __WINE_OLECTL_H
+#if !defined(__midl) && !defined(__WIDL__)
+
#include
#ifdef __cplusplus
@@ -170,89 +172,6 @@ HRESULT WINAPI OleCreateFontIndirect(LPFONTDESC lpFontDesc, REFIID riid,
HRESULT WINAPI OleTranslateColor( OLE_COLOR clr, HPALETTE hpal,
COLORREF* lpcolorref);
-/* standard dispatch ID's */
-#define DISPID_AUTOSIZE (-500)
-#define DISPID_BACKCOLOR (-501)
-#define DISPID_BACKSTYLE (-502)
-#define DISPID_BORDERCOLOR (-503)
-#define DISPID_BORDERSTYLE (-504)
-#define DISPID_BORDERWIDTH (-505)
-#define DISPID_DRAWMODE (-507)
-#define DISPID_DRAWSTYLE (-508)
-#define DISPID_DRAWWIDTH (-509)
-#define DISPID_FILLCOLOR (-510)
-#define DISPID_FILLSTYLE (-511)
-#define DISPID_FONT (-512)
-#define DISPID_FORECOLOR (-513)
-#define DISPID_ENABLED (-514)
-#define DISPID_HWND (-515)
-#define DISPID_TABSTOP (-516)
-#define DISPID_TEXT (-517)
-#define DISPID_CAPTION (-518)
-#define DISPID_BORDERVISIBLE (-519)
-#define DISPID_APPEARANCE (-520)
-#define DISPID_MOUSEPOINTER (-521)
-#define DISPID_MOUSEICON (-522)
-#define DISPID_PICTURE (-523)
-#define DISPID_VALID (-524)
-#define DISPID_READYSTATE (-525)
-
-#define DISPID_REFRESH (-550)
-#define DISPID_DOCLICK (-551)
-#define DISPID_ABOUTBOX (-552)
-
-#define DISPID_CLICK (-600)
-#define DISPID_DBLCLICK (-601)
-#define DISPID_KEYDOWN (-602)
-#define DISPID_KEYPRESS (-603)
-#define DISPID_KEYUP (-604)
-#define DISPID_MOUSEDOWN (-605)
-#define DISPID_MOUSEMOVE (-606)
-#define DISPID_MOUSEUP (-607)
-#define DISPID_ERROREVENT (-608)
-#define DISPID_READYSTATECHANGE (-609)
-
-#define DISPID_AMBIENT_BACKCOLOR (-701)
-#define DISPID_AMBIENT_DISPLAYNAME (-702)
-#define DISPID_AMBIENT_FONT (-703)
-#define DISPID_AMBIENT_FORECOLOR (-704)
-#define DISPID_AMBIENT_LOCALEID (-705)
-#define DISPID_AMBIENT_MESSAGEREFLECT (-706)
-#define DISPID_AMBIENT_SCALEUNITS (-707)
-#define DISPID_AMBIENT_TEXTALIGN (-708)
-#define DISPID_AMBIENT_USERMODE (-709)
-#define DISPID_AMBIENT_UIDEAD (-710)
-#define DISPID_AMBIENT_SHOWGRABHANDLES (-711)
-#define DISPID_AMBIENT_SHOWHATCHING (-712)
-#define DISPID_AMBIENT_DISPLAYASDEFAULT (-713)
-#define DISPID_AMBIENT_SUPPORTSMNEMONICS (-714)
-#define DISPID_AMBIENT_AUTOCLIP (-715)
-#define DISPID_AMBIENT_APPEARANCE (-716)
-#define DISPID_AMBIENT_PALETTE (-726)
-#define DISPID_AMBIENT_TRANSFERPRIORITY (-728)
-
-#define DISPID_Name (-800)
-#define DISPID_Delete (-801)
-#define DISPID_Object (-802)
-#define DISPID_Parent (-803)
-
-#define DISPID_FONT_NAME 0
-#define DISPID_FONT_SIZE 2
-#define DISPID_FONT_BOLD 3
-#define DISPID_FONT_ITALIC 4
-#define DISPID_FONT_UNDER 5
-#define DISPID_FONT_STRIKE 6
-#define DISPID_FONT_WEIGHT 7
-#define DISPID_FONT_CHARSET 8
-
-/* IPicture */
-#define DISPID_PICT_HANDLE 0
-#define DISPID_PICT_HPAL 2
-#define DISPID_PICT_TYPE 3
-#define DISPID_PICT_WIDTH 4
-#define DISPID_PICT_HEIGHT 5
-#define DISPID_PICT_RENDER 6
-
/* Reflected Window Message IDs */
#define OCM__BASE (WM_USER+0x1c00)
#define OCM_COMMAND (OCM__BASE + WM_COMMAND)
@@ -357,4 +276,89 @@ HRESULT WINAPI OleTranslateColor( OLE_COLOR clr, HPALETTE hpal,
}
#endif
+#endif /* !__midl && !__WIDL__ */
+
+/* standard dispatch ID's */
+#define DISPID_AUTOSIZE (-500)
+#define DISPID_BACKCOLOR (-501)
+#define DISPID_BACKSTYLE (-502)
+#define DISPID_BORDERCOLOR (-503)
+#define DISPID_BORDERSTYLE (-504)
+#define DISPID_BORDERWIDTH (-505)
+#define DISPID_DRAWMODE (-507)
+#define DISPID_DRAWSTYLE (-508)
+#define DISPID_DRAWWIDTH (-509)
+#define DISPID_FILLCOLOR (-510)
+#define DISPID_FILLSTYLE (-511)
+#define DISPID_FONT (-512)
+#define DISPID_FORECOLOR (-513)
+#define DISPID_ENABLED (-514)
+#define DISPID_HWND (-515)
+#define DISPID_TABSTOP (-516)
+#define DISPID_TEXT (-517)
+#define DISPID_CAPTION (-518)
+#define DISPID_BORDERVISIBLE (-519)
+#define DISPID_APPEARANCE (-520)
+#define DISPID_MOUSEPOINTER (-521)
+#define DISPID_MOUSEICON (-522)
+#define DISPID_PICTURE (-523)
+#define DISPID_VALID (-524)
+#define DISPID_READYSTATE (-525)
+
+#define DISPID_REFRESH (-550)
+#define DISPID_DOCLICK (-551)
+#define DISPID_ABOUTBOX (-552)
+
+#define DISPID_CLICK (-600)
+#define DISPID_DBLCLICK (-601)
+#define DISPID_KEYDOWN (-602)
+#define DISPID_KEYPRESS (-603)
+#define DISPID_KEYUP (-604)
+#define DISPID_MOUSEDOWN (-605)
+#define DISPID_MOUSEMOVE (-606)
+#define DISPID_MOUSEUP (-607)
+#define DISPID_ERROREVENT (-608)
+#define DISPID_READYSTATECHANGE (-609)
+
+#define DISPID_AMBIENT_BACKCOLOR (-701)
+#define DISPID_AMBIENT_DISPLAYNAME (-702)
+#define DISPID_AMBIENT_FONT (-703)
+#define DISPID_AMBIENT_FORECOLOR (-704)
+#define DISPID_AMBIENT_LOCALEID (-705)
+#define DISPID_AMBIENT_MESSAGEREFLECT (-706)
+#define DISPID_AMBIENT_SCALEUNITS (-707)
+#define DISPID_AMBIENT_TEXTALIGN (-708)
+#define DISPID_AMBIENT_USERMODE (-709)
+#define DISPID_AMBIENT_UIDEAD (-710)
+#define DISPID_AMBIENT_SHOWGRABHANDLES (-711)
+#define DISPID_AMBIENT_SHOWHATCHING (-712)
+#define DISPID_AMBIENT_DISPLAYASDEFAULT (-713)
+#define DISPID_AMBIENT_SUPPORTSMNEMONICS (-714)
+#define DISPID_AMBIENT_AUTOCLIP (-715)
+#define DISPID_AMBIENT_APPEARANCE (-716)
+#define DISPID_AMBIENT_PALETTE (-726)
+#define DISPID_AMBIENT_TRANSFERPRIORITY (-728)
+
+#define DISPID_Name (-800)
+#define DISPID_Delete (-801)
+#define DISPID_Object (-802)
+#define DISPID_Parent (-803)
+
+#define DISPID_FONT_NAME 0
+#define DISPID_FONT_SIZE 2
+#define DISPID_FONT_BOLD 3
+#define DISPID_FONT_ITALIC 4
+#define DISPID_FONT_UNDER 5
+#define DISPID_FONT_STRIKE 6
+#define DISPID_FONT_WEIGHT 7
+#define DISPID_FONT_CHARSET 8
+
+/* IPicture */
+#define DISPID_PICT_HANDLE 0
+#define DISPID_PICT_HPAL 2
+#define DISPID_PICT_TYPE 3
+#define DISPID_PICT_WIDTH 4
+#define DISPID_PICT_HEIGHT 5
+#define DISPID_PICT_RENDER 6
+
#endif /* __WINE_OLECTL_H */
diff --git a/include/uuids.h b/include/uuids.h
index bcd2a9658f5..62349b5ad2b 100644
--- a/include/uuids.h
+++ b/include/uuids.h
@@ -270,6 +270,5 @@ OUR_GUID_ENTRY(CLSID_VideoProcAmpPropertyPage, 0x71f96464, 0x78f3, 0x11d0,
OUR_GUID_ENTRY(CLSID_CameraControlPropertyPage, 0x71f96465, 0x78f3, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56)
OUR_GUID_ENTRY(CLSID_AnalogVideoDecoderPropertyPage, 0x71f96466, 0x78f3, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56)
OUR_GUID_ENTRY(CLSID_VideoStreamConfigPropertyPage, 0x71f96467, 0x78f3, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56)
-OUR_GUID_ENTRY(CLSID_HTMLDocument, 0x25336920, 0x03f9, 0x11cf, 0x8f, 0xd0, 0x00, 0xaa, 0x00, 0x68, 0x6f, 0x13)
#undef OUR_GUID_ENTRY