From 6ec071605971c7dcbd388ce3dfb2cd1ee6bf3353 Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Wed, 16 Sep 2009 15:46:16 +1000 Subject: [PATCH] mshtml: Implement IHTMLCurrentStyle_get_marginTop. --- dlls/mshtml/htmlcurstyle.c | 4 ++-- dlls/mshtml/htmlstyle.c | 3 +++ dlls/mshtml/htmlstyle.h | 1 + dlls/mshtml/tests/dom.c | 5 +++++ 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/dlls/mshtml/htmlcurstyle.c b/dlls/mshtml/htmlcurstyle.c index a1483ec9dfb..3418b22a610 100644 --- a/dlls/mshtml/htmlcurstyle.c +++ b/dlls/mshtml/htmlcurstyle.c @@ -438,8 +438,8 @@ static HRESULT WINAPI HTMLCurrentStyle_get_backgroundAttachment(IHTMLCurrentStyl static HRESULT WINAPI HTMLCurrentStyle_get_marginTop(IHTMLCurrentStyle *iface, VARIANT *p) { HTMLCurrentStyle *This = HTMLCURSTYLE_THIS(iface); - FIXME("(%p)->(%p)\n", This, p); - return E_NOTIMPL; + TRACE("(%p)->(%p)\n", This, p); + return get_nsstyle_attr_var(This->nsstyle, STYLEID_MARGIN_TOP, p, 0); } static HRESULT WINAPI HTMLCurrentStyle_get_marginRight(IHTMLCurrentStyle *iface, VARIANT *p) diff --git a/dlls/mshtml/htmlstyle.c b/dlls/mshtml/htmlstyle.c index 698dff145eb..649e4b1c44e 100644 --- a/dlls/mshtml/htmlstyle.c +++ b/dlls/mshtml/htmlstyle.c @@ -111,6 +111,8 @@ static const WCHAR attrMarginLeft[] = {'m','a','r','g','i','n','-','l','e','f','t',0}; static const WCHAR attrMarginRight[] = {'m','a','r','g','i','n','-','r','i','g','h','t',0}; +static const WCHAR attrMarginTop[] = + {'m','a','r','g','i','n','-','t','o','p',0}; static const WCHAR attrMinHeight[] = {'m','i','n','-','h','e','i','g','h','t',0}; static const WCHAR attrOverflow[] = @@ -186,6 +188,7 @@ static const struct{ {attrMargin, DISPID_IHTMLSTYLE_MARGIN}, {attrMarginLeft, DISPID_IHTMLSTYLE_MARGINLEFT}, {attrMarginRight, DISPID_IHTMLSTYLE_MARGINRIGHT}, + {attrMarginTop, DISPID_IHTMLSTYLE_MARGINTOP}, {attrMinHeight, DISPID_IHTMLSTYLE4_MINHEIGHT}, {attrOverflow, DISPID_IHTMLSTYLE_OVERFLOW}, {attrPaddingBottom, DISPID_IHTMLSTYLE_PADDINGBOTTOM}, diff --git a/dlls/mshtml/htmlstyle.h b/dlls/mshtml/htmlstyle.h index 03ee72aa25d..bb4c6c7d8a8 100644 --- a/dlls/mshtml/htmlstyle.h +++ b/dlls/mshtml/htmlstyle.h @@ -73,6 +73,7 @@ typedef enum { STYLEID_MARGIN, STYLEID_MARGIN_LEFT, STYLEID_MARGIN_RIGHT, + STYLEID_MARGIN_TOP, STYLEID_MIN_HEIGHT, STYLEID_OVERFLOW, STYLEID_PADDING_BOTTOM, diff --git a/dlls/mshtml/tests/dom.c b/dlls/mshtml/tests/dom.c index 1eb950fef7b..e9e246d832a 100644 --- a/dlls/mshtml/tests/dom.c +++ b/dlls/mshtml/tests/dom.c @@ -2776,6 +2776,11 @@ static void test_current_style(IHTMLCurrentStyle *current_style) ok(hres == S_OK, "get_letterSpacing failed: %08x\n", hres); ok(V_VT(&v) == VT_BSTR, "V_VT(v) = %d\n", V_VT(&v)); VariantClear(&v); + + hres = IHTMLCurrentStyle_get_marginTop(current_style, &v); + ok(hres == S_OK, "get_marginTop failed: %08x\n", hres); + ok(V_VT(&v) == VT_BSTR, "V_VT(v) = %d\n", V_VT(&v)); + VariantClear(&v); } static void test_style2(IHTMLStyle2 *style2)