static HRESULT WINAPI dom_pi_get_parsed( IXMLDOMProcessingInstruction *iface, VARIANT_BOOL* pbool) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_get_parsed( IXMLDOMNode_from_impl(&This->node), pbool ); }
static HRESULT WINAPI dom_pi_get_baseName( IXMLDOMProcessingInstruction *iface, BSTR* p) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_get_baseName( IXMLDOMNode_from_impl(&This->node), p ); }
static HRESULT WINAPI dom_pi_transformNode( IXMLDOMProcessingInstruction *iface, IXMLDOMNode* domNode, BSTR* p) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_transformNode( IXMLDOMNode_from_impl(&This->node), domNode, p ); }
static HRESULT WINAPI dom_pi_selectSingleNode( IXMLDOMProcessingInstruction *iface, BSTR p, IXMLDOMNode** outNode) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_selectSingleNode( IXMLDOMNode_from_impl(&This->node), p, outNode ); }
static HRESULT WINAPI dom_pi_get_dataType( IXMLDOMProcessingInstruction *iface, VARIANT* var1) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_get_dataType( IXMLDOMNode_from_impl(&This->node), var1 ); }
static HRESULT WINAPI dom_pi_put_dataType( IXMLDOMProcessingInstruction *iface, BSTR p) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_put_dataType( IXMLDOMNode_from_impl(&This->node), p ); }
static HRESULT WINAPI dom_pi_get_definition( IXMLDOMProcessingInstruction *iface, IXMLDOMNode** domNode) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_get_definition( IXMLDOMNode_from_impl(&This->node), domNode ); }
static HRESULT WINAPI dom_pi_put_data( IXMLDOMProcessingInstruction *iface, BSTR data) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); HRESULT hr; VARIANT val; BSTR sTarget; TRACE("(%p)->(%s)\n", This, debugstr_w(data) ); /* Cannot set data to a PI node whose target is 'xml' */ hr = dom_pi_get_nodeName(iface, &sTarget); if(hr == S_OK) { static const WCHAR xmlW[] = {'x','m','l',0}; if(lstrcmpW( sTarget, xmlW) == 0) { SysFreeString(sTarget); return E_FAIL; } SysFreeString(sTarget); } V_VT(&val) = VT_BSTR; V_BSTR(&val) = data; return IXMLDOMProcessingInstruction_put_nodeValue( iface, val ); }
static HRESULT WINAPI dom_pi_get_ownerDocument( IXMLDOMProcessingInstruction *iface, IXMLDOMDocument** domDocument) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_get_ownerDocument( IXMLDOMNode_from_impl(&This->node), domDocument ); }
static HRESULT WINAPI dom_pi_cloneNode( IXMLDOMProcessingInstruction *iface, VARIANT_BOOL pbool, IXMLDOMNode** outNode) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(&This->node), pbool, outNode ); }
static HRESULT WINAPI dom_pi_appendChild( IXMLDOMProcessingInstruction *iface, IXMLDOMNode* newNode, IXMLDOMNode** outNewNode) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_appendChild( IXMLDOMNode_from_impl(&This->node), newNode, outNewNode ); }
static HRESULT WINAPI dom_pi_removeChild( IXMLDOMProcessingInstruction *iface, IXMLDOMNode* domNode, IXMLDOMNode** oldNode) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_removeChild( IXMLDOMNode_from_impl(&This->node), domNode, oldNode ); }
static HRESULT WINAPI dom_pi_put_nodeValue( IXMLDOMProcessingInstruction *iface, VARIANT value) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); BSTR sTarget; HRESULT hr; TRACE("(%p)->(v%d)\n", This, V_VT(&value)); /* Cannot set data to a PI node whose target is 'xml' */ hr = dom_pi_get_nodeName(iface, &sTarget); if(hr == S_OK) { static const WCHAR xmlW[] = {'x','m','l',0}; if(lstrcmpW( sTarget, xmlW) == 0) { SysFreeString(sTarget); return E_FAIL; } SysFreeString(sTarget); } return node_put_value(&This->node, &value); }
static HRESULT WINAPI dom_pi_get_attributes( IXMLDOMProcessingInstruction *iface, IXMLDOMNamedNodeMap** map) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); static const WCHAR xmlW[] = {'x','m','l',0}; HRESULT hr; BSTR name; TRACE("(%p)->(%p)\n", This, map); if (!map) return E_INVALIDARG; *map = NULL; hr = node_get_nodeName(&This->node, &name); if (hr != S_OK) return hr; if (!strcmpW(name, xmlW)) { FIXME("created dummy map for <?xml ?>\n"); *map = create_nodemap(This->node.node, &dom_pi_attr_map); SysFreeString(name); return S_OK; } SysFreeString(name); return S_FALSE; }
static HRESULT WINAPI dom_pi_put_nodeTypedValue( IXMLDOMProcessingInstruction *iface, VARIANT var1) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_put_nodeTypedValue( IXMLDOMNode_from_impl(&This->node), var1 ); }
static HRESULT WINAPI dom_pi_transformNodeToObject( IXMLDOMProcessingInstruction *iface, IXMLDOMNode* domNode, VARIANT var1) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_transformNodeToObject( IXMLDOMNode_from_impl(&This->node), domNode, var1 ); }
static HRESULT WINAPI dom_pi_QueryInterface( IXMLDOMProcessingInstruction *iface, REFIID riid, void** ppvObject ) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); TRACE("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppvObject); if ( IsEqualGUID( riid, &IID_IXMLDOMProcessingInstruction ) || IsEqualGUID( riid, &IID_IXMLDOMNode ) || IsEqualGUID( riid, &IID_IDispatch ) || IsEqualGUID( riid, &IID_IUnknown ) ) { *ppvObject = iface; } else if(node_query_interface(&This->node, riid, ppvObject)) { return *ppvObject ? S_OK : E_NOINTERFACE; } else { FIXME("Unsupported interface %s\n", debugstr_guid(riid)); return E_NOINTERFACE; } IUnknown_AddRef((IUnknown*)*ppvObject); return S_OK; }
static HRESULT WINAPI dom_pi_GetTypeInfoCount( IXMLDOMProcessingInstruction *iface, UINT* pctinfo ) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IDispatchEx_GetTypeInfoCount(&This->node.dispex.IDispatchEx_iface, pctinfo); }
static HRESULT WINAPI dom_pi_get_target( IXMLDOMProcessingInstruction *iface, BSTR *p) { /* target returns the same value as nodeName property */ dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_get_nodeName( This->node, p ); }
static HRESULT WINAPI dom_pi_insertBefore( IXMLDOMProcessingInstruction *iface, IXMLDOMNode* newNode, VARIANT var1, IXMLDOMNode** outOldNode) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_insertBefore( This->node, newNode, var1, outOldNode ); }
static HRESULT WINAPI dom_pi_get_definition( IXMLDOMProcessingInstruction *iface, IXMLDOMNode** definitionNode) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); FIXME("(%p)->(%p)\n", This, definitionNode); return E_NOTIMPL; }
static HRESULT WINAPI dom_pi_put_nodeTypedValue( IXMLDOMProcessingInstruction *iface, VARIANT typedValue) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); FIXME("(%p)->(%s)\n", This, debugstr_variant(&typedValue)); return E_NOTIMPL; }
static HRESULT WINAPI dom_pi_cloneNode( IXMLDOMProcessingInstruction *iface, VARIANT_BOOL deep, IXMLDOMNode** outNode) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); TRACE("(%p)->(%d %p)\n", This, deep, outNode); return node_clone( &This->node, deep, outNode ); }
static HRESULT WINAPI dom_pi_put_text( IXMLDOMProcessingInstruction *iface, BSTR p) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); TRACE("(%p)->(%s)\n", This, debugstr_w(p)); return node_put_text( &This->node, p ); }
static HRESULT WINAPI dom_pi_get_nodeTypedValue( IXMLDOMProcessingInstruction *iface, VARIANT* v) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); TRACE("(%p)->(%p)\n", This, v); return node_get_content(&This->node, v); }
static HRESULT WINAPI dom_pi_get_ownerDocument( IXMLDOMProcessingInstruction *iface, IXMLDOMDocument **doc) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); TRACE("(%p)->(%p)\n", This, doc); return node_get_owner_doc(&This->node, doc); }
static HRESULT WINAPI dom_pi_hasChildNodes( IXMLDOMProcessingInstruction *iface, VARIANT_BOOL *ret) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); TRACE("(%p)->(%p)\n", This, ret); return node_has_childnodes(&This->node, ret); }
static HRESULT WINAPI dom_pi_appendChild( IXMLDOMProcessingInstruction *iface, IXMLDOMNode *child, IXMLDOMNode **outChild) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); TRACE("(%p)->(%p %p)\n", This, child, outChild); return node_append_child(&This->node, child, outChild); }
static ULONG WINAPI dom_pi_AddRef( IXMLDOMProcessingInstruction *iface ) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); ULONG ref = InterlockedIncrement( &This->ref ); TRACE("(%p)->(%d)\n", This, ref); return ref; }
static HRESULT WINAPI dom_pi_replaceChild( IXMLDOMProcessingInstruction *iface, IXMLDOMNode* newNode, IXMLDOMNode* oldNode, IXMLDOMNode** outOldNode) { dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); return IXMLDOMNode_replaceChild( This->node, newNode, oldNode, outOldNode ); }