Jacek Caban : mshtml: Added IHTMLFormElement::onsubmit implementation.
Alexandre Julliard
julliard at winehq.org
Mon Feb 28 11:02:12 CST 2011
Module: wine
Branch: master
Commit: f4c4a94618b4d50c5478bb53b42736741d3be109
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f4c4a94618b4d50c5478bb53b42736741d3be109
Author: Jacek Caban <jacek at codeweavers.com>
Date: Mon Feb 28 13:13:49 2011 +0100
mshtml: Added IHTMLFormElement::onsubmit implementation.
---
dlls/mshtml/htmlevent.c | 7 ++++++-
dlls/mshtml/htmlevent.h | 1 +
dlls/mshtml/htmlform.c | 13 +++++++++----
3 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/dlls/mshtml/htmlevent.c b/dlls/mshtml/htmlevent.c
index c8dad46..9092b65 100644
--- a/dlls/mshtml/htmlevent.c
+++ b/dlls/mshtml/htmlevent.c
@@ -107,6 +107,9 @@ static const WCHAR onresizeW[] = {'o','n','r','e','s','i','z','e',0};
static const WCHAR selectstartW[] = {'s','e','l','e','c','t','s','t','a','r','t',0};
static const WCHAR onselectstartW[] = {'o','n','s','e','l','e','c','t','s','t','a','r','t',0};
+static const WCHAR submitW[] = {'s','u','b','m','i','t',0};
+static const WCHAR onsubmitW[] = {'o','n','s','u','b','m','i','t',0};
+
static const WCHAR HTMLEventsW[] = {'H','T','M','L','E','v','e','n','t','s',0};
static const WCHAR KeyboardEventW[] = {'K','e','y','b','o','a','r','d','E','v','e','n','t',0};
static const WCHAR MouseEventW[] = {'M','o','u','s','e','E','v','e','n','t',0};
@@ -180,7 +183,9 @@ static const event_info_t event_info[] = {
{resizeW, onresizeW, EVENTT_NONE, DISPID_EVMETH_ONRESIZE,
EVENT_DEFAULTLISTENER|EVENT_BUBBLE},
{selectstartW, onselectstartW, EVENTT_MOUSE, DISPID_EVMETH_ONSELECTSTART,
- 0}
+ 0},
+ {submitW, onsubmitW, EVENTT_HTML, DISPID_EVMETH_ONSUBMIT,
+ EVENT_DEFAULTLISTENER|EVENT_BUBBLE}
};
static const eventid_t node_handled_list[] = { EVENTID_LOAD };
diff --git a/dlls/mshtml/htmlevent.h b/dlls/mshtml/htmlevent.h
index 6089504..a1b3c74 100644
--- a/dlls/mshtml/htmlevent.h
+++ b/dlls/mshtml/htmlevent.h
@@ -38,6 +38,7 @@ typedef enum {
EVENTID_READYSTATECHANGE,
EVENTID_RESIZE,
EVENTID_SELECTSTART,
+ EVENTID_SUBMIT,
EVENTID_LAST
} eventid_t;
diff --git a/dlls/mshtml/htmlform.c b/dlls/mshtml/htmlform.c
index 3dff376..0f77d28 100644
--- a/dlls/mshtml/htmlform.c
+++ b/dlls/mshtml/htmlform.c
@@ -28,6 +28,7 @@
#include "wine/debug.h"
#include "mshtml_private.h"
+#include "htmlevent.h"
WINE_DEFAULT_DEBUG_CHANNEL(mshtml);
@@ -323,15 +324,19 @@ static HRESULT WINAPI HTMLFormElement_get_name(IHTMLFormElement *iface, BSTR *p)
static HRESULT WINAPI HTMLFormElement_put_onsubmit(IHTMLFormElement *iface, VARIANT v)
{
HTMLFormElement *This = impl_from_IHTMLFormElement(iface);
- FIXME("(%p)->(v)\n", This);
- return E_NOTIMPL;
+
+ TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
+
+ return set_node_event(&This->element.node, EVENTID_SUBMIT, &v);
}
static HRESULT WINAPI HTMLFormElement_get_onsubmit(IHTMLFormElement *iface, VARIANT *p)
{
HTMLFormElement *This = impl_from_IHTMLFormElement(iface);
- FIXME("(%p)->(%p)\n", This, p);
- return E_NOTIMPL;
+
+ TRACE("(%p)->(%p)\n", This, p);
+
+ return get_node_event(&This->element.node, EVENTID_SUBMIT, p);
}
static HRESULT WINAPI HTMLFormElement_put_onreset(IHTMLFormElement *iface, VARIANT v)
More information about the wine-cvs
mailing list