diff options
author | Vincent Sanders <vince@kyllikki.org> | 2013-01-23 17:00:13 +0000 |
---|---|---|
committer | Vincent Sanders <vince@kyllikki.org> | 2013-01-23 17:00:13 +0000 |
commit | 7ab835df8f45fcea7f12eafe422021b8232b5dd8 (patch) | |
tree | 7ae0cb2d10f0579ca7ac7a9baf818ba77ccfb985 | |
parent | 16d938dd63b1003daafcbead03779eb587dc823d (diff) | |
download | netsurf-7ab835df8f45fcea7f12eafe422021b8232b5dd8.tar.gz netsurf-7ab835df8f45fcea7f12eafe422021b8232b5dd8.tar.bz2 |
implement Element::className
-rw-r--r-- | javascript/jsapi/htmlelement.bnd | 16 | ||||
-rw-r--r-- | utils/corestrings.c | 3 | ||||
-rw-r--r-- | utils/corestrings.h | 1 |
3 files changed, 20 insertions, 0 deletions
diff --git a/javascript/jsapi/htmlelement.bnd b/javascript/jsapi/htmlelement.bnd index 3a6b01760..9af6f2bb5 100644 --- a/javascript/jsapi/htmlelement.bnd +++ b/javascript/jsapi/htmlelement.bnd @@ -163,6 +163,22 @@ getter id %{ } %} +/* attribute DOMString Element::className; */ +getter className %{ + dom_string *value; + dom_exception exc; + + exc = dom_element_get_attribute(private->node, corestring_dom_class, &value); + if (exc != DOM_NO_ERR) { + return JS_FALSE; + } + + if (value != NULL) { + jsret = JS_NewStringCopyN(cx, dom_string_data(value), dom_string_length(value)); + dom_string_unref(value); + } +%} + /* DOMString? Element::getAttribute(DOMString name); */ operation getAttribute %{ dom_string *value; diff --git a/utils/corestrings.c b/utils/corestrings.c index 65666df66..f39a59c21 100644 --- a/utils/corestrings.c +++ b/utils/corestrings.c @@ -134,6 +134,7 @@ dom_string *corestring_dom_cellpadding; dom_string *corestring_dom_cellspacing; dom_string *corestring_dom_change; dom_string *corestring_dom_charset; +dom_string *corestring_dom_class; dom_string *corestring_dom_click; dom_string *corestring_dom_close; dom_string *corestring_dom_color; @@ -357,6 +358,7 @@ void corestrings_fini(void) CSS_DOM_STRING_UNREF(cellspacing); CSS_DOM_STRING_UNREF(change); CSS_DOM_STRING_UNREF(charset); + CSS_DOM_STRING_UNREF(class); CSS_DOM_STRING_UNREF(click); CSS_DOM_STRING_UNREF(close); CSS_DOM_STRING_UNREF(color); @@ -611,6 +613,7 @@ nserror corestrings_init(void) CSS_DOM_STRING_INTERN(cellspacing); CSS_DOM_STRING_INTERN(change); CSS_DOM_STRING_INTERN(charset); + CSS_DOM_STRING_INTERN(class); CSS_DOM_STRING_INTERN(click); CSS_DOM_STRING_INTERN(close); CSS_DOM_STRING_INTERN(color); diff --git a/utils/corestrings.h b/utils/corestrings.h index 08d254501..e28b713eb 100644 --- a/utils/corestrings.h +++ b/utils/corestrings.h @@ -140,6 +140,7 @@ extern struct dom_string *corestring_dom_cellpadding; extern struct dom_string *corestring_dom_cellspacing; extern struct dom_string *corestring_dom_change; extern struct dom_string *corestring_dom_charset; +extern struct dom_string *corestring_dom_class; extern struct dom_string *corestring_dom_click; extern struct dom_string *corestring_dom_close; extern struct dom_string *corestring_dom_color; |