From 0397a6637d53907b2c5720a7dd71f6db7741a061 Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Thu, 5 Nov 2015 23:58:16 +0000 Subject: Use automatic generation for all HTMLElement event handler attributes --- javascript/duktape/HTMLElement.bnd | 162 ++++++++++++++++++++++++++++--------- 1 file changed, 124 insertions(+), 38 deletions(-) (limited to 'javascript') diff --git a/javascript/duktape/HTMLElement.bnd b/javascript/duktape/HTMLElement.bnd index ce1a92562..3b8b873fc 100644 --- a/javascript/duktape/HTMLElement.bnd +++ b/javascript/duktape/HTMLElement.bnd @@ -25,43 +25,129 @@ setter HTMLElement::lang(); getter HTMLElement::title(); setter HTMLElement::title(); -setter HTMLElement::onclick() -%{ - /* handlerfn */ - duk_push_this(ctx); - /* handlerfn this */ - duk_get_prop_string(ctx, -1, HANDLER_MAGIC); - /* handlerfn this handlers */ - duk_push_lstring(ctx, "click", 5); - /* handlerfn this handlers click */ - duk_dup(ctx, -4); - /* handlerfn this handlers click handlerfn */ - duk_put_prop(ctx, -3); - /* handlerfn this handlers */ - dukky_register_event_listener_for(ctx, - (dom_element *)((node_private_t *)priv)->node, - corestring_dom_click); - return 0; -%} +getter HTMLElement::onchange(); +setter HTMLElement::onchange(); -getter HTMLElement::onclick() -%{ - dom_event_target *et = (dom_event_target *)(((node_private_t *)priv)->node); - dom_string *name; - dom_exception exc; +setter HTMLElement::onclick(); +getter HTMLElement::onclick(); - exc = dom_string_create((const uint8_t *)"click", 5, &name); - if (exc != DOM_NO_ERR) return 0; - - duk_push_this(ctx); - /* ... node */ - if (dukky_get_current_value_of_event_handler(ctx, name, et) == false) { - dom_string_unref(name); - return 0; - } - dom_string_unref(name); - /* ... handler node */ - duk_pop(ctx); - /* ... handler */ - return 1; -%} +getter HTMLElement::onabort(); +setter HTMLElement::onabort(); +getter HTMLElement::onautocompleteerror(); +setter HTMLElement::onautocompleteerror(); +getter HTMLElement::onautocomplete(); +setter HTMLElement::onautocomplete(); +getter HTMLElement::onblur(); +setter HTMLElement::onblur(); +getter HTMLElement::oncancel(); +setter HTMLElement::oncancel(); +getter HTMLElement::oncanplaythrough(); +setter HTMLElement::oncanplaythrough(); +getter HTMLElement::oncanplay(); +setter HTMLElement::oncanplay(); +getter HTMLElement::onclose(); +setter HTMLElement::onclose(); +getter HTMLElement::oncontextmenu(); +setter HTMLElement::oncontextmenu(); +getter HTMLElement::oncuechange(); +setter HTMLElement::oncuechange(); +getter HTMLElement::ondblclick(); +setter HTMLElement::ondblclick(); +getter HTMLElement::ondragend(); +setter HTMLElement::ondragend(); +getter HTMLElement::ondragenter(); +setter HTMLElement::ondragenter(); +getter HTMLElement::ondragexit(); +setter HTMLElement::ondragexit(); +getter HTMLElement::ondragleave(); +setter HTMLElement::ondragleave(); +getter HTMLElement::ondragover(); +setter HTMLElement::ondragover(); +getter HTMLElement::ondragstart(); +setter HTMLElement::ondragstart(); +getter HTMLElement::ondrag(); +setter HTMLElement::ondrag(); +getter HTMLElement::ondrop(); +setter HTMLElement::ondrop(); +getter HTMLElement::ondurationchange(); +setter HTMLElement::ondurationchange(); +getter HTMLElement::onemptied(); +setter HTMLElement::onemptied(); +getter HTMLElement::onended(); +setter HTMLElement::onended(); +getter HTMLElement::onfocus(); +setter HTMLElement::onfocus(); +getter HTMLElement::oninput(); +setter HTMLElement::oninput(); +getter HTMLElement::oninvalid(); +setter HTMLElement::oninvalid(); +getter HTMLElement::onkeydown(); +setter HTMLElement::onkeydown(); +getter HTMLElement::onkeypress(); +setter HTMLElement::onkeypress(); +getter HTMLElement::onkeyup(); +setter HTMLElement::onkeyup(); +getter HTMLElement::onloadeddata(); +setter HTMLElement::onloadeddata(); +getter HTMLElement::onloadedmetadata(); +setter HTMLElement::onloadedmetadata(); +getter HTMLElement::onloadstart(); +setter HTMLElement::onloadstart(); +getter HTMLElement::onload(); +setter HTMLElement::onload(); +getter HTMLElement::onmousedown(); +setter HTMLElement::onmousedown(); +getter HTMLElement::onmouseenter(); +setter HTMLElement::onmouseenter(); +getter HTMLElement::onmouseleave(); +setter HTMLElement::onmouseleave(); +getter HTMLElement::onmousemove(); +setter HTMLElement::onmousemove(); +getter HTMLElement::onmouseout(); +setter HTMLElement::onmouseout(); +getter HTMLElement::onmouseover(); +setter HTMLElement::onmouseover(); +getter HTMLElement::onmouseup(); +setter HTMLElement::onmouseup(); +getter HTMLElement::onpause(); +setter HTMLElement::onpause(); +getter HTMLElement::onplaying(); +setter HTMLElement::onplaying(); +getter HTMLElement::onplay(); +setter HTMLElement::onplay(); +getter HTMLElement::onprogress(); +setter HTMLElement::onprogress(); +getter HTMLElement::onratechange(); +setter HTMLElement::onratechange(); +getter HTMLElement::onreset(); +setter HTMLElement::onreset(); +getter HTMLElement::onresize(); +setter HTMLElement::onresize(); +getter HTMLElement::onscroll(); +setter HTMLElement::onscroll(); +getter HTMLElement::onseeked(); +setter HTMLElement::onseeked(); +getter HTMLElement::onseeking(); +setter HTMLElement::onseeking(); +getter HTMLElement::onselect(); +setter HTMLElement::onselect(); +getter HTMLElement::onshow(); +setter HTMLElement::onshow(); +getter HTMLElement::onsort(); +setter HTMLElement::onsort(); +getter HTMLElement::onstalled(); +setter HTMLElement::onstalled(); +getter HTMLElement::onsubmit(); +setter HTMLElement::onsubmit(); +getter HTMLElement::onsuspend(); +setter HTMLElement::onsuspend(); +getter HTMLElement::ontimeupdate(); +setter HTMLElement::ontimeupdate(); +getter HTMLElement::ontoggle(); +setter HTMLElement::ontoggle(); +getter HTMLElement::onvolumechange(); +setter HTMLElement::onvolumechange(); +getter HTMLElement::onwaiting(); +setter HTMLElement::onwaiting(); +getter HTMLElement::onwheel(); +setter HTMLElement::onwheel(); -- cgit v1.2.3