static HRESULT WINAPI HTMLTextAreaElement_QueryInterface(IHTMLTextAreaElement *iface, REFIID riid, void **ppv) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); return IHTMLDOMNode_QueryInterface(&This->element.node.IHTMLDOMNode_iface, riid, ppv); }
static HRESULT WINAPI HTMLTextAreaElement_createTextRange(IHTMLTextAreaElement *iface, IHTMLTxtRange **range) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); FIXME("(%p)->(%p)\n", This, range); return E_NOTIMPL; }
static HRESULT WINAPI HTMLTextAreaElement_GetTypeInfo(IHTMLTextAreaElement *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); return IDispatchEx_GetTypeInfo(&This->element.node.dispex.IDispatchEx_iface, iTInfo, lcid, ppTInfo); }
static HRESULT WINAPI HTMLTextAreaElement_get_form(IHTMLTextAreaElement *iface, IHTMLFormElement **p) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); nsIDOMHTMLFormElement *nsform; nsIDOMNode *nsnode; HTMLDOMNode *node; nsresult nsres; HRESULT hres; TRACE("(%p)->(%p)\n", This, p); nsres = nsIDOMHTMLTextAreaElement_GetForm(This->nstextarea, &nsform); assert(nsres == NS_OK); if(!nsform) { *p = NULL; return S_OK; } nsres = nsIDOMHTMLFormElement_QueryInterface(nsform, &IID_nsIDOMNode, (void**)&nsnode); nsIDOMHTMLFormElement_Release(nsform); assert(nsres == NS_OK); hres = get_node(This->element.node.doc, nsnode, TRUE, &node); nsIDOMNode_Release(nsnode); if(FAILED(hres)) return hres; hres = IHTMLDOMNode_QueryInterface(&node->IHTMLDOMNode_iface, &IID_IHTMLFormElement, (void**)p); IHTMLDOMNode_Release(&node->IHTMLDOMNode_iface); return hres; }
static HRESULT WINAPI HTMLTextAreaElement_Invoke(IHTMLTextAreaElement *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); return IDispatchEx_Invoke(&This->element.node.dispex.IDispatchEx_iface, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr); }
static HRESULT WINAPI HTMLTextAreaElement_GetIDsOfNames(IHTMLTextAreaElement *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); return IDispatchEx_GetIDsOfNames(&This->element.node.dispex.IDispatchEx_iface, riid, rgszNames, cNames, lcid, rgDispId); }
static HRESULT WINAPI HTMLTextAreaElement_get_name(IHTMLTextAreaElement *iface, BSTR *p) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); nsAString name_str; nsresult nsres; TRACE("(%p)->(%p)\n", This, p); nsAString_Init(&name_str, NULL); nsres = nsIDOMHTMLTextAreaElement_GetName(This->nstextarea, &name_str); return return_nsstr(nsres, &name_str, p); }
static HRESULT WINAPI HTMLTextAreaElement_put_defaultValue(IHTMLTextAreaElement *iface, BSTR v) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); nsAString nsstr; nsresult nsres; TRACE("(%p)->(%s)\n", This, debugstr_w(v)); nsAString_InitDepend(&nsstr, v); nsres = nsIDOMHTMLTextAreaElement_SetDefaultValue(This->nstextarea, &nsstr); nsAString_Finish(&nsstr); return NS_SUCCEEDED(nsres) ? S_OK : E_FAIL; }
static HRESULT WINAPI HTMLTextAreaElement_get_type(IHTMLTextAreaElement *iface, BSTR *p) { static const WCHAR textareaW[] = {'t','e','x','t','a','r','e','a',0}; HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); TRACE("(%p)->(%p)\n", This, p); *p = SysAllocString(textareaW); if(!*p) return E_OUTOFMEMORY; return S_OK; }
static HRESULT WINAPI HTMLTextAreaElement_put_readOnly(IHTMLTextAreaElement *iface, VARIANT_BOOL v) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); nsresult nsres; TRACE("(%p)->(%x)\n", This, v); nsres = nsIDOMHTMLTextAreaElement_SetReadOnly(This->nstextarea, v != VARIANT_FALSE); if(NS_FAILED(nsres)) { ERR("SetReadOnly failed: %08x\n", nsres); return E_FAIL; } return S_OK; }
static HRESULT WINAPI HTMLTextAreaElement_get_readOnly(IHTMLTextAreaElement *iface, VARIANT_BOOL *p) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); PRBool b; nsresult nsres; TRACE("(%p)->(%p)\n", This, p); nsres = nsIDOMHTMLTextAreaElement_GetReadOnly(This->nstextarea, &b); if(NS_FAILED(nsres)) { ERR("GetReadOnly failed: %08x\n", nsres); return E_FAIL; } *p = b ? VARIANT_TRUE : VARIANT_FALSE; return S_OK; }
static HRESULT WINAPI HTMLTextAreaElement_put_value(IHTMLTextAreaElement *iface, BSTR v) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); nsAString value_str; nsresult nsres; TRACE("(%p)->(%s)\n", This, debugstr_w(v)); nsAString_InitDepend(&value_str, v); nsres = nsIDOMHTMLTextAreaElement_SetValue(This->nstextarea, &value_str); nsAString_Finish(&value_str); if(NS_FAILED(nsres)) { ERR("SetValue failed: %08x\n", nsres); return E_FAIL; } return S_OK; }
static HRESULT WINAPI HTMLTextAreaElement_get_value(IHTMLTextAreaElement *iface, BSTR *p) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); nsAString value_str; const PRUnichar *value; nsresult nsres; HRESULT hres = S_OK; TRACE("(%p)->(%p)\n", This, p); nsAString_Init(&value_str, NULL); nsres = nsIDOMHTMLTextAreaElement_GetValue(This->nstextarea, &value_str); if(NS_SUCCEEDED(nsres)) { nsAString_GetData(&value_str, &value); *p = *value ? SysAllocString(value) : NULL; }else { ERR("GetValue failed: %08x\n", nsres); hres = E_FAIL; } nsAString_Finish(&value_str); return hres; }
static HRESULT WINAPI HTMLTextAreaElement_get_name(IHTMLTextAreaElement *iface, BSTR *p) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); nsAString name_str; const PRUnichar *name; nsresult nsres; TRACE("(%p)->(%p)\n", This, p); nsAString_Init(&name_str, NULL); nsres = nsIDOMHTMLTextAreaElement_GetName(This->nstextarea, &name_str); if(NS_SUCCEEDED(nsres)) { nsAString_GetData(&name_str, &name); *p = SysAllocString(name); }else { ERR("GetName failed: %08x\n", nsres); } nsAString_Finish(&name_str); TRACE("%s\n", debugstr_w(*p)); return S_OK; }
static HRESULT WINAPI HTMLTextAreaElement_put_wrap(IHTMLTextAreaElement *iface, BSTR v) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); FIXME("(%p)->(%s)\n", This, debugstr_w(v)); return E_NOTIMPL; }
static HRESULT WINAPI HTMLTextAreaElement_put_disabled(IHTMLTextAreaElement *iface, VARIANT_BOOL v) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); FIXME("(%p)->(%x)\n", This, v); return E_NOTIMPL; }
static HRESULT WINAPI HTMLTextAreaElement_select(IHTMLTextAreaElement *iface) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); FIXME("(%p)\n", This); return E_NOTIMPL; }
static HRESULT WINAPI HTMLTextAreaElement_GetTypeInfoCount(IHTMLTextAreaElement *iface, UINT *pctinfo) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); return IDispatchEx_GetTypeInfoCount(&This->element.node.dispex.IDispatchEx_iface, pctinfo); }
static ULONG WINAPI HTMLTextAreaElement_Release(IHTMLTextAreaElement *iface) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); return IHTMLDOMNode_Release(&This->element.node.IHTMLDOMNode_iface); }
static HRESULT WINAPI HTMLTextAreaElement_put_onchange(IHTMLTextAreaElement *iface, VARIANT v) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); FIXME("(%p)->()\n", This); return E_NOTIMPL; }
static HRESULT WINAPI HTMLTextAreaElement_get_onselect(IHTMLTextAreaElement *iface, VARIANT *p) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); FIXME("(%p)->(%p)\n", This, p); return E_NOTIMPL; }
static HRESULT WINAPI HTMLTextAreaElement_get_wrap(IHTMLTextAreaElement *iface, BSTR *p) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); FIXME("(%p)->(%p)\n", This, p); return E_NOTIMPL; }
static HRESULT WINAPI HTMLTextAreaElement_put_cols(IHTMLTextAreaElement *iface, LONG v) { HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); FIXME("(%p)->(%d)\n", This, v); return E_NOTIMPL; }