mshtml: Added IHTMLElement::put_onclick implementation.

This commit is contained in:
Jacek Caban 2008-06-23 09:54:51 -05:00 committed by Alexandre Julliard
parent cf51da73f6
commit 41bdff629f
3 changed files with 18 additions and 2 deletions

View File

@ -443,8 +443,10 @@ static HRESULT WINAPI HTMLElement_get_onhelp(IHTMLElement *iface, VARIANT *p)
static HRESULT WINAPI HTMLElement_put_onclick(IHTMLElement *iface, VARIANT v) static HRESULT WINAPI HTMLElement_put_onclick(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_CLICK, &v);
} }
static HRESULT WINAPI HTMLElement_get_onclick(IHTMLElement *iface, VARIANT *p) static HRESULT WINAPI HTMLElement_get_onclick(IHTMLElement *iface, VARIANT *p)

View File

@ -419,6 +419,19 @@ static HRESULT set_node_event_disp(HTMLDOMNode *node, eventid_t eid, IDispatch *
return S_OK; return S_OK;
} }
HRESULT set_node_event(HTMLDOMNode *node, eventid_t eid, VARIANT *var)
{
switch(V_VT(var)) {
case VT_DISPATCH:
return set_node_event_disp(node, eid, V_DISPATCH(var));
default:
FIXME("not supported vt=%d\n", V_VT(var));
}
return E_NOTIMPL;
}
void check_event_attr(HTMLDocument *doc, nsIDOMElement *nselem) void check_event_attr(HTMLDocument *doc, nsIDOMElement *nselem)
{ {
const PRUnichar *attr_value; const PRUnichar *attr_value;

View File

@ -505,6 +505,7 @@ nsresult get_nsinterface(nsISupports*,REFIID,void**);
void check_event_attr(HTMLDocument*,nsIDOMElement*); void check_event_attr(HTMLDocument*,nsIDOMElement*);
void release_event_target(event_target_t*); void release_event_target(event_target_t*);
void fire_event(HTMLDocument*,eventid_t,nsIDOMNode*); void fire_event(HTMLDocument*,eventid_t,nsIDOMNode*);
HRESULT set_node_event(HTMLDOMNode*,eventid_t,VARIANT*);
eventid_t str_to_eid(LPCWSTR); eventid_t str_to_eid(LPCWSTR);
void set_document_bscallback(HTMLDocument*,nsChannelBSC*); void set_document_bscallback(HTMLDocument*,nsChannelBSC*);