Alistair Leslie-Hughes : mshtml: Implement IHTMLBodyElement get/put bgColor .
Alexandre Julliard
julliard at winehq.org
Mon Sep 8 07:41:10 CDT 2008
Module: wine
Branch: master
Commit: 4196f83f49eadb951a9392f332e9d892dfd22582
URL: http://source.winehq.org/git/wine.git/?a=commit;h=4196f83f49eadb951a9392f332e9d892dfd22582
Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date: Fri Sep 5 20:34:59 2008 +1000
mshtml: Implement IHTMLBodyElement get/put bgColor.
---
dlls/mshtml/htmlbody.c | 37 +++++++++++++++++++++++++++++++++----
1 files changed, 33 insertions(+), 4 deletions(-)
diff --git a/dlls/mshtml/htmlbody.c b/dlls/mshtml/htmlbody.c
index 13c802e..140a0a5 100644
--- a/dlls/mshtml/htmlbody.c
+++ b/dlls/mshtml/htmlbody.c
@@ -257,15 +257,44 @@ static HRESULT WINAPI HTMLBodyElement_get_noWrap(IHTMLBodyElement *iface, VARIAN
static HRESULT WINAPI HTMLBodyElement_put_bgColor(IHTMLBodyElement *iface, VARIANT v)
{
HTMLBodyElement *This = HTMLBODY_THIS(iface);
- FIXME("(%p)->()\n", This);
- return E_NOTIMPL;
+ nsAString strColor;
+ nsresult nsres;
+
+ TRACE("(%p)->()\n", This);
+
+ if(!variant_to_nscolor(&v, &strColor))
+ return S_OK;
+
+ nsres = nsIDOMHTMLBodyElement_SetBgColor(This->nsbody, &strColor);
+ nsAString_Finish(&strColor);
+ if(NS_FAILED(nsres))
+ ERR("SetBgColor failed: %08x\n", nsres);
+
+ return S_OK;
}
static HRESULT WINAPI HTMLBodyElement_get_bgColor(IHTMLBodyElement *iface, VARIANT *p)
{
HTMLBodyElement *This = HTMLBODY_THIS(iface);
- FIXME("(%p)->(%p)\n", This, p);
- return E_NOTIMPL;
+ nsAString strColor;
+ nsresult nsres;
+ const PRUnichar *color;
+
+ TRACE("(%p)->(%p)\n", This, p);
+
+ nsAString_Init(&strColor, NULL);
+ nsres = nsIDOMHTMLBodyElement_GetBgColor(This->nsbody, &strColor);
+ if(NS_FAILED(nsres))
+ ERR("SetBgColor failed: %08x\n", nsres);
+
+ nsAString_GetData(&strColor, &color);
+
+ V_VT(p) = VT_BSTR;
+ V_BSTR(p) = SysAllocString(color);
+
+ nsAString_Finish(&strColor);
+
+ return S_OK;
}
static HRESULT WINAPI HTMLBodyElement_put_text(IHTMLBodyElement *iface, VARIANT v)
More information about the wine-cvs
mailing list