Commit 36fa7044 authored by Jacek Caban's avatar Jacek Caban Committed by Alexandre Julliard

mshtml: Added element keydown, mouseup and mousedown event implementation.

parent d6f07e0b
...@@ -443,15 +443,19 @@ static HRESULT WINAPI HTMLElement_get_ondblclick(IHTMLElement *iface, VARIANT *p ...@@ -443,15 +443,19 @@ static HRESULT WINAPI HTMLElement_get_ondblclick(IHTMLElement *iface, VARIANT *p
static HRESULT WINAPI HTMLElement_put_onkeydown(IHTMLElement *iface, VARIANT v) static HRESULT WINAPI HTMLElement_put_onkeydown(IHTMLElement *iface, VARIANT v)
{ {
HTMLElement *This = HTMLELEM_THIS(iface); HTMLElement *This = HTMLELEM_THIS(iface);
FIXME("(%p)->()\n", This);
return E_NOTIMPL; TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
return set_node_event(&This->node, EVENTID_KEYDOWN, &v);
} }
static HRESULT WINAPI HTMLElement_get_onkeydown(IHTMLElement *iface, VARIANT *p) static HRESULT WINAPI HTMLElement_get_onkeydown(IHTMLElement *iface, VARIANT *p)
{ {
HTMLElement *This = HTMLELEM_THIS(iface); HTMLElement *This = HTMLELEM_THIS(iface);
FIXME("(%p)->(%p)\n", This, p);
return E_NOTIMPL; TRACE("(%p)->(%p)\n", This, p);
return get_node_event(&This->node, EVENTID_KEYDOWN, p);
} }
static HRESULT WINAPI HTMLElement_put_onkeyup(IHTMLElement *iface, VARIANT v) static HRESULT WINAPI HTMLElement_put_onkeyup(IHTMLElement *iface, VARIANT v)
...@@ -533,29 +537,37 @@ static HRESULT WINAPI HTMLElement_get_onmousemove(IHTMLElement *iface, VARIANT * ...@@ -533,29 +537,37 @@ static HRESULT WINAPI HTMLElement_get_onmousemove(IHTMLElement *iface, VARIANT *
static HRESULT WINAPI HTMLElement_put_onmousedown(IHTMLElement *iface, VARIANT v) static HRESULT WINAPI HTMLElement_put_onmousedown(IHTMLElement *iface, VARIANT v)
{ {
HTMLElement *This = HTMLELEM_THIS(iface); HTMLElement *This = HTMLELEM_THIS(iface);
FIXME("(%p)->()\n", This);
return E_NOTIMPL; TRACE("(%p)->()\n", This);
return set_node_event(&This->node, EVENTID_MOUSEDOWN, &v);
} }
static HRESULT WINAPI HTMLElement_get_onmousedown(IHTMLElement *iface, VARIANT *p) static HRESULT WINAPI HTMLElement_get_onmousedown(IHTMLElement *iface, VARIANT *p)
{ {
HTMLElement *This = HTMLELEM_THIS(iface); HTMLElement *This = HTMLELEM_THIS(iface);
FIXME("(%p)->(%p)\n", This, p);
return E_NOTIMPL; TRACE("(%p)->(%p)\n", This, p);
return get_node_event(&This->node, EVENTID_MOUSEDOWN, p);
} }
static HRESULT WINAPI HTMLElement_put_onmouseup(IHTMLElement *iface, VARIANT v) static HRESULT WINAPI HTMLElement_put_onmouseup(IHTMLElement *iface, VARIANT v)
{ {
HTMLElement *This = HTMLELEM_THIS(iface); HTMLElement *This = HTMLELEM_THIS(iface);
FIXME("(%p)->()\n", This);
return E_NOTIMPL; TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
return set_node_event(&This->node, EVENTID_MOUSEUP, &v);
} }
static HRESULT WINAPI HTMLElement_get_onmouseup(IHTMLElement *iface, VARIANT *p) static HRESULT WINAPI HTMLElement_get_onmouseup(IHTMLElement *iface, VARIANT *p)
{ {
HTMLElement *This = HTMLELEM_THIS(iface); HTMLElement *This = HTMLELEM_THIS(iface);
FIXME("(%p)->(%p)\n", This, p);
return E_NOTIMPL; TRACE("(%p)->(%p)\n", This, p);
return get_node_event(&This->node, EVENTID_MOUSEUP, p);
} }
static HRESULT WINAPI HTMLElement_get_document(IHTMLElement *iface, IDispatch **p) static HRESULT WINAPI HTMLElement_get_document(IHTMLElement *iface, IDispatch **p)
......
...@@ -51,15 +51,24 @@ static const WCHAR ondragW[] = {'o','n','d','r','a','g',0}; ...@@ -51,15 +51,24 @@ static const WCHAR ondragW[] = {'o','n','d','r','a','g',0};
static const WCHAR focusW[] = {'f','o','c','u','s',0}; static const WCHAR focusW[] = {'f','o','c','u','s',0};
static const WCHAR onfocusW[] = {'o','n','f','o','c','u','s',0}; static const WCHAR onfocusW[] = {'o','n','f','o','c','u','s',0};
static const WCHAR keydownW[] = {'k','e','y','d','o','w','n',0};
static const WCHAR onkeydownW[] = {'o','n','k','e','y','d','o','w','n',0};
static const WCHAR keyupW[] = {'k','e','y','u','p',0}; static const WCHAR keyupW[] = {'k','e','y','u','p',0};
static const WCHAR onkeyupW[] = {'o','n','k','e','y','u','p',0}; static const WCHAR onkeyupW[] = {'o','n','k','e','y','u','p',0};
static const WCHAR loadW[] = {'l','o','a','d',0}; static const WCHAR loadW[] = {'l','o','a','d',0};
static const WCHAR onloadW[] = {'o','n','l','o','a','d',0}; static const WCHAR onloadW[] = {'o','n','l','o','a','d',0};
static const WCHAR mousedownW[] = {'m','o','u','s','e','d','o','w','n',0};
static const WCHAR onmousedownW[] = {'o','n','m','o','u','s','e','d','o','w','n',0};
static const WCHAR mouseoverW[] = {'m','o','u','s','e','o','v','e','r',0}; static const WCHAR mouseoverW[] = {'m','o','u','s','e','o','v','e','r',0};
static const WCHAR onmouseoverW[] = {'o','n','m','o','u','s','e','o','v','e','r',0}; static const WCHAR onmouseoverW[] = {'o','n','m','o','u','s','e','o','v','e','r',0};
static const WCHAR mouseupW[] = {'m','o','u','s','e','u','p',0};
static const WCHAR onmouseupW[] = {'o','n','m','o','u','s','e','u','p',0};
static const WCHAR pasteW[] = {'p','a','s','t','e',0}; static const WCHAR pasteW[] = {'p','a','s','t','e',0};
static const WCHAR onpasteW[] = {'o','n','p','a','s','t','e',0}; static const WCHAR onpasteW[] = {'o','n','p','a','s','t','e',0};
...@@ -78,9 +87,12 @@ static const event_info_t event_info[] = { ...@@ -78,9 +87,12 @@ static const event_info_t event_info[] = {
{clickW, onclickW, EVENT_DEFAULTLISTENER|EVENT_BUBBLE}, {clickW, onclickW, EVENT_DEFAULTLISTENER|EVENT_BUBBLE},
{dragW, ondragW, 0}, {dragW, ondragW, 0},
{focusW, onfocusW, EVENT_DEFAULTLISTENER}, {focusW, onfocusW, EVENT_DEFAULTLISTENER},
{keydownW, onkeydownW, EVENT_DEFAULTLISTENER|EVENT_BUBBLE},
{keyupW, onkeyupW, EVENT_DEFAULTLISTENER|EVENT_BUBBLE}, {keyupW, onkeyupW, EVENT_DEFAULTLISTENER|EVENT_BUBBLE},
{loadW, onloadW, 0}, {loadW, onloadW, 0},
{mousedownW, onmousedownW, EVENT_DEFAULTLISTENER|EVENT_BUBBLE},
{mouseoverW, onmouseoverW, EVENT_DEFAULTLISTENER|EVENT_BUBBLE}, {mouseoverW, onmouseoverW, EVENT_DEFAULTLISTENER|EVENT_BUBBLE},
{mouseupW, onmouseupW, EVENT_DEFAULTLISTENER|EVENT_BUBBLE},
{pasteW, onpasteW, 0} {pasteW, onpasteW, 0}
}; };
......
...@@ -22,9 +22,12 @@ typedef enum { ...@@ -22,9 +22,12 @@ typedef enum {
EVENTID_CLICK, EVENTID_CLICK,
EVENTID_DRAG, EVENTID_DRAG,
EVENTID_FOCUS, EVENTID_FOCUS,
EVENTID_KEYDOWN,
EVENTID_KEYUP, EVENTID_KEYUP,
EVENTID_LOAD, EVENTID_LOAD,
EVENTID_MOUSEDOWN,
EVENTID_MOUSEOVER, EVENTID_MOUSEOVER,
EVENTID_MOUSEUP,
EVENTID_PASTE, EVENTID_PASTE,
EVENTID_LAST EVENTID_LAST
} eventid_t; } eventid_t;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment