Hi,
Can I get some feedback on please?
Best Regards Alistair Leslie-Hughes
"Alistair Leslie-Hughes" leslie_alistair@hotmail.com wrote in message news:49A7AF90.8000805@hotmail.com...
Hi, Moved forward declare to private header.
Changelog: mshtml: Implement IHTMLElement2_insertAdjecentElement
Best Regards Alistair Leslie-Hughes
--------------------------------------------------------------------------------
From afef95a87e49096a1fb26cb85a73463fcf5e5560 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes leslie_alistair@hotmail.com Date: Thu, 19 Feb 2009 20:30:21 +1100 Subject: [PATCH] Implement IHTMLElement2_insertAdjecentElement To: wine-patches wine-patches@winehq.org
dlls/mshtml/htmlelem.c | 2 +- dlls/mshtml/htmlelem2.c | 13 +++++++++++-- dlls/mshtml/htmlnode.c | 3 +-- dlls/mshtml/mshtml_private.h | 3 +++ 4 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/dlls/mshtml/htmlelem.c b/dlls/mshtml/htmlelem.c index 7d9a244..0b5cff7 100644 --- a/dlls/mshtml/htmlelem.c +++ b/dlls/mshtml/htmlelem.c @@ -920,7 +920,7 @@ static HRESULT WINAPI HTMLElement_get_outerText(IHTMLElement *iface, BSTR *p) return E_NOTIMPL; }
-static HRESULT HTMLElement_InsertAdjacentNode(HTMLElement *This, BSTR where, nsIDOMNode *nsnode, +HRESULT HTMLElement_InsertAdjacentNode(HTMLElement *This, BSTR where, nsIDOMNode *nsnode, IHTMLElement **inserted) { static const WCHAR wszBeforeBegin[] = {'b','e','f','o','r','e','B','e','g','i','n',0}; diff --git a/dlls/mshtml/htmlelem2.c b/dlls/mshtml/htmlelem2.c index 3e22155..8007dc0 100644 --- a/dlls/mshtml/htmlelem2.c +++ b/dlls/mshtml/htmlelem2.c @@ -912,8 +912,17 @@ static HRESULT WINAPI HTMLElement2_insertAdjecentElement(IHTMLElement2 *iface, B IHTMLElement *insertedElement, IHTMLElement **inserted) { HTMLElement *This = HTMLELEM2_THIS(iface);
- FIXME("(%p)->(%s %p %p)\n", This, debugstr_w(where), insertedElement,
inserted);
- return E_NOTIMPL;
- HTMLDOMNode *node_ins;
- TRACE("(%p)->(%s %p %p)\n", This, debugstr_w(where), insertedElement,
inserted);
- node_ins = get_node_obj(This->node.doc, (IUnknown*)insertedElement);
- if(!node_ins) {
ERR("invalid insertedElement\n");
return E_INVALIDARG;
- }
- return HTMLElement_InsertAdjacentNode(This, where, node_ins->nsnode,
inserted); }
static HRESULT WINAPI HTMLElement2_applyElement(IHTMLElement2 *iface, IHTMLElement *apply, diff --git a/dlls/mshtml/htmlnode.c b/dlls/mshtml/htmlnode.c index bee0376..7d5ccb7 100644 --- a/dlls/mshtml/htmlnode.c +++ b/dlls/mshtml/htmlnode.c @@ -32,7 +32,6 @@
WINE_DEFAULT_DEBUG_CHANNEL(mshtml);
-static HTMLDOMNode *get_node_obj(HTMLDocument*,IUnknown*);
typedef struct { DispatchEx dispex; @@ -937,7 +936,7 @@ HTMLDOMNode *get_node(HTMLDocument *This, nsIDOMNode *nsnode, BOOL create)
- We should use better way for getting node object (like private
interface)
- or avoid it at all.
*/ -static HTMLDOMNode *get_node_obj(HTMLDocument *This, IUnknown *iface) +HTMLDOMNode *get_node_obj(HTMLDocument *This, IUnknown *iface) { HTMLDOMNode *iter = This->nodes; IHTMLDOMNode *node; diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index b67c485..37c3fcc 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -777,3 +777,6 @@ static inline char *heap_strdupWtoA(LPCWSTR str) HINSTANCE get_shdoclc(void);
extern HINSTANCE hInst; +HTMLDOMNode *get_node_obj(HTMLDocument*,IUnknown*); +HRESULT HTMLElement_InsertAdjacentNode(HTMLElement *This, BSTR where, nsIDOMNode *nsnode,
IHTMLElement **inserted);
-- 1.5.4.3
--------------------------------------------------------------------------------