esrille / escudo

The Escudo Web Browser
Apache License 2.0
68 stars 13 forks source link

[HTML] Add a common HTML event handler subsystem #2

Closed ShikiOkasaka closed 11 years ago

ShikiOkasaka commented 11 years ago

cf. http://www.w3.org/TR/2012/CR-html5-20121217/webappapis.html#event-handler-attributes

Something like this:

events::EventHandlerNonNull HTMLElementImp::getOnclick()
{
    events::EventListener listener = getEventHandlerListener(u"click");
    return listener.getHandler();
}

void HTMLElementImp::setOnclick(events::EventHandlerNonNull onclick)
{
    events::EventListener listener = getEventHandlerListener(u"click");
    listener.setHandler(onclick));
}
ShikiOkasaka commented 11 years ago

c5cdaa0729a2cf8cd484c809d5d9c8755c5b575a implemented this as:

events::EventHandlerNonNull HTMLElementImp::getOnclick()
{
    return interface_cast<events::EventHandlerNonNull>(getEventHandler(u"click"));
}

void HTMLElementImp::setOnclick(events::EventHandlerNonNull onclick)
{
    setEventHandler(u"click", onclick);
}