mshtml: Add missing interfaces.

This commit is contained in:
Alistair Leslie-Hughes 2009-08-05 19:44:25 +10:00 committed by Alexandre Julliard
parent ffd2e69f53
commit ccb23e8897
3 changed files with 181 additions and 4 deletions

View File

@ -31,13 +31,13 @@
WINE_DEFAULT_DEBUG_CHANNEL(mshtml);
typedef struct {
struct HTMLOptionElement {
HTMLElement element;
const IHTMLOptionElementVtbl *lpHTMLOptionElementVtbl;
nsIDOMHTMLOptionElement *nsoption;
} HTMLOptionElement;
};
#define HTMLOPTION(x) (&(x)->lpHTMLOptionElementVtbl)

View File

@ -48,13 +48,13 @@ struct HTMLStyleSheetsCollection {
nsIDOMStyleSheetList *nslist;
};
typedef struct {
struct HTMLStyleSheetRulesCollection {
const IHTMLStyleSheetRulesCollectionVtbl *lpHTMLStyleSheetRulesCollectionVtbl;
LONG ref;
nsIDOMCSSRuleList *nslist;
} HTMLStyleSheetRulesCollection;
};
#define HTMLSTYLESHEET(x) ((IHTMLStyleSheet*) &(x)->lpHTMLStyleSheetVtbl)
#define HTMLSTYLESHEETSCOL(x) ((IHTMLStyleSheetsCollection*) &(x)->lpHTMLStyleSheetsCollectionVtbl)

View File

