From 022ae89e0fd463291be8d312d1fdc8021b87829e Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Tue, 13 Jan 2009 19:22:54 +1100 Subject: [PATCH] mshtml: Add missing IHTMLCurrentStyle interfaces. --- dlls/mshtml/htmlcurstyle.c | 4 +- include/mshtmdid.h | 11 +++ include/mshtml.idl | 139 +++++++++++++++++++++++++++++++++++++ 3 files changed, 152 insertions(+), 2 deletions(-) diff --git a/dlls/mshtml/htmlcurstyle.c b/dlls/mshtml/htmlcurstyle.c index f6a3a6a197f..0a935709d9d 100644 --- a/dlls/mshtml/htmlcurstyle.c +++ b/dlls/mshtml/htmlcurstyle.c @@ -32,14 +32,14 @@ WINE_DEFAULT_DEBUG_CHANNEL(mshtml); -typedef struct { +struct HTMLCurrentStyle { DispatchEx dispex; const IHTMLCurrentStyleVtbl *lpIHTMLCurrentStyleVtbl; LONG ref; nsIDOMCSSStyleDeclaration *nsstyle; -} HTMLCurrentStyle; +}; #define HTMLCURSTYLE(x) ((IHTMLCurrentStyle*) &(x)->lpIHTMLCurrentStyleVtbl) diff --git a/include/mshtmdid.h b/include/mshtmdid.h index d9c8f7cbc40..c8c8b274fa2 100644 --- a/include/mshtmdid.h +++ b/include/mshtmdid.h @@ -409,6 +409,11 @@ #define DISPID_A_TEXTOVERFLOW (DISPID_A_FIRST+209) #define DISPID_INTERNAL_CATTRIBUTECOLLPTRCACHE (DISPID_A_FIRST+210) #define DISPID_A_MINHEIGHT (DISPID_A_FIRST+211) +#define DISPID_INTERNAL_INVOKECONTEXTDOCUMENT (DISPID_A_FIRST+212) +#define DISPID_A_INTERPOLATION (DISPID_A_FIRST+213) +#define DISPID_A_MAXHEIGHT (DISPID_A_FIRST+214) +#define DISPID_A_MINWIDTH (DISPID_A_FIRST+215) +#define DISPID_A_MAXWIDTH (DISPID_A_FIRST+216) #define DISPID_WINDOWOBJECT (-5500) #define DISPID_LOCATIONOBJECT (-5506) @@ -2251,6 +2256,12 @@ #define DISPID_IHTMLCURRENTSTYLE3_WORDSPACING DISPID_A_WORDSPACING #define DISPID_IHTMLCURRENTSTYLE3_WHITESPACE DISPID_A_WHITESPACE +/* IHTMLCurrentStyle4 */ +#define DISPID_IHTMLCURRENTSTYLE4_MSINTERPOLATIONMODE DISPID_A_INTERPOLATION +#define DISPID_IHTMLCURRENTSTYLE4_MAXHEIGHT DISPID_A_MAXHEIGHT +#define DISPID_IHTMLCURRENTSTYLE4_MINWIDTH DISPID_A_MINWIDTH +#define DISPID_IHTMLCURRENTSTYLE4_MAXWIDTH DISPID_A_MAXWIDTH + /* HTMLTextContainerEvents2 */ #define DISPID_HTMLTEXTCONTAINEREVENTS2_ONCHANGE DISPID_EVMETH_ONCHANGE #define DISPID_HTMLTEXTCONTAINEREVENTS2_ONSELECT DISPID_EVMETH_ONSELECT diff --git a/include/mshtml.idl b/include/mshtml.idl index fa3fc977aed..4fdd5d3fe70 100644 --- a/include/mshtml.idl +++ b/include/mshtml.idl @@ -2736,6 +2736,120 @@ interface IHTMLCurrentStyle : IDispatch HRESULT textTransform([retval, out] BSTR *p); } +/***************************************************************************** + * IHTMLCurrentStyle2 interface + */ +[ + odl, + oleautomation, + dual, + uuid(3050f658-98b5-11cf-bb82-00aa00bdce0b) +] +interface IHTMLCurrentStyle2 : IDispatch +{ + [propget, id(DISPID_IHTMLCURRENTSTYLE2_LAYOUTFLOW), displaybind, bindable] + HRESULT layoutFlow([retval, out] BSTR * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_WORDWRAP), displaybind, bindable] + HRESULT wordWrap([retval, out] BSTR * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_TEXTUNDERLINEPOSITION), displaybind, bindable] + HRESULT textUnderlinePosition([retval, out] BSTR * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_HASLAYOUT), displaybind, bindable] + HRESULT hasLayout([retval, out] VARIANT_BOOL * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_SCROLLBARBASECOLOR), displaybind, bindable] + HRESULT scrollbarBaseColor([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_SCROLLBARFACECOLOR), displaybind, bindable] + HRESULT scrollbarFaceColor([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_SCROLLBAR3DLIGHTCOLOR), displaybind, bindable] + HRESULT scrollbar3dLightColor([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_SCROLLBARSHADOWCOLOR), displaybind, bindable] + HRESULT scrollbarShadowColor([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_SCROLLBARHIGHLIGHTCOLOR), displaybind, bindable] + HRESULT scrollbarHighlightColor([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_SCROLLBARDARKSHADOWCOLOR), displaybind, bindable] + HRESULT scrollbarDarkShadowColor([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_SCROLLBARARROWCOLOR), displaybind, bindable] + HRESULT scrollbarArrowColor([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_SCROLLBARTRACKCOLOR), displaybind, bindable] + HRESULT scrollbarTrackColor([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_WRITINGMODE), displaybind, bindable] + HRESULT writingMode([retval, out] BSTR * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_ZOOM), displaybind, bindable] + HRESULT zoom([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_FILTER), displaybind, bindable] + HRESULT filter([retval, out] BSTR * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_TEXTALIGNLAST), displaybind, bindable] + HRESULT textAlignLast([retval, out] BSTR * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_TEXTKASHIDASPACE), displaybind, bindable] + HRESULT textKashidaSpace([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE2_ISBLOCK), displaybind, bindable, hidden, restricted, nonbrowsable] + HRESULT isBlock([retval, out] VARIANT_BOOL * p); +} + +/***************************************************************************** + * IHTMLCurrentStyle3 interface + */ +[ + odl, + oleautomation, + dual, + uuid(3050f818-98b5-11cf-bb82-00aa00bdce0b) +] +interface IHTMLCurrentStyle3 : IDispatch +{ + [propget, id(DISPID_IHTMLCURRENTSTYLE3_TEXTOVERFLOW), displaybind, bindable] + HRESULT textOverflow([retval, out] BSTR * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE3_MINHEIGHT), displaybind, bindable] + HRESULT minHeight([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE3_WORDSPACING), displaybind, bindable] + HRESULT wordSpacing([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE3_WHITESPACE), displaybind, bindable] + HRESULT whiteSpace([retval, out] BSTR * p); +} + +/***************************************************************************** + * IHTMLCurrentStyle4 interface + */ +[ + odl, + oleautomation, + dual, + uuid(3050f33b-98b5-11cf-bb82-00aa00bdce0b) +] +interface IHTMLCurrentStyle4 : IDispatch +{ + [propget, id(DISPID_IHTMLCURRENTSTYLE4_MSINTERPOLATIONMODE), displaybind, bindable] + HRESULT msInterpolationMode([retval, out] BSTR * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE4_MAXHEIGHT), displaybind, bindable] + HRESULT maxHeight([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE4_MINWIDTH), displaybind, bindable] + HRESULT minWidth([retval, out] VARIANT * p); + + [propget, id(DISPID_IHTMLCURRENTSTYLE4_MAXWIDTH), displaybind, bindable] + HRESULT maxWidth([retval, out] VARIANT * p); +}; + /***************************************************************************** * DispHTMLCurrentStyle dispinterface */ @@ -3087,6 +3201,31 @@ methods: [propget, id(DISPID_IHTMLCURRENTSTYLE3_WHITESPACE), displaybind, bindable] BSTR whiteSpace(); + + [propget, id(DISPID_IHTMLCURRENTSTYLE4_MSINTERPOLATIONMODE), displaybind, bindable] + BSTR msInterpolationMode(); + + [propget, id(DISPID_IHTMLCURRENTSTYLE4_MAXHEIGHT), displaybind, bindable] + VARIANT maxHeight(); + + [propget, id(DISPID_IHTMLCURRENTSTYLE4_MINWIDTH), displaybind, bindable] + VARIANT minWidth(); + + [propget, id(DISPID_IHTMLCURRENTSTYLE4_MAXWIDTH), displaybind, bindable] + VARIANT maxWidth(); +} + +[ + noncreatable, + uuid(3050f3dc-98b5-11cf-bb82-00aa00bdce0b) +] +coclass HTMLCurrentStyle +{ + [default] dispinterface DispHTMLCurrentStyle; + interface IHTMLCurrentStyle; + interface IHTMLCurrentStyle2; + interface IHTMLCurrentStyle3; + interface IHTMLCurrentStyle4; } /*****************************************************************************