static HRESULT WINAPI HTMLDOMTextNode_splitText(IHTMLDOMTextNode *iface, LONG offset, IHTMLDOMNode **pRetNode) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); HTMLDOMNode *node; nsIDOMText *text; nsresult nsres; HRESULT hres; TRACE("(%p)->(%d %p)\n", This, offset, pRetNode); nsres = nsIDOMText_SplitText(This->nstext, offset, &text); if(NS_FAILED(nsres)) { ERR("SplitText failed: %x08x\n", nsres); return E_FAIL; } if(!text) { *pRetNode = NULL; return S_OK; } hres = get_node(This->node.doc, (nsIDOMNode*)text, TRUE, &node); nsIDOMText_Release(text); if(FAILED(hres)) return hres; *pRetNode = &node->IHTMLDOMNode_iface; return S_OK; }
static HRESULT WINAPI HTMLDOMTextNode_QueryInterface(IHTMLDOMTextNode *iface, REFIID riid, void **ppv) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); return IHTMLDOMNode_QueryInterface(&This->node.IHTMLDOMNode_iface, riid, ppv); }
static HRESULT WINAPI HTMLDOMTextNode_Invoke(IHTMLDOMTextNode *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); return IDispatchEx_Invoke(&This->node.dispex.IDispatchEx_iface, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr); }
static HRESULT WINAPI HTMLDOMTextNode_GetIDsOfNames(IHTMLDOMTextNode *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); return IDispatchEx_GetIDsOfNames(&This->node.dispex.IDispatchEx_iface, riid, rgszNames, cNames, lcid, rgDispId); }
static HRESULT WINAPI HTMLDOMTextNode_get_data(IHTMLDOMTextNode *iface, BSTR *p) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); nsAString nsstr; nsresult nsres; TRACE("(%p)->(%p)\n", This, p); nsAString_Init(&nsstr, NULL); nsres = nsIDOMText_GetData(This->nstext, &nsstr); return return_nsstr(nsres, &nsstr, p); }
static HRESULT WINAPI HTMLDOMTextNode_put_data(IHTMLDOMTextNode *iface, BSTR v) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); nsAString nsstr; nsresult nsres; TRACE("(%p)->(%s)\n", This, debugstr_w(v)); nsAString_InitDepend(&nsstr, v); nsres = nsIDOMText_SetData(This->nstext, &nsstr); nsAString_Finish(&nsstr); return NS_SUCCEEDED(nsres) ? S_OK : E_FAIL; }
static HRESULT WINAPI HTMLDOMTextNode_get_length(IHTMLDOMTextNode *iface, LONG *p) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); UINT32 length = 0; nsresult nsres; TRACE("(%p)->(%p)\n", This, p); nsres = nsIDOMText_GetLength(This->nstext, &length); if(NS_FAILED(nsres)) ERR("GetLength failed: %08x\n", nsres); *p = length; return S_OK; }
static HRESULT WINAPI HTMLDOMTextNode_GetTypeInfo(IHTMLDOMTextNode *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); return IDispatchEx_GetTypeInfo(&This->node.dispex.IDispatchEx_iface, iTInfo, lcid, ppTInfo); }
static HRESULT WINAPI HTMLDOMTextNode_GetTypeInfoCount(IHTMLDOMTextNode *iface, UINT *pctinfo) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); return IDispatchEx_GetTypeInfoCount(&This->node.dispex.IDispatchEx_iface, pctinfo); }
static ULONG WINAPI HTMLDOMTextNode_Release(IHTMLDOMTextNode *iface) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); return IHTMLDOMNode_Release(&This->node.IHTMLDOMNode_iface); }
static HRESULT WINAPI HTMLDOMTextNode_splitText(IHTMLDOMTextNode *iface, LONG offset, IHTMLDOMNode **pRetNode) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); FIXME("(%p)->(%d %p)\n", This, offset, pRetNode); return E_NOTIMPL; }
static HRESULT WINAPI HTMLDOMTextNode_toString(IHTMLDOMTextNode *iface, BSTR *String) { HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); FIXME("(%p)->(%p)\n", This, String); return E_NOTIMPL; }