41 nsres = nsIDOMHTMLSelectElement_GetOptions(
This->nsselect, &nscol);
43 ERR(
"GetOptions failed: %08x\n", nsres);
47 nsres = nsIDOMHTMLOptionsCollection_Item(nscol,
i, &nsnode);
48 nsIDOMHTMLOptionsCollection_Release(nscol);
50 ERR(
"Item failed: %08x\n", nsres);
58 nsIDOMNode_Release(nsnode);
74 return IHTMLDOMNode_QueryInterface(&
This->element.node.IHTMLDOMNode_iface,
riid,
ppv);
81 return IHTMLDOMNode_AddRef(&
This->element.node.IHTMLDOMNode_iface);
88 return IHTMLDOMNode_Release(&
This->element.node.IHTMLDOMNode_iface);
95 return IDispatchEx_GetTypeInfoCount(&
This->element.node.event_target.dispex.IDispatchEx_iface, pctinfo);
103 return IDispatchEx_GetTypeInfo(&
This->element.node.event_target.dispex.IDispatchEx_iface, iTInfo, lcid,
113 return IDispatchEx_GetIDsOfNames(&
This->element.node.event_target.dispex.IDispatchEx_iface,
riid, rgszNames,
114 cNames, lcid, rgDispId);
119 VARIANT *pVarResult, EXCEPINFO *pExcepInfo,
UINT *puArgErr)
123 return IDispatchEx_Invoke(&
This->element.node.event_target.dispex.IDispatchEx_iface, dispIdMember,
riid,
124 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
136 nsres = nsIDOMHTMLSelectElement_SetSize(
This->nsselect,
v);
138 ERR(
"SetSize failed: %08x\n", nsres);
154 nsres = nsIDOMHTMLSelectElement_GetSize(
This->nsselect, &
val);
156 ERR(
"GetSize failed: %08x\n", nsres);
170 nsres = nsIDOMHTMLSelectElement_SetMultiple(
This->nsselect, !!
v);
183 nsres = nsIDOMHTMLSelectElement_GetMultiple(
This->nsselect, &
val);
186 *
p =
val ? VARIANT_TRUE : VARIANT_FALSE;
198 nsres = nsIDOMHTMLSelectElement_SetName(
This->nsselect, &
str);
202 ERR(
"SetName failed: %08x\n", nsres);
217 nsres = nsIDOMHTMLSelectElement_GetName(
This->nsselect, &name_str);
229 IDispatch_AddRef(*
p);
256 nsres = nsIDOMHTMLSelectElement_SetSelectedIndex(
This->nsselect,
v);
258 ERR(
"SetSelectedIndex failed: %08x\n", nsres);
270 nsres = nsIDOMHTMLSelectElement_GetSelectedIndex(
This->nsselect,
p);
272 ERR(
"GetSelectedIndex failed: %08x\n", nsres);
288 nsres = nsIDOMHTMLSelectElement_GetType(
This->nsselect, &type_str);
301 nsres = nsIDOMHTMLSelectElement_SetValue(
This->nsselect, &
value_str);
304 ERR(
"SetValue failed: %08x\n", nsres);
318 nsres = nsIDOMHTMLSelectElement_GetValue(
This->nsselect, &
value_str);
329 nsres = nsIDOMHTMLSelectElement_SetDisabled(
This->nsselect,
v != VARIANT_FALSE);
331 ERR(
"SetDisabled failed: %08x\n", nsres);
346 nsres = nsIDOMHTMLSelectElement_GetDisabled(
This->nsselect, &disabled);
348 ERR(
"GetDisabled failed: %08x\n", nsres);
352 *
p = disabled ? VARIANT_TRUE : VARIANT_FALSE;
370 nsres = nsIDOMHTMLSelectElement_GetForm(
This->nsselect, &nsform);
372 ERR(
"GetForm failed: %08x, nsform: %p\n", nsres, nsform);
376 if (nsform ==
NULL) {
377 TRACE(
"nsform not found\n");
382 nsres = nsIDOMHTMLFormElement_QueryInterface(nsform, &IID_nsIDOMNode, (
void**)&form_node);
383 nsIDOMHTMLFormElement_Release(nsform);
387 nsIDOMNode_Release(form_node);
391 hres = IHTMLDOMNode_QueryInterface(&
node->IHTMLDOMNode_iface, &IID_IHTMLElement, (
void**)
p);
409 FIXME(
"External IHTMLElement implementation?\n");
420 nsres = nsIWritableVariant_SetAsEmpty(nsvariant);
423 nsres = nsIWritableVariant_SetAsInt16(nsvariant,
V_I2(&
before));
427 nsIWritableVariant_Release(nsvariant);
432 nsres = nsIDOMHTMLSelectElement_Add(
This->nsselect, element_obj->
nselem, (
nsIVariant*)nsvariant);
433 nsIWritableVariant_Release(nsvariant);
435 ERR(
"Add failed: %08x\n", nsres);
450 nsres = nsIDOMHTMLSelectElement_select_Remove(
This->nsselect,
index);
452 ERR(
"Remove failed: %08x\n", nsres);
465 nsres = nsIDOMHTMLSelectElement_SetLength(
This->nsselect,
v);
467 ERR(
"SetLength failed: %08x\n", nsres);
480 nsres = nsIDOMHTMLSelectElement_GetLength(
This->nsselect, &
length);
482 ERR(
"GetLength failed: %08x\n", nsres);
514 FIXME(
"Unsupported args\n");
573 *
ppv = &
This->IHTMLSelectElement_iface;
576 *
ppv = &
This->IHTMLSelectElement_iface;
578 TRACE(
"(%p)->(IID_IHTMLSelectElement %p)\n",
This,
ppv);
579 *
ppv = &
This->IHTMLSelectElement_iface;
593 return IHTMLSelectElement_put_disabled(&
This->IHTMLSelectElement_iface,
v);
599 return IHTMLSelectElement_get_disabled(&
This->IHTMLSelectElement_iface,
p);
602#define DISPID_OPTIONCOL_0 MSHTML_DISPID_CUSTOM_MIN
612 WARN(
"too big idx\n");
672 nsIDOMHTMLSelectElement_Release(nsselect);
698 IHTMLSelectElement_tid,
704 DispHTMLSelectElement_tid,
723 nsres = nsIDOMHTMLElement_QueryInterface(nselem, &IID_nsIDOMHTMLSelectElement,
724 (
void**)&
ret->nsselect);
GLenum const GLfloat * params
GLuint GLsizei GLsizei * length
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
HRESULT HTMLElement_clone(HTMLDOMNode *iface, nsIDOMNode *nsnode, HTMLDOMNode **ret)
void HTMLElement_destructor(HTMLDOMNode *iface)
HRESULT HTMLElement_handle_event(HTMLDOMNode *iface, DWORD eid, nsIDOMEvent *event, BOOL *prevent_default)
const cpc_entry_t HTMLElement_cpc[]
HTMLElement * unsafe_impl_from_IHTMLElement(IHTMLElement *iface)
void HTMLElement_Init(HTMLElement *This, HTMLDocumentNode *doc, nsIDOMHTMLElement *nselem, dispex_static_data_t *dispex_data)
HRESULT HTMLElement_get_attr_col(HTMLDOMNode *iface, HTMLAttributeCollection **ac)
HRESULT HTMLElement_QI(HTMLDOMNode *iface, REFIID riid, void **ppv)
static HRESULT set_node_event(HTMLDOMNode *node, eventid_t eid, VARIANT *var)
HRESULT get_node(HTMLDocumentNode *This, nsIDOMNode *nsnode, BOOL create, HTMLDOMNode **ret)
static HRESULT WINAPI HTMLSelectElement_get_options(IHTMLSelectElement *iface, IDispatch **p)
static HRESULT WINAPI HTMLSelectElement_remove(IHTMLSelectElement *iface, LONG index)
static HRESULT WINAPI HTMLSelectElement_GetTypeInfoCount(IHTMLSelectElement *iface, UINT *pctinfo)
static HRESULT HTMLSelectElement_invoke(HTMLDOMNode *iface, DISPID id, LCID lcid, WORD flags, DISPPARAMS *params, VARIANT *res, EXCEPINFO *ei, IServiceProvider *caller)
static HRESULT WINAPI HTMLSelectElement_put_name(IHTMLSelectElement *iface, BSTR v)
static HRESULT WINAPI HTMLSelectElement_get_disabled(IHTMLSelectElement *iface, VARIANT_BOOL *p)
static const IHTMLSelectElementVtbl HTMLSelectElementVtbl
static HRESULT WINAPI HTMLSelectElement_get_name(IHTMLSelectElement *iface, BSTR *p)
static HRESULT WINAPI HTMLSelectElement_get_length(IHTMLSelectElement *iface, LONG *p)
static ULONG WINAPI HTMLSelectElement_AddRef(IHTMLSelectElement *iface)
static dispex_static_data_t HTMLSelectElement_dispex
static HRESULT WINAPI HTMLSelectElement_get_type(IHTMLSelectElement *iface, BSTR *p)
static HRESULT HTMLSelectElement_QI(HTMLDOMNode *iface, REFIID riid, void **ppv)
HRESULT HTMLSelectElement_Create(HTMLDocumentNode *doc, nsIDOMHTMLElement *nselem, HTMLElement **elem)
static void HTMLSelectElement_traverse(HTMLDOMNode *iface, nsCycleCollectionTraversalCallback *cb)
static HRESULT WINAPI HTMLSelectElement_put_selectedIndex(IHTMLSelectElement *iface, LONG v)
static HRESULT WINAPI HTMLSelectElement_GetIDsOfNames(IHTMLSelectElement *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT htmlselect_item(HTMLSelectElement *This, int i, IDispatch **ret)
static ULONG WINAPI HTMLSelectElement_Release(IHTMLSelectElement *iface)
static HRESULT WINAPI HTMLSelectElement_add(IHTMLSelectElement *iface, IHTMLElement *element, VARIANT before)
static void HTMLSelectElement_unlink(HTMLDOMNode *iface)
static HTMLSelectElement * impl_from_IHTMLSelectElement(IHTMLSelectElement *iface)
static HRESULT WINAPI HTMLSelectElement_get_size(IHTMLSelectElement *iface, LONG *p)
static HRESULT WINAPI HTMLSelectElement_get__newEnum(IHTMLSelectElement *iface, IUnknown **p)
static HRESULT HTMLSelectElementImpl_get_disabled(HTMLDOMNode *iface, VARIANT_BOOL *p)
static HTMLSelectElement * impl_from_HTMLDOMNode(HTMLDOMNode *iface)
static HRESULT WINAPI HTMLSelectElement_put_length(IHTMLSelectElement *iface, LONG v)
static HRESULT WINAPI HTMLSelectElement_tags(IHTMLSelectElement *iface, VARIANT tagName, IDispatch **pdisp)
static HRESULT WINAPI HTMLSelectElement_get_onchange(IHTMLSelectElement *iface, VARIANT *p)
static HRESULT WINAPI HTMLSelectElement_put_multiple(IHTMLSelectElement *iface, VARIANT_BOOL v)
static HRESULT WINAPI HTMLSelectElement_get_multiple(IHTMLSelectElement *iface, VARIANT_BOOL *p)
static HRESULT HTMLSelectElement_get_dispid(HTMLDOMNode *iface, BSTR name, DWORD flags, DISPID *dispid)
static HRESULT WINAPI HTMLSelectElement_put_onchange(IHTMLSelectElement *iface, VARIANT v)
static HRESULT WINAPI HTMLSelectElement_item(IHTMLSelectElement *iface, VARIANT name, VARIANT index, IDispatch **pdisp)
static HRESULT WINAPI HTMLSelectElement_put_value(IHTMLSelectElement *iface, BSTR v)
static HRESULT WINAPI HTMLSelectElement_get_form(IHTMLSelectElement *iface, IHTMLFormElement **p)
static const tid_t HTMLSelectElement_tids[]
static HRESULT HTMLSelectElementImpl_put_disabled(HTMLDOMNode *iface, VARIANT_BOOL v)
static HRESULT WINAPI HTMLSelectElement_QueryInterface(IHTMLSelectElement *iface, REFIID riid, void **ppv)
static HRESULT WINAPI HTMLSelectElement_get_selectedIndex(IHTMLSelectElement *iface, LONG *p)
static const NodeImplVtbl HTMLSelectElementImplVtbl
#define DISPID_OPTIONCOL_0
static HRESULT WINAPI HTMLSelectElement_Invoke(IHTMLSelectElement *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static HRESULT WINAPI HTMLSelectElement_GetTypeInfo(IHTMLSelectElement *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static HRESULT WINAPI HTMLSelectElement_put_size(IHTMLSelectElement *iface, LONG v)
static HRESULT WINAPI HTMLSelectElement_put_disabled(IHTMLSelectElement *iface, VARIANT_BOOL v)
static HRESULT WINAPI HTMLSelectElement_get_value(IHTMLSelectElement *iface, BSTR *p)
static const char * debugstr_variant(const VARIANT *var)
static HMODULE MODULEINFO DWORD cb
static UNICODE_STRING value_str
static VARIANTARG static DISPID
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
#define MSHTML_CUSTOM_DISPID_CNT
void nsAString_InitDepend(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
BOOL nsAString_Init(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
static void node_release(HTMLDOMNode *node)
struct nsCycleCollectionTraversalCallback nsCycleCollectionTraversalCallback
#define NS_SUCCEEDED(res)
HRESULT return_nsstr(nsresult, nsAString *, BSTR *) DECLSPEC_HIDDEN
nsIWritableVariant * create_nsvariant(void) DECLSPEC_HIDDEN
#define DISPATCH_PROPERTYGET
#define CTL_E_INVALIDPROPERTYVALUE
#define IsEqualGUID(rguid1, rguid2)
nsIDOMHTMLElement * nselem
nsIDOMHTMLSelectElement * nsselect
IHTMLSelectElement IHTMLSelectElement_iface
__inline int before(__u32 seq1, __u32 seq2)
#define CONTAINING_RECORD(address, type, field)
_In_ DWORD _Out_ _In_ WORD wFlags
#define DISP_E_UNKNOWNNAME