37 nsres = nsIDOMHTMLFormElement_GetElements(
This->nsform, &elements);
39 FIXME(
"GetElements failed: 0x%08x\n", nsres);
43 nsres = nsIDOMHTMLCollection_Item(elements,
i, &
item);
44 nsIDOMHTMLCollection_Release(elements);
46 FIXME(
"Item failed: 0x%08x\n", nsres);
55 nsIDOMNode_Release(
item);
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);
94 return IDispatchEx_GetTypeInfoCount(&
This->element.node.event_target.dispex.IDispatchEx_iface, pctinfo);
101 return IDispatchEx_GetTypeInfo(&
This->element.node.event_target.dispex.IDispatchEx_iface, iTInfo, lcid,
110 return IDispatchEx_GetIDsOfNames(&
This->element.node.event_target.dispex.IDispatchEx_iface,
riid, rgszNames,
111 cNames, lcid, rgDispId);
116 VARIANT *pVarResult, EXCEPINFO *pExcepInfo,
UINT *puArgErr)
119 return IDispatchEx_Invoke(&
This->element.node.event_target.dispex.IDispatchEx_iface, dispIdMember,
riid,
120 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
132 nsres = nsIDOMHTMLFormElement_SetAction(
This->nsform, &action_str);
135 ERR(
"SetAction failed: %08x\n", nsres);
152 nsres = nsIDOMHTMLFormElement_GetAction(
This->nsform, &action_str);
158 ERR(
"GetAction failed: %08x\n", nsres);
182 static const WCHAR urlencodedW[] = {
'a',
'p',
'p',
'l',
'i',
'c',
'a',
't',
'i',
'o',
'n',
'/',
183 'x',
'-',
'w',
'w',
'w',
'-',
'f',
'o',
'r',
'm',
'-',
'u',
'r',
'l',
'e',
'n',
'c',
'o',
'd',
'e',
'd',0};
184 static const WCHAR dataW[] = {
'm',
'u',
'l',
't',
'i',
'p',
'a',
'r',
't',
'/',
185 'f',
'o',
'r',
'm',
'-',
'd',
'a',
't',
'a',0};
186 static const WCHAR plainW[] = {
't',
'e',
'x',
't',
'/',
'p',
'l',
'a',
'i',
'n',0};
195 WARN(
"incorrect enctype\n");
200 nsres = nsIDOMHTMLFormElement_SetEnctype(
This->nsform, &encoding_str);
217 nsres = nsIDOMHTMLFormElement_GetEnctype(
This->nsform, &encoding_str);
223 static const WCHAR postW[] = {
'P',
'O',
'S',
'T',0};
224 static const WCHAR getW[] = {
'G',
'E',
'T',0};
233 WARN(
"unrecognized method\n");
238 nsres = nsIDOMHTMLFormElement_SetMethod(
This->nsform, &method_str);
255 nsres = nsIDOMHTMLFormElement_GetMethod(
This->nsform, &method_str);
266 IDispatch_AddRef(*
p);
280 nsres = nsIDOMHTMLFormElement_SetTarget(
This->nsform, &
str);
300 nsres = nsIDOMHTMLFormElement_GetTarget(
This->nsform, &
str);
314 nsres = nsIDOMHTMLFormElement_SetName(
This->nsform, &name_str);
331 nsres = nsIDOMHTMLFormElement_GetName(
This->nsform, &name_str);
371 nsAString action_uri_str, target_str, method_str;
381 if(
This->element.node.doc) {
387 TRACE(
"No outer window\n");
392 nsres = nsIDOMHTMLFormElement_GetTarget(
This->nsform, &target_str);
396 if(!
window && !use_new_window) {
402 nsres = nsIDOMHTMLFormElement_GetMethod(
This->nsform, &method_str);
417 if(
window && !is_post_submit) {
418 nsres = nsIDOMHTMLFormElement_Submit(
This->nsform);
420 IHTMLWindow2_Release(&
window->base.IHTMLWindow2_iface);
422 ERR(
"Submit failed: %08x\n", nsres);
430 nsres = nsIDOMHTMLFormElement_GetFormData(
This->nsform,
NULL, &action_uri_str, &post_stream);
437 ERR(
"GetFormData failed: %08x\n", nsres);
451 IHTMLWindow2_Release(&
window->base.IHTMLWindow2_iface);
453 nsIInputStream_Release(post_stream);
463 nsres = nsIDOMHTMLFormElement_Reset(
This->nsform);
465 ERR(
"Reset failed: %08x\n", nsres);
486 nsres = nsIDOMHTMLFormElement_GetLength(
This->nsform,
p);
488 ERR(
"GetLength failed: %08x\n", nsres);
519 FIXME(
"Unsupported args\n");
578 *
ppv = &
This->IHTMLFormElement_iface;
581 *
ppv = &
This->IHTMLFormElement_iface;
584 *
ppv = &
This->IHTMLFormElement_iface;
586 TRACE(
"(%p)->(DIID_DispHTMLFormElement %p)\n",
This,
ppv);
587 *
ppv = &
This->IHTMLFormElement_iface;
612 nsres = nsIDOMHTMLFormElement_GetElements(
This->nsform, &elements);
614 FIXME(
"GetElements failed: 0x%08x\n", nsres);
618 nsres = nsIDOMHTMLCollection_GetLength(elements, &
len);
620 FIXME(
"GetLength failed: 0x%08x\n", nsres);
621 nsIDOMHTMLCollection_Release(elements);
633 if(!*end_ptr &&
i <
len) {
640 for(
i = 0;
i <
len; ++
i) {
645 nsres = nsIDOMHTMLCollection_Item(elements,
i, &nsitem);
647 FIXME(
"Item failed: 0x%08x\n", nsres);
652 nsres = nsIDOMNode_QueryInterface(nsitem, &IID_nsIDOMHTMLElement, (
void**)&nshtml_elem);
653 nsIDOMNode_Release(nsitem);
655 FIXME(
"Failed to get nsIDOMHTMLNode interface: 0x%08x\n", nsres);
661 nsres = nsIDOMHTMLElement_GetId(nshtml_elem, &nsstr);
663 FIXME(
"GetId failed: 0x%08x\n", nsres);
664 nsIDOMHTMLElement_Release(nshtml_elem);
670 nsIDOMHTMLElement_Release(nshtml_elem);
679 nsIDOMHTMLElement_Release(nshtml_elem);
693 nsIDOMHTMLCollection_Release(elements);
725 *prevent_default =
TRUE;
726 return IHTMLFormElement_submit(&
This->IHTMLFormElement_iface);
748 nsIDOMHTMLFormElement_Release(nsform);
774 IHTMLFormElement_tid,
780 DispHTMLFormElement_tid,
799 nsres = nsIDOMHTMLElement_QueryInterface(nselem, &IID_nsIDOMHTMLFormElement, (
void**)&
ret->nsform);
static const WCHAR nameW[]
HRESULT submit_form(HTMLOuterWindow *, const WCHAR *, IUri *, nsIInputStream *) DECLSPEC_HIDDEN
HRESULT create_uri(const WCHAR *, DWORD, IUri **) DECLSPEC_HIDDEN
static const WCHAR getW[]
int WINAPI lstrcmpiW(LPCWSTR str1, LPCWSTR str2)
GLenum const GLfloat * params
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
HTMLOuterWindow * get_target_window(HTMLOuterWindow *window, nsAString *target_str, BOOL *use_new_window)
nsresult get_elem_attr_value(nsIDOMHTMLElement *nselem, const WCHAR *name, nsAString *val_str, const PRUnichar **val)
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[]
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 get_node_event(HTMLDOMNode *node, eventid_t eid, VARIANT *var)
static HRESULT set_node_event(HTMLDOMNode *node, eventid_t eid, VARIANT *var)
HRESULT get_node(HTMLDocumentNode *This, nsIDOMNode *nsnode, BOOL create, HTMLDOMNode **ret)
static const char * debugstr_variant(const VARIANT *var)
static HMODULE MODULEINFO DWORD cb
static IHTMLWindow2 * window
static VARIANTARG static DISPID
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
UINT32 nsAString_GetData(const nsAString *, const PRUnichar **) DECLSPEC_HIDDEN
#define MSHTML_CUSTOM_DISPID_CNT
void nsAString_InitDepend(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
HRESULT nsuri_to_url(LPCWSTR, BOOL, BSTR *) DECLSPEC_HIDDEN
BOOL nsAString_Init(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
struct nsCycleCollectionTraversalCallback nsCycleCollectionTraversalCallback
#define MSHTML_DISPID_CUSTOM_MIN
#define NS_SUCCEEDED(res)
HRESULT return_nsstr(nsresult, nsAString *, BSTR *) DECLSPEC_HIDDEN
#define IsEqualGUID(rguid1, rguid2)
#define strtoulW(s1, s2, b)
HTMLOuterWindow * outer_window
#define CONTAINING_RECORD(address, type, field)
_In_ DWORD _Out_ _In_ WORD wFlags
_In_ ULONG_PTR _In_ ULONG _Out_ ULONG_PTR * pid
#define DISP_E_UNKNOWNNAME
static const WCHAR postW[]