mshtml: Implement IHTMLDocument5 createComment (resend)
Alistair Leslie-Hughes
leslie_alistair at hotmail.com
Thu Jan 15 17:28:59 CST 2009
Hi,
Can I get some feedback on this please?
Best Regards
Alistair Leslie-Hughes
"Alistair Leslie-Hughes" <leslie_alistair at hotmail.com> wrote in message
news:496D1EBF.2000800 at hotmail.com...
> Hi,
>
> Changelog:
> mshtml: Implement IHTMLDocument5 createComment
>
> Best Regards
> Alistair Leslie-Hughes
>
>
>
>
--------------------------------------------------------------------------------
> From 98f08b3836336d2f129413beada591fb8f2f1094 Mon Sep 17 00:00:00 2001
> From: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
> Date: Tue, 16 Dec 2008 21:49:25 +1100
> Subject: [PATCH] Implement IHTMLDocument5 createComment
> To: wine-patches <wine-patches at winehq.org>
>
> ---
> dlls/mshtml/htmldoc5.c | 28 ++++++++++++++++++++++++++--
> dlls/mshtml/tests/dom.c | 11 +++++++++++
> 2 files changed, 37 insertions(+), 2 deletions(-)
>
> diff --git a/dlls/mshtml/htmldoc5.c b/dlls/mshtml/htmldoc5.c
> index 34dc4e0..8fdfb68 100644
> --- a/dlls/mshtml/htmldoc5.c
> +++ b/dlls/mshtml/htmldoc5.c
> @@ -124,8 +124,32 @@ static HRESULT WINAPI
> HTMLDocument5_createComment(IHTMLDocument5 *iface, BSTR bs
> IHTMLDOMNode **ppRetNode)
> {
> HTMLDocument *This = HTMLDOC5_THIS(iface);
> - FIXME("(%p)->(%s %p)\n", This, debugstr_w(bstrdata), ppRetNode);
> - return E_NOTIMPL;
> + nsIDOMComment *nsComment;
> + HTMLDOMNode *node;
> + nsAString str;
> + nsresult nsres;
> +
> + TRACE("(%p)->(%s %p)\n", This, debugstr_w(bstrdata), ppRetNode);
> +
> + if(!This->nsdoc) {
> + WARN("NULL nsdoc\n");
> + return E_UNEXPECTED;
> + }
> +
> + nsAString_Init(&str, bstrdata);
> + nsres = nsIDOMHTMLDocument_CreateComment(This->nsdoc, &str,
> &nsComment);
> + nsAString_Finish(&str);
> + if(NS_FAILED(nsres)) {
> + ERR("CreateTextNode failed: %08x\n", nsres);
> + return E_FAIL;
> + }
> +
> + node = &HTMLCommentElement_Create(This,
> (nsIDOMNode*)nsComment)->node;
> + nsIDOMElement_Release(nsComment);
> +
> + *ppRetNode = HTMLDOMNODE(node);
> + IHTMLDOMNode_AddRef(HTMLDOMNODE(node));
> + return S_OK;
> }
>
> static HRESULT WINAPI HTMLDocument5_put_onfocusin(IHTMLDocument5 *iface,
> VARIANT v)
> diff --git a/dlls/mshtml/tests/dom.c b/dlls/mshtml/tests/dom.c
> index 3decd4b..400f83b 100644
> --- a/dlls/mshtml/tests/dom.c
> +++ b/dlls/mshtml/tests/dom.c
> @@ -410,7 +410,9 @@ static IHTMLDocument2 *create_document(void)
> {
> IHTMLDocument2 *doc;
> IHTMLDocument5 *doc5;
> + IHTMLDOMNode *comment;
> HRESULT hres;
> + BSTR str;
>
> hres = CoCreateInstance(&CLSID_HTMLDocument, NULL,
> CLSCTX_INPROC_SERVER|CLSCTX_INPROC_HANDLER,
> &IID_IHTMLDocument2, (void**)&doc);
> @@ -423,6 +425,15 @@ static IHTMLDocument2 *create_document(void)
> return NULL;
> }
>
> + str = a2bstr("testing");
> + hres = IHTMLDocument5_createComment(doc5, str, &comment);
> + SysFreeString(str);
> + ok(hres == S_OK, "createComment failed: %08x\n", hres);
> + if(hres == S_OK)
> + {
> + IHTMLDOMNode_Release(comment);
> + }
> +
> IHTMLDocument5_Release(doc5);
> return doc;
> }
> --
> 1.5.4.3
>
>
--------------------------------------------------------------------------------
>
>
More information about the wine-devel
mailing list