@ -92,6 +92,26 @@ typedef enum _SELECTION_TYPE {
SELECTION_TYPE_Max = 2147483647
} SELECTION_TYPE;
[
odl,
oleautomation,
dual,
uuid(3051049b-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLDOMConstructor : IDispatch
{
[propget, id(DISPID_IHTMLDOMCONSTRUCTOR_CONSTRUCTOR), hidden]
HRESULT constructor([retval, out] IDispatch* * p);
HRESULT LookupGetter([in] BSTR propname, [retval, out] VARIANT* ppDispHandler);
HRESULT LookupSetter([in] BSTR propname, [retval, out] VARIANT* ppDispHandler);
HRESULT DefineGetter([in] BSTR propname, [in] VARIANT* pdispHandler);
HRESULT DefineSetter([in] BSTR propname, [in] VARIANT* pdispHandler);
}
interface IHTMLDocument2;
interface IHTMLStyleSheetsCollection;
interface IHTMLFrameBase;
@ -5377,6 +5397,41 @@ interface IHTMLStyleSheetRule : IDispatch
HRESULT readOnly([retval, out] VARIANT_BOOL *p);
}
[
hidden,
uuid(3050f50e-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispHTMLStyleSheetRule
{
properties:
methods:
[propput, id(DISPID_IHTMLSTYLESHEETRULE_SELECTORTEXT)]
void selectorText(BSTR v);
[propget, id(DISPID_IHTMLSTYLESHEETRULE_SELECTORTEXT)]
BSTR selectorText();
[propget, id(DISPID_IHTMLSTYLESHEETRULE_STYLE), nonbrowsable]
IHTMLRuleStyle* style();
[propget, id(DISPID_IHTMLSTYLESHEETRULE_READONLY)]
VARIANT_BOOL readOnly();
[propget, id(DISPID_IHTMLDOMCONSTRUCTOR_CONSTRUCTOR), hidden]
IDispatch* constructor();
}
[
noncreatable,
uuid(3050f3ce-98b5-11cf-bb82-00aa00bdce0b)
]
coclass HTMLStyleSheetRule
{
[default] dispinterface DispHTMLStyleSheetRule;
interface IHTMLStyleSheetRule;
interface IHTMLDOMConstructor;
}
/*****************************************************************************
* IHTMLStyleSheetRulesCollection interface
*/
@ -5397,6 +5452,35 @@ interface IHTMLStyleSheetRulesCollection : IDispatch
[retval, out] IHTMLStyleSheetRule **ppHTMLStyleSheetRule);
}
[
hidden,
uuid(3050f52f-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispHTMLStyleSheetRulesCollection
{
properties:
methods:
[propget, id(DISPID_IHTMLSTYLESHEETRULESCOLLECTION_LENGTH)]
long length();
[id(DISPID_IHTMLSTYLESHEETRULESCOLLECTION_ITEM)]
IHTMLStyleSheetRule* item([in] long index);
[propget, id(DISPID_IHTMLDOMCONSTRUCTOR_CONSTRUCTOR), hidden]
IDispatch* constructor();
}
[
noncreatable,
uuid(3050f3cd-98b5-11cf-bb82-00aa00bdce0b)
]
coclass HTMLStyleSheetRulesCollection
{
[default] dispinterface DispHTMLStyleSheetRulesCollection;
interface IHTMLStyleSheetRulesCollection;
interface IHTMLDOMConstructor;
}
[
odl,
oleautomation,
@ -5412,6 +5496,34 @@ interface IHTMLStyleSheetPage : IDispatch
HRESULT pseudoClass([retval, out] BSTR *p);
}
[
hidden,
uuid(3050f540-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispHTMLStyleSheetPage
{
properties:
methods:
[propget, id(DISPID_IHTMLSTYLESHEETPAGE_SELECTOR)]
BSTR selector();
[propget, id(DISPID_IHTMLSTYLESHEETPAGE_PSEUDOCLASS)]
BSTR pseudoClass();
[propget, id(DISPID_IHTMLDOMCONSTRUCTOR_CONSTRUCTOR), hidden]
IDispatch* constructor();
}
[
noncreatable,
uuid(3050f7ef-98b5-11cf-bb82-00aa00bdce0b)
]
coclass HTMLStyleSheetPage
{
[default] dispinterface DispHTMLStyleSheetPage;
interface IHTMLStyleSheetPage;
interface IHTMLDOMConstructor;
};
[
odl,
oleautomation,
@ -5429,6 +5541,35 @@ interface IHTMLStyleSheetPagesCollection : IDispatch
[retval, out] IHTMLStyleSheetPage **ppHTMLStyleSheetPage);
}
[
hidden,
uuid(3050f543-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispHTMLStyleSheetPagesCollection
{
properties:
methods:
[propget, id(DISPID_IHTMLSTYLESHEETPAGESCOLLECTION_LENGTH)]
long length();
[id(DISPID_IHTMLSTYLESHEETPAGESCOLLECTION_ITEM)]
IHTMLStyleSheetPage* item([in] long index);
[propget, id(DISPID_IHTMLDOMCONSTRUCTOR_CONSTRUCTOR), hidden]
IDispatch* constructor();
}
[
noncreatable,
uuid(3050f7f1-98b5-11cf-bb82-00aa00bdce0b)
]
coclass HTMLStyleSheetPagesCollection
{
[default] dispinterface DispHTMLStyleSheetPagesCollection;
interface IHTMLStyleSheetPagesCollection;
interface IHTMLDOMConstructor;
}
/*****************************************************************************
* IHTMLStyleSheet interface
*/
@ -9616,6 +9757,21 @@ interface IHTMLOptionElement : IDispatch
HRESULT form([retval, out] IHTMLFormElement **p);
}
[
odl,
oleautomation,
dual,
uuid(3050f820-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLOptionElement3 : IDispatch
{
[propput, id(DISPID_IHTMLOPTIONELEMENT3_LABEL), displaybind, bindable]
HRESULT label([in] BSTR v);
[propget, id(DISPID_IHTMLOPTIONELEMENT3_LABEL), displaybind, bindable]
HRESULT label([retval, out] BSTR * p);
}
/*****************************************************************************
* IHTMLOptionElementFactory interface
*/
@ -10527,6 +10683,27 @@ methods:
BSTR label();
}
[
noncreatable,
uuid(3050f24d-98b5-11cf-bb82-00aa00bdce0b)
]
coclass HTMLOptionElement
{
[default] dispinterface DispHTMLOptionElement;
[source, default] dispinterface HTMLElementEvents;
[source] dispinterface HTMLElementEvents2;
interface IHTMLElement;
interface IHTMLElement2;
interface IHTMLElement3;
interface IHTMLElement4;
interface IHTMLUniqueName;
interface IHTMLDOMNode;
interface IHTMLDOMNode2;
interface IHTMLDatabinding;
interface IHTMLOptionElement;
interface IHTMLOptionElement3;
}
/*****************************************************************************
* IHTMLInputElement interface
*/