summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Drake <michael.drake@codethink.co.uk>2016-01-28 14:14:34 +0000
committerMichael Drake <michael.drake@codethink.co.uk>2016-01-28 14:14:34 +0000
commitbab3f35ff01a5825034d23424b8e3866cb6376e7 (patch)
tree1cbd1b3bbd42cb5d06180783461edf89088f6853
parent809a7dcd1c803065eeb8ea39a605b6e0e2ec5241 (diff)
downloadlibdom-bab3f35ff01a5825034d23424b8e3866cb6376e7.tar.gz
libdom-bab3f35ff01a5825034d23424b8e3866cb6376e7.tar.bz2
Simplified consistant interface to HTMLElement creation.
Also fixes STYLE element not getting the correct namespace or prefix.
-rw-r--r--src/html/html_anchor_element.c22
-rw-r--r--src/html/html_anchor_element.h8
-rw-r--r--src/html/html_applet_element.c22
-rw-r--r--src/html/html_applet_element.h8
-rw-r--r--src/html/html_area_element.c22
-rw-r--r--src/html/html_area_element.h8
-rw-r--r--src/html/html_base_element.c22
-rw-r--r--src/html/html_base_element.h8
-rw-r--r--src/html/html_basefont_element.c22
-rw-r--r--src/html/html_basefont_element.h8
-rw-r--r--src/html/html_body_element.c22
-rw-r--r--src/html/html_body_element.h8
-rw-r--r--src/html/html_br_element.c22
-rw-r--r--src/html/html_br_element.h8
-rw-r--r--src/html/html_button_element.c22
-rw-r--r--src/html/html_button_element.h8
-rw-r--r--src/html/html_directory_element.c22
-rw-r--r--src/html/html_directory_element.h8
-rw-r--r--src/html/html_div_element.c22
-rw-r--r--src/html/html_div_element.h8
-rw-r--r--src/html/html_dlist_element.c22
-rw-r--r--src/html/html_dlist_element.h8
-rw-r--r--src/html/html_document.c143
-rw-r--r--src/html/html_element.c18
-rw-r--r--src/html/html_element.h19
-rw-r--r--src/html/html_fieldset_element.c22
-rw-r--r--src/html/html_fieldset_element.h8
-rw-r--r--src/html/html_font_element.c22
-rw-r--r--src/html/html_font_element.h8
-rw-r--r--src/html/html_form_element.c22
-rw-r--r--src/html/html_form_element.h8
-rw-r--r--src/html/html_frame_element.c22
-rw-r--r--src/html/html_frame_element.h8
-rw-r--r--src/html/html_frameset_element.c22
-rw-r--r--src/html/html_frameset_element.h8
-rw-r--r--src/html/html_head_element.c22
-rw-r--r--src/html/html_head_element.h8
-rw-r--r--src/html/html_heading_element.c27
-rw-r--r--src/html/html_heading_element.h12
-rw-r--r--src/html/html_hr_element.c22
-rw-r--r--src/html/html_hr_element.h8
-rw-r--r--src/html/html_html_element.c22
-rw-r--r--src/html/html_html_element.h8
-rw-r--r--src/html/html_iframe_element.c23
-rw-r--r--src/html/html_iframe_element.h8
-rw-r--r--src/html/html_image_element.c22
-rw-r--r--src/html/html_image_element.h8
-rw-r--r--src/html/html_input_element.c22
-rw-r--r--src/html/html_input_element.h8
-rw-r--r--src/html/html_isindex_element.c22
-rw-r--r--src/html/html_isindex_element.h8
-rw-r--r--src/html/html_label_element.c22
-rw-r--r--src/html/html_label_element.h8
-rw-r--r--src/html/html_legend_element.c22
-rw-r--r--src/html/html_legend_element.h8
-rw-r--r--src/html/html_li_element.c22
-rw-r--r--src/html/html_li_element.h8
-rw-r--r--src/html/html_link_element.c22
-rw-r--r--src/html/html_link_element.h8
-rw-r--r--src/html/html_map_element.c22
-rw-r--r--src/html/html_map_element.h8
-rw-r--r--src/html/html_menu_element.c22
-rw-r--r--src/html/html_menu_element.h8
-rw-r--r--src/html/html_meta_element.c22
-rw-r--r--src/html/html_meta_element.h8
-rw-r--r--src/html/html_mod_element.c25
-rw-r--r--src/html/html_mod_element.h10
-rw-r--r--src/html/html_object_element.c22
-rw-r--r--src/html/html_object_element.h8
-rw-r--r--src/html/html_olist_element.c22
-rw-r--r--src/html/html_olist_element.h8
-rw-r--r--src/html/html_opt_group_element.c22
-rw-r--r--src/html/html_opt_group_element.h8
-rw-r--r--src/html/html_option_element.c22
-rw-r--r--src/html/html_option_element.h8
-rw-r--r--src/html/html_paragraph_element.c22
-rw-r--r--src/html/html_paragraph_element.h8
-rw-r--r--src/html/html_param_element.c22
-rw-r--r--src/html/html_param_element.h8
-rw-r--r--src/html/html_pre_element.c22
-rw-r--r--src/html/html_pre_element.h8
-rw-r--r--src/html/html_quote_element.c22
-rw-r--r--src/html/html_quote_element.h8
-rw-r--r--src/html/html_script_element.c22
-rw-r--r--src/html/html_script_element.h8
-rw-r--r--src/html/html_select_element.c22
-rw-r--r--src/html/html_select_element.h8
-rw-r--r--src/html/html_style_element.c29
-rw-r--r--src/html/html_style_element.h6
-rw-r--r--src/html/html_table_element.c99
-rw-r--r--src/html/html_table_element.h8
-rw-r--r--src/html/html_tablecaption_element.c22
-rw-r--r--src/html/html_tablecaption_element.h8
-rw-r--r--src/html/html_tablecell_element.c23
-rw-r--r--src/html/html_tablecell_element.h8
-rw-r--r--src/html/html_tablecol_element.c22
-rw-r--r--src/html/html_tablecol_element.h8
-rw-r--r--src/html/html_tablerow_element.c37
-rw-r--r--src/html/html_tablerow_element.h8
-rw-r--r--src/html/html_tablesection_element.c35
-rw-r--r--src/html/html_tablesection_element.h8
-rw-r--r--src/html/html_text_area_element.c22
-rw-r--r--src/html/html_text_area_element.h8
-rw-r--r--src/html/html_title_element.c22
-rw-r--r--src/html/html_title_element.h8
-rw-r--r--src/html/html_ulist_element.c22
-rw-r--r--src/html/html_ulist_element.h8
107 files changed, 894 insertions, 972 deletions
diff --git a/src/html/html_anchor_element.c b/src/html/html_anchor_element.c
index 5ad473b..e23ae45 100644
--- a/src/html/html_anchor_element.c
+++ b/src/html/html_anchor_element.c
@@ -28,12 +28,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_anchor_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_anchor_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_anchor_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_anchor_element **ele)
{
struct dom_node_internal *node;
@@ -47,23 +47,21 @@ dom_exception _dom_html_anchor_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_anchor_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_anchor_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_anchor_element object
*
- * \param doc The document object
- * \param ele The dom_html_anchor_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_anchor_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_anchor_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_anchor_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_anchor_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_A],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_anchor_element.h b/src/html/html_anchor_element.h
index a9f5b5b..b79daf9 100644
--- a/src/html/html_anchor_element.h
+++ b/src/html/html_anchor_element.h
@@ -19,13 +19,13 @@ struct dom_html_anchor_element {
};
/* Create a dom_html_anchor_element object */
-dom_exception _dom_html_anchor_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_anchor_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_anchor_element **ele);
/* Initialise a dom_html_anchor_element object */
-dom_exception _dom_html_anchor_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_anchor_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_anchor_element *ele);
/* Finalise a dom_html_anchor_element object */
diff --git a/src/html/html_applet_element.c b/src/html/html_applet_element.c
index dedcbc5..2a28293 100644
--- a/src/html/html_applet_element.c
+++ b/src/html/html_applet_element.c
@@ -28,12 +28,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_applet_element applet
*
- * \param doc The document applet
- * \param ele The returned element applet
+ * \param params The html element creation parameters
+ * \param ele The returned element applet
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_applet_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_applet_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_applet_element **ele)
{
struct dom_node_internal *node;
@@ -47,23 +47,21 @@ dom_exception _dom_html_applet_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_applet_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_applet_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_applet_element applet
*
- * \param doc The document applet
- * \param ele The dom_html_applet_element applet
+ * \param params The html element creation parameters
+ * \param ele The dom_html_applet_element applet
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_applet_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_applet_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_applet_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_APPLET],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_applet_element.h b/src/html/html_applet_element.h
index 21e6d7a..20bef1f 100644
--- a/src/html/html_applet_element.h
+++ b/src/html/html_applet_element.h
@@ -19,13 +19,13 @@ struct dom_html_applet_element {
};
/* Create a dom_html_applet_element object */
-dom_exception _dom_html_applet_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_applet_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_applet_element **ele);
/* Initialise a dom_html_applet_element object */
-dom_exception _dom_html_applet_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_applet_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_applet_element *ele);
/* Finalise a dom_html_applet_element object */
diff --git a/src/html/html_area_element.c b/src/html/html_area_element.c
index b3ca8dd..4a2cefb 100644
--- a/src/html/html_area_element.c
+++ b/src/html/html_area_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_area_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_area_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_area_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_area_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_area_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_area_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_area_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_area_element object
*
- * \param doc The document object
- * \param ele The dom_html_area_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_area_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_area_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_area_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_area_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_AREA],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_area_element.h b/src/html/html_area_element.h
index a45d1df..73462b2 100644
--- a/src/html/html_area_element.h
+++ b/src/html/html_area_element.h
@@ -19,13 +19,13 @@ struct dom_html_area_element {
};
/* Create a dom_html_area_element object */
-dom_exception _dom_html_area_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_area_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_area_element **ele);
/* Initialise a dom_html_area_element object */
-dom_exception _dom_html_area_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_area_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_area_element *ele);
/* Finalise a dom_html_area_element object */
diff --git a/src/html/html_base_element.c b/src/html/html_base_element.c
index 55bbd94..cda0707 100644
--- a/src/html/html_base_element.c
+++ b/src/html/html_base_element.c
@@ -23,12 +23,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_base_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_base_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_base_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_base_element **ele)
{
struct dom_node_internal *node;
@@ -42,23 +42,21 @@ dom_exception _dom_html_base_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_base_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_base_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_base_element object
*
- * \param doc The document object
- * \param ele The dom_html_base_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_base_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_base_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_base_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_base_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_BASE],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_base_element.h b/src/html/html_base_element.h
index 3113635..608b99f 100644
--- a/src/html/html_base_element.h
+++ b/src/html/html_base_element.h
@@ -18,13 +18,13 @@ struct dom_html_base_element {
};
/* Create a dom_html_base_element object */
-dom_exception _dom_html_base_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_base_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_base_element **ele);
/* Initialise a dom_html_base_element object */
-dom_exception _dom_html_base_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_base_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_base_element *ele);
/* Finalise a dom_html_base_element object */
diff --git a/src/html/html_basefont_element.c b/src/html/html_basefont_element.c
index f8e9249..eab5a79 100644
--- a/src/html/html_basefont_element.c
+++ b/src/html/html_basefont_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_base_font_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_base_font_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_base_font_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_base_font_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_base_font_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_base_font_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_base_font_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_base_font_element object
*
- * \param doc The document object
- * \param ele The dom_html_base_font_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_base_font_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_base_font_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_base_font_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_base_font_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_BASEFONT],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_basefont_element.h b/src/html/html_basefont_element.h
index e6427ec..90e886e 100644
--- a/src/html/html_basefont_element.h
+++ b/src/html/html_basefont_element.h
@@ -19,13 +19,13 @@ struct dom_html_base_font_element {
};
/* Create a dom_html_base_font_element object */
-dom_exception _dom_html_base_font_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_base_font_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_base_font_element **ele);
/* Initialise a dom_html_base_font_element object */
-dom_exception _dom_html_base_font_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_base_font_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_base_font_element *ele);
/* Finalise a dom_html_base_font_element object */
diff --git a/src/html/html_body_element.c b/src/html/html_body_element.c
index f63583e..655fdb0 100644
--- a/src/html/html_body_element.c
+++ b/src/html/html_body_element.c
@@ -25,12 +25,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_body_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_body_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_body_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_body_element **ele)
{
struct dom_node_internal *node;
@@ -44,23 +44,21 @@ dom_exception _dom_html_body_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_body_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_body_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_body_element object
*
- * \param doc The document object
- * \param ele The dom_html_body_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_body_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_body_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_body_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_body_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_BODY],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_body_element.h b/src/html/html_body_element.h
index 2763680..765c44d 100644
--- a/src/html/html_body_element.h
+++ b/src/html/html_body_element.h
@@ -18,13 +18,13 @@ struct dom_html_body_element {
};
/* Create a dom_html_body_element object */
-dom_exception _dom_html_body_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_body_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_body_element **ele);
/* Initialise a dom_html_body_element object */
-dom_exception _dom_html_body_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_body_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_body_element *ele);
/* Finalise a dom_html_body_element object */
diff --git a/src/html/html_br_element.c b/src/html/html_br_element.c
index ec5acf6..0cc9194 100644
--- a/src/html/html_br_element.c
+++ b/src/html/html_br_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_br_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_br_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_br_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_br_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_br_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_br_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_br_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_br_element object
*
- * \param doc The document object
- * \param ele The dom_html_br_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_br_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_br_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_br_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_br_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_BR],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_br_element.h b/src/html/html_br_element.h
index ff2df3d..75cbc49 100644
--- a/src/html/html_br_element.h
+++ b/src/html/html_br_element.h
@@ -19,13 +19,13 @@ struct dom_html_br_element {
};
/* Create a dom_html_br_element object */
-dom_exception _dom_html_br_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_br_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_br_element **ele);
/* Initialise a dom_html_br_element object */
-dom_exception _dom_html_br_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_br_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_br_element *ele);
/* Finalise a dom_html_br_element object */
diff --git a/src/html/html_button_element.c b/src/html/html_button_element.c
index 28b694b..a9c34d5 100644
--- a/src/html/html_button_element.c
+++ b/src/html/html_button_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_button_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_button_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_button_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_button_element **ele)
{
struct dom_node_internal *node;
@@ -46,25 +46,23 @@ dom_exception _dom_html_button_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_button_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_button_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_button_element object
*
- * \param doc The document object
- * \param ele The dom_html_button_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_button_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_button_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_button_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_button_element *ele)
{
ele->form = NULL;
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_BUTTON],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_button_element.h b/src/html/html_button_element.h
index 18d0250..9734106 100644
--- a/src/html/html_button_element.h
+++ b/src/html/html_button_element.h
@@ -20,13 +20,13 @@ struct dom_html_button_element {
};
/* Create a dom_html_button_element object */
-dom_exception _dom_html_button_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_button_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_button_element **ele);
/* Initialise a dom_html_button_element object */
-dom_exception _dom_html_button_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_button_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_button_element *ele);
/* Finalise a dom_html_button_element object */
diff --git a/src/html/html_directory_element.c b/src/html/html_directory_element.c
index 1e06074..e50a353 100644
--- a/src/html/html_directory_element.c
+++ b/src/html/html_directory_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_directory_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_directory_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_directory_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_directory_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_directory_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_directory_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_directory_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_directory_element object
*
- * \param doc The document object
- * \param ele The dom_html_directory_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_directory_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_directory_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_directory_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_directory_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_DIR],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_directory_element.h b/src/html/html_directory_element.h
index 9f3fe2b..14497f6 100644
--- a/src/html/html_directory_element.h
+++ b/src/html/html_directory_element.h
@@ -19,13 +19,13 @@ struct dom_html_directory_element {
};
/* Create a dom_html_directory_element object */
-dom_exception _dom_html_directory_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_directory_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_directory_element **ele);
/* Initialise a dom_html_directory_element object */
-dom_exception _dom_html_directory_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_directory_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_directory_element *ele);
/* Finalise a dom_html_directory_element object */
diff --git a/src/html/html_div_element.c b/src/html/html_div_element.c
index f5ef051..5ebb971 100644
--- a/src/html/html_div_element.c
+++ b/src/html/html_div_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_div_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_div_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_div_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_div_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_div_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_div_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_div_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_div_element object
*
- * \param doc The document object
- * \param ele The dom_html_div_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_div_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_div_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_div_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_div_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_DIV],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_div_element.h b/src/html/html_div_element.h
index 62d1c3f..931d201 100644
--- a/src/html/html_div_element.h
+++ b/src/html/html_div_element.h
@@ -19,13 +19,13 @@ struct dom_html_div_element {
};
/* Create a dom_html_div_element object */
-dom_exception _dom_html_div_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_div_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_div_element **ele);
/* Initialise a dom_html_div_element object */
-dom_exception _dom_html_div_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_div_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_div_element *ele);
/* Finalise a dom_html_div_element object */
diff --git a/src/html/html_dlist_element.c b/src/html/html_dlist_element.c
index 38e3276..e2fccc9 100644
--- a/src/html/html_dlist_element.c
+++ b/src/html/html_dlist_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_dlist_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_dlist_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_dlist_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_dlist_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_dlist_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_dlist_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_dlist_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_dlist_element object
*
- * \param doc The document object
- * \param ele The dom_html_dlist_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_dlist_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_dlist_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_dlist_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_dlist_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_DL],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_dlist_element.h b/src/html/html_dlist_element.h
index 06d5634..aeca232 100644
--- a/src/html/html_dlist_element.h
+++ b/src/html/html_dlist_element.h
@@ -19,13 +19,13 @@ struct dom_html_dlist_element {
};
/* Create a dom_html_dlist_element object */
-dom_exception _dom_html_dlist_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_dlist_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_dlist_element **ele);
/* Initialise a dom_html_dlist_element object */
-dom_exception _dom_html_dlist_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_dlist_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_dlist_element *ele);
/* Finalise a dom_html_dlist_element object */
diff --git a/src/html/html_document.c b/src/html/html_document.c
index 839cf99..34d8803 100644
--- a/src/html/html_document.c
+++ b/src/html/html_document.c
@@ -493,106 +493,110 @@ _dom_html_document_create_element_internal(
dom_html_element **result)
{
dom_exception exc;
- dom_string *tag_name;
dom_html_element_type type;
+ struct dom_html_element_create_params params;
- exc = dom_string_toupper(in_tag_name, true, &tag_name);
+ exc = dom_string_toupper(in_tag_name, true, &params.name);
if (exc != DOM_NO_ERR)
return exc;
- type = _dom_html_document_get_element_type(html, tag_name);
+ type = _dom_html_document_get_element_type(html, params.name);
+
+ params.doc = html;
+ params.namespace = namespace;
+ params.prefix = prefix;
switch(type) {
case DOM_HTML_ELEMENT_TYPE__COUNT:
assert(type != DOM_HTML_ELEMENT_TYPE__COUNT);
break;
case DOM_HTML_ELEMENT_TYPE_HTML:
- exc = _dom_html_html_element_create(html, namespace, prefix,
+ exc = _dom_html_html_element_create(&params,
(dom_html_html_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_HEAD:
- exc = _dom_html_head_element_create(html, namespace, prefix,
+ exc = _dom_html_head_element_create(&params,
(dom_html_head_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_META:
- exc = _dom_html_meta_element_create(html, namespace, prefix,
+ exc = _dom_html_meta_element_create(&params,
(dom_html_meta_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_BASE:
- exc = _dom_html_base_element_create(html, namespace, prefix,
+ exc = _dom_html_base_element_create(&params,
(dom_html_base_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_TITLE:
- exc = _dom_html_title_element_create(html, namespace, prefix,
+ exc = _dom_html_title_element_create(&params,
(dom_html_title_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_BODY:
- exc = _dom_html_body_element_create(html, namespace, prefix,
+ exc = _dom_html_body_element_create(&params,
(dom_html_body_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_DIV:
- exc = _dom_html_div_element_create(html, namespace, prefix,
+ exc = _dom_html_div_element_create(&params,
(dom_html_div_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_FORM:
- exc = _dom_html_form_element_create(html, namespace, prefix,
+ exc = _dom_html_form_element_create(&params,
(dom_html_form_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_LINK:
- exc = _dom_html_link_element_create(html, namespace, prefix,
+ exc = _dom_html_link_element_create(&params,
(dom_html_link_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_BUTTON:
- exc = _dom_html_button_element_create(html, namespace, prefix,
+ exc = _dom_html_button_element_create(&params,
(dom_html_button_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_INPUT:
- exc = _dom_html_input_element_create(html, namespace, prefix,
+ exc = _dom_html_input_element_create(&params,
(dom_html_input_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_TEXTAREA:
- exc = _dom_html_text_area_element_create(html, namespace,
- prefix, (dom_html_text_area_element **) result);
+ exc = _dom_html_text_area_element_create(&params,
+ (dom_html_text_area_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_OPTGROUP:
- exc = _dom_html_opt_group_element_create(html, namespace,
- prefix, (dom_html_opt_group_element **) result);
+ exc = _dom_html_opt_group_element_create(&params,
+ (dom_html_opt_group_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_OPTION:
- exc = _dom_html_option_element_create(html, namespace, prefix,
+ exc = _dom_html_option_element_create(&params,
(dom_html_option_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_SELECT:
- exc = _dom_html_select_element_create(html, namespace, prefix,
+ exc = _dom_html_select_element_create(&params,
(dom_html_select_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_HR:
- exc = _dom_html_hr_element_create(html, namespace, prefix,
+ exc = _dom_html_hr_element_create(&params,
(dom_html_hr_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_DL:
- exc = _dom_html_dlist_element_create(html, namespace, prefix,
+ exc = _dom_html_dlist_element_create(&params,
(dom_html_dlist_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_DIR:
- exc = _dom_html_directory_element_create(html, namespace,
- prefix, (dom_html_directory_element **) result);
+ exc = _dom_html_directory_element_create(&params,
+ (dom_html_directory_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_MENU:
- exc = _dom_html_menu_element_create(html, namespace, prefix,
+ exc = _dom_html_menu_element_create(&params,
(dom_html_menu_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_FIELDSET:
- exc = _dom_html_field_set_element_create(html, namespace,
- prefix, (dom_html_field_set_element **) result);
+ exc = _dom_html_field_set_element_create(&params,
+ (dom_html_field_set_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_LEGEND:
- exc = _dom_html_legend_element_create(html, namespace, prefix,
+ exc = _dom_html_legend_element_create(&params,
(dom_html_legend_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_P:
- exc = _dom_html_paragraph_element_create(html, namespace,
- prefix, (dom_html_paragraph_element **) result);
+ exc = _dom_html_paragraph_element_create(&params,
+ (dom_html_paragraph_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_H1:
case DOM_HTML_ELEMENT_TYPE_H2:
@@ -600,145 +604,138 @@ _dom_html_document_create_element_internal(
case DOM_HTML_ELEMENT_TYPE_H4:
case DOM_HTML_ELEMENT_TYPE_H5:
case DOM_HTML_ELEMENT_TYPE_H6:
- exc = _dom_html_heading_element_create(html, tag_name,
- namespace, prefix,
+ exc = _dom_html_heading_element_create(&params,
(dom_html_heading_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_BLOCKQUOTE:
case DOM_HTML_ELEMENT_TYPE_Q:
- exc = _dom_html_quote_element_create(html, tag_name,
- namespace, prefix,
+ exc = _dom_html_quote_element_create(&params,
(dom_html_quote_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_PRE:
- exc = _dom_html_pre_element_create(html, namespace, prefix,
+ exc = _dom_html_pre_element_create(&params,
(dom_html_pre_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_BR:
- exc = _dom_html_br_element_create(html, namespace, prefix,
+ exc = _dom_html_br_element_create(&params,
(dom_html_br_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_LABEL:
- exc = _dom_html_label_element_create(html, namespace, prefix,
+ exc = _dom_html_label_element_create(&params,
(dom_html_label_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_UL:
- exc = _dom_html_u_list_element_create(html, namespace, prefix,
+ exc = _dom_html_u_list_element_create(&params,
(dom_html_u_list_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_OL:
- exc = _dom_html_olist_element_create(html, namespace, prefix,
+ exc = _dom_html_olist_element_create(&params,
(dom_html_olist_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_LI:
- exc = _dom_html_li_element_create(html, namespace, prefix,
+ exc = _dom_html_li_element_create(&params,
(dom_html_li_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_FONT:
- exc = _dom_html_font_element_create(html, namespace, prefix,
+ exc = _dom_html_font_element_create(&params,
(dom_html_font_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_DEL:
case DOM_HTML_ELEMENT_TYPE_INS:
- exc = _dom_html_mod_element_create(html, tag_name, namespace,
- prefix, (dom_html_mod_element **) result);
+ exc = _dom_html_mod_element_create(&params,
+ (dom_html_mod_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_A:
- exc = _dom_html_anchor_element_create(html, namespace, prefix,
+ exc = _dom_html_anchor_element_create(&params,
(dom_html_anchor_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_BASEFONT:
- exc = _dom_html_base_font_element_create(html,
- namespace, prefix,
+ exc = _dom_html_base_font_element_create(&params,
(dom_html_base_font_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_IMG:
- exc = _dom_html_image_element_create(html, namespace, prefix,
+ exc = _dom_html_image_element_create(&params,
(dom_html_image_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_OBJECT:
- exc = _dom_html_object_element_create(html, namespace, prefix,
+ exc = _dom_html_object_element_create(&params,
(dom_html_object_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_PARAM:
- exc = _dom_html_param_element_create(html, namespace, prefix,
+ exc = _dom_html_param_element_create(&params,
(dom_html_param_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_APPLET:
- exc = _dom_html_applet_element_create(html, namespace, prefix,
+ exc = _dom_html_applet_element_create(&params,
(dom_html_applet_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_MAP:
- exc = _dom_html_map_element_create(html, namespace, prefix,
+ exc = _dom_html_map_element_create(&params,
(dom_html_map_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_AREA:
- exc = _dom_html_area_element_create(html, namespace, prefix,
+ exc = _dom_html_area_element_create(&params,
(dom_html_area_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_SCRIPT:
- exc = _dom_html_script_element_create(html, namespace, prefix,
+ exc = _dom_html_script_element_create(&params,
(dom_html_script_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_CAPTION:
- exc = _dom_html_table_caption_element_create(html,
- namespace, prefix,
+ exc = _dom_html_table_caption_element_create(&params,
(dom_html_table_caption_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_TD:
case DOM_HTML_ELEMENT_TYPE_TH:
- exc = _dom_html_table_cell_element_create(html, tag_name,
- namespace, prefix,
+ exc = _dom_html_table_cell_element_create(&params,
(dom_html_table_cell_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_COL:
case DOM_HTML_ELEMENT_TYPE_COLGROUP:
- exc = _dom_html_table_col_element_create(html, tag_name,
- namespace, prefix,
+ exc = _dom_html_table_col_element_create(&params,
(dom_html_table_col_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_THEAD:
case DOM_HTML_ELEMENT_TYPE_TBODY:
case DOM_HTML_ELEMENT_TYPE_TFOOT:
- exc = _dom_html_table_section_element_create(html, tag_name,
- namespace, prefix,
+ exc = _dom_html_table_section_element_create(&params,
(dom_html_table_section_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_TABLE:
- exc = _dom_html_table_element_create(html, namespace, prefix,
+ exc = _dom_html_table_element_create(&params,
(dom_html_table_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_TR:
- exc = _dom_html_table_row_element_create(html, namespace,
- prefix, (dom_html_table_row_element **) result);
+ exc = _dom_html_table_row_element_create(&params,
+ (dom_html_table_row_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_STYLE:
- exc = _dom_html_style_element_create(html,
+ exc = _dom_html_style_element_create(&params,
(dom_html_style_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_FRAMESET:
- exc = _dom_html_frame_set_element_create(html, namespace,
- prefix, (dom_html_frame_set_element **) result);
+ exc = _dom_html_frame_set_element_create(&params,
+ (dom_html_frame_set_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_FRAME:
- exc = _dom_html_frame_element_create(html, namespace, prefix,
+ exc = _dom_html_frame_element_create(&params,
(dom_html_frame_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_IFRAME:
- exc = _dom_html_iframe_element_create(html, namespace, prefix,
+ exc = _dom_html_iframe_element_create(&params,
(dom_html_iframe_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE_ISINDEX:
- exc = _dom_html_isindex_element_create(html, namespace, prefix,
+ exc = _dom_html_isindex_element_create(&params,
(dom_html_isindex_element **) result);
break;
case DOM_HTML_ELEMENT_TYPE__UNKNOWN:
- exc = _dom_html_element_create(html, tag_name, namespace,
- prefix, result);
+ exc = _dom_html_element_create(&params,
+ result);
break;
}
- dom_string_unref(tag_name);
+ dom_string_unref(params.name);
return exc;
}
diff --git a/src/html/html_element.c b/src/html/html_element.c
index d436898..513a5be 100644
--- a/src/html/html_element.c
+++ b/src/html/html_element.c
@@ -38,9 +38,9 @@ static struct dom_element_protected_vtable _dom_html_element_protect_vtable = {
DOM_ELEMENT_PROTECT_VTABLE
};
-dom_exception _dom_html_element_create(struct dom_html_document *doc,
- dom_string *name, dom_string *namespace,
- dom_string *prefix, struct dom_html_element **result)
+dom_exception _dom_html_element_create(
+ struct dom_html_element_create_params *params,
+ struct dom_html_element **result)
{
dom_exception error;
dom_html_element *el;
@@ -52,8 +52,7 @@ dom_exception _dom_html_element_create(struct dom_html_document *doc,
el->base.base.base.vtable = &_dom_html_element_vtable;
el->base.base.vtable = &_dom_html_element_protect_vtable;
- error = _dom_html_element_initialise(doc, el, name, namespace,
- prefix);
+ error = _dom_html_element_initialise(params, el);
if (error != DOM_NO_ERR) {
free(el);
return error;
@@ -64,13 +63,14 @@ dom_exception _dom_html_element_create(struct dom_html_document *doc,
return DOM_NO_ERR;
}
-dom_exception _dom_html_element_initialise(struct dom_html_document *doc,
- struct dom_html_element *el, dom_string *name,
- dom_string *namespace, dom_string *prefix)
+dom_exception _dom_html_element_initialise(
+ struct dom_html_element_create_params *params,
+ struct dom_html_element *el)
{
dom_exception err;
- err = _dom_element_initialise(&doc->base, &el->base, name, namespace, prefix);
+ err = _dom_element_initialise(&params->doc->base, &el->base,
+ params->name, params->namespace, params->prefix);
if (err != DOM_NO_ERR)
return err;
diff --git a/src/html/html_element.h b/src/html/html_element.h
index e32b09e..2d42abc 100644
--- a/src/html/html_element.h
+++ b/src/html/html_element.h
@@ -24,13 +24,20 @@ struct dom_html_element {
/**< The base class */
};
-dom_exception _dom_html_element_create(struct dom_html_document *doc,
- dom_string *name, dom_string *namespace,
- dom_string *prefix, dom_html_element **result);
+struct dom_html_element_create_params {
+ struct dom_html_document *doc;
+ dom_string *name;
+ dom_string *namespace;
+ dom_string *prefix;
+};
+
+dom_exception _dom_html_element_create(
+ struct dom_html_element_create_params *params,
+ dom_html_element **result);
-dom_exception _dom_html_element_initialise(struct dom_html_document *doc,
- struct dom_html_element *el, dom_string *name,
- dom_string *namespace, dom_string *prefix);
+dom_exception _dom_html_element_initialise(
+ struct dom_html_element_create_params *params,
+ struct dom_html_element *el);
void _dom_html_element_finalise(struct dom_html_element *ele);
diff --git a/src/html/html_fieldset_element.c b/src/html/html_fieldset_element.c
index 15ea812..c6224bf 100644
--- a/src/html/html_fieldset_element.c
+++ b/src/html/html_fieldset_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_field_set_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_field_set_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_field_set_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_field_set_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_field_set_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_field_set_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_field_set_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_field_set_element object
*
- * \param doc The document object
- * \param ele The dom_html_field_set_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_field_set_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_field_set_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_field_set_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_field_set_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_FIELDSET],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_fieldset_element.h b/src/html/html_fieldset_element.h
index 8ae1d59..0560cf2 100644
--- a/src/html/html_fieldset_element.h
+++ b/src/html/html_fieldset_element.h
@@ -19,13 +19,13 @@ struct dom_html_field_set_element {
};
/* Create a dom_html_field_set_element object */
-dom_exception _dom_html_field_set_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_field_set_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_field_set_element **ele);
/* Initialise a dom_html_field_set_element object */
-dom_exception _dom_html_field_set_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_field_set_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_field_set_element *ele);
/* Finalise a dom_html_field_set_element object */
diff --git a/src/html/html_font_element.c b/src/html/html_font_element.c
index 0be7ee5..b77d7b6 100644
--- a/src/html/html_font_element.c
+++ b/src/html/html_font_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_font_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_font_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_font_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_font_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_font_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_font_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_font_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_font_element object
*
- * \param doc The document object
- * \param ele The dom_html_font_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_font_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_font_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_font_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_font_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_FONT],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_font_element.h b/src/html/html_font_element.h
index 42a2ec4..41f22ce 100644
--- a/src/html/html_font_element.h
+++ b/src/html/html_font_element.h
@@ -19,13 +19,13 @@ struct dom_html_font_element {
};
/* Create a dom_html_font_element object */
-dom_exception _dom_html_font_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_font_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_font_element **ele);
/* Initialise a dom_html_font_element object */
-dom_exception _dom_html_font_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_font_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_font_element *ele);
/* Finalise a dom_html_font_element object */
diff --git a/src/html/html_form_element.c b/src/html/html_form_element.c
index ee62c02..42eb96f 100644
--- a/src/html/html_form_element.c
+++ b/src/html/html_form_element.c
@@ -34,12 +34,12 @@ static bool _dom_is_form_control(struct dom_node_internal *node, void *ctx);
/**
* Create a dom_html_form_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_form_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_form_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_form_element **ele)
{
struct dom_node_internal *node;
@@ -53,25 +53,23 @@ dom_exception _dom_html_form_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_form_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_form_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_form_element object
*
- * \param doc The document object
- * \param ele The dom_html_form_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_form_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_form_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_form_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_form_element *ele)
{
dom_exception err;
- err = _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_FORM],
- namespace, prefix);
+ err = _dom_html_element_initialise(params, &ele->base);
return err;
}
diff --git a/src/html/html_form_element.h b/src/html/html_form_element.h
index 67a1080..bab3ef8 100644
--- a/src/html/html_form_element.h
+++ b/src/html/html_form_element.h
@@ -20,13 +20,13 @@ struct dom_html_form_element {
};
/* Create a dom_html_form_element object */
-dom_exception _dom_html_form_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_form_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_form_element **ele);
/* Initialise a dom_html_form_element object */
-dom_exception _dom_html_form_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_form_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_form_element *ele);
/* Finalise a dom_html_form_element object */
diff --git a/src/html/html_frame_element.c b/src/html/html_frame_element.c
index b8b0a74..4835667 100644
--- a/src/html/html_frame_element.c
+++ b/src/html/html_frame_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_frame_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_frame_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_frame_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_frame_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_frame_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_frame_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_frame_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_frame_element object
*
- * \param doc The document object
- * \param ele The dom_html_frame_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_frame_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_frame_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_frame_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_frame_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_FRAME],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_frame_element.h b/src/html/html_frame_element.h
index d83c9fc..0bef1dc 100644
--- a/src/html/html_frame_element.h
+++ b/src/html/html_frame_element.h
@@ -19,13 +19,13 @@ struct dom_html_frame_element {
};
/* Create a dom_html_frame_element object */
-dom_exception _dom_html_frame_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_frame_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_frame_element **ele);
/* Initialise a dom_html_frame_element object */
-dom_exception _dom_html_frame_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_frame_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_frame_element *ele);
/* Finalise a dom_html_frame_element object */
diff --git a/src/html/html_frameset_element.c b/src/html/html_frameset_element.c
index 9d9680b..4af3c19 100644
--- a/src/html/html_frameset_element.c
+++ b/src/html/html_frameset_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_frame_set_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_frame_set_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_frame_set_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_frame_set_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_frame_set_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_frame_set_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_frame_set_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_frame_set_element object
*
- * \param doc The document object
- * \param ele The dom_html_frame_set_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_frame_set_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_frame_set_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_frame_set_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_frame_set_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_FRAMESET],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_frameset_element.h b/src/html/html_frameset_element.h
index dd4037a..7d97018 100644
--- a/src/html/html_frameset_element.h
+++ b/src/html/html_frameset_element.h
@@ -19,13 +19,13 @@ struct dom_html_frame_set_element {
};
/* Create a dom_html_frame_set_element object */
-dom_exception _dom_html_frame_set_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_frame_set_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_frame_set_element **ele);
/* Initialise a dom_html_frame_set_element object */
-dom_exception _dom_html_frame_set_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_frame_set_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_frame_set_element *ele);
/* Finalise a dom_html_frame_set_element object */
diff --git a/src/html/html_head_element.c b/src/html/html_head_element.c
index 7082cef..85665f3 100644
--- a/src/html/html_head_element.c
+++ b/src/html/html_head_element.c
@@ -23,12 +23,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_head_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_head_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_head_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_head_element **ele)
{
struct dom_node_internal *node;
@@ -42,23 +42,21 @@ dom_exception _dom_html_head_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_head_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_head_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_head_element object
*
- * \param doc The document object
- * \param ele The dom_html_head_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_head_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_head_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_head_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_head_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_HEAD],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_head_element.h b/src/html/html_head_element.h
index deb2d6a..08659fd 100644
--- a/src/html/html_head_element.h
+++ b/src/html/html_head_element.h
@@ -18,13 +18,13 @@ struct dom_html_head_element {
};
/* Create a dom_html_head_element object */
-dom_exception _dom_html_head_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_head_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_head_element **ele);
/* Initialise a dom_html_head_element object */
-dom_exception _dom_html_head_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_head_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_head_element *ele);
/* Finalise a dom_html_head_element object */
diff --git a/src/html/html_heading_element.c b/src/html/html_heading_element.c
index ce298fb..b81c55d 100644
--- a/src/html/html_heading_element.c
+++ b/src/html/html_heading_element.c
@@ -27,13 +27,13 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_heading_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_heading_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace,
- dom_string *prefix, struct dom_html_heading_element **ele)
+dom_exception _dom_html_heading_element_create(
+ struct dom_html_element_create_params *params,
+ struct dom_html_heading_element **ele)
{
struct dom_node_internal *node;
@@ -46,24 +46,21 @@ dom_exception _dom_html_heading_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_heading_element_initialise(doc,
- tag_name, namespace,
- prefix, *ele);
+ return _dom_html_heading_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_heading_element object
*
- * \param doc The document object
- * \param ele The dom_html_heading_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_heading_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_heading_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace,
- dom_string *prefix, struct dom_html_heading_element *ele)
+dom_exception _dom_html_heading_element_initialise(
+ struct dom_html_element_create_params *params,
+ struct dom_html_heading_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- tag_name, namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_heading_element.h b/src/html/html_heading_element.h
index fdd1c25..543f9a9 100644
--- a/src/html/html_heading_element.h
+++ b/src/html/html_heading_element.h
@@ -19,14 +19,14 @@ struct dom_html_heading_element {
};
/* Create a dom_html_heading_element object */
-dom_exception _dom_html_heading_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace,
- dom_string *prefix, struct dom_html_heading_element **ele);
+dom_exception _dom_html_heading_element_create(
+ struct dom_html_element_create_params *params,
+ struct dom_html_heading_element **ele);
/* Initialise a dom_html_heading_element object */
-dom_exception _dom_html_heading_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace,
- dom_string *prefix, struct dom_html_heading_element *ele);
+dom_exception _dom_html_heading_element_initialise(
+ struct dom_html_element_create_params *params,
+ struct dom_html_heading_element *ele);
/* Finalise a dom_html_heading_element object */
void _dom_html_heading_element_finalise(struct dom_html_heading_element *ele);
diff --git a/src/html/html_hr_element.c b/src/html/html_hr_element.c
index 7ecab7a..6d96c84 100644
--- a/src/html/html_hr_element.c
+++ b/src/html/html_hr_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_hr_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_hr_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_hr_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_hr_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_hr_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_hr_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_hr_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_hr_element object
*
- * \param doc The document object
- * \param ele The dom_html_hr_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_hr_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_hr_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_hr_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_hr_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_HR],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_hr_element.h b/src/html/html_hr_element.h
index c3cf717..63b5bbc 100644
--- a/src/html/html_hr_element.h
+++ b/src/html/html_hr_element.h
@@ -19,13 +19,13 @@ struct dom_html_hr_element {
};
/* Create a dom_html_hr_element object */
-dom_exception _dom_html_hr_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_hr_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_hr_element **ele);
/* Initialise a dom_html_hr_element object */
-dom_exception _dom_html_hr_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_hr_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_hr_element *ele);
/* Finalise a dom_html_hr_element object */
diff --git a/src/html/html_html_element.c b/src/html/html_html_element.c
index 0a91efe..dccc8a5 100644
--- a/src/html/html_html_element.c
+++ b/src/html/html_html_element.c
@@ -23,12 +23,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_html_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_html_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_html_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_html_element **ele)
{
struct dom_node_internal *node;
@@ -42,23 +42,21 @@ dom_exception _dom_html_html_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_html_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_html_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_html_element object
*
- * \param doc The document object
- * \param ele The dom_html_html_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_html_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_html_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_html_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_html_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_HTML],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_html_element.h b/src/html/html_html_element.h
index 61eb626..78da8f1 100644
--- a/src/html/html_html_element.h
+++ b/src/html/html_html_element.h
@@ -18,13 +18,13 @@ struct dom_html_html_element {
};
/* Create a dom_html_html_element object */
-dom_exception _dom_html_html_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_html_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_html_element **ele);
/* Initialise a dom_html_html_element object */
-dom_exception _dom_html_html_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_html_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_html_element *ele);
/* Finalise a dom_html_html_element object */
diff --git a/src/html/html_iframe_element.c b/src/html/html_iframe_element.c
index 80b39a7..5ff5d26 100644
--- a/src/html/html_iframe_element.c
+++ b/src/html/html_iframe_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_iframe_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_iframe_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_iframe_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_iframe_element **ele)
{
struct dom_node_internal *node;
@@ -46,24 +46,21 @@ dom_exception _dom_html_iframe_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_iframe_element_initialise(doc,
- namespace, prefix, *ele);
+ return _dom_html_iframe_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_iframe_element object
*
- * \param doc The document object
- * \param ele The dom_html_iframe_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_iframe_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_iframe_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_iframe_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_iframe_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_IFRAME],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_iframe_element.h b/src/html/html_iframe_element.h
index 2375adf..07ed091 100644
--- a/src/html/html_iframe_element.h
+++ b/src/html/html_iframe_element.h
@@ -19,13 +19,13 @@ struct dom_html_iframe_element {
};
/* Create a dom_html_iframe_element object */
-dom_exception _dom_html_iframe_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_iframe_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_iframe_element **ele);
/* Initialise a dom_html_iframe_element object */
-dom_exception _dom_html_iframe_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_iframe_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_iframe_element *ele);
/* Finalise a dom_html_iframe_element object */
diff --git a/src/html/html_image_element.c b/src/html/html_image_element.c
index 4c5a5f3..db8b8b5 100644
--- a/src/html/html_image_element.c
+++ b/src/html/html_image_element.c
@@ -28,12 +28,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_image_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_image_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_image_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_image_element **ele)
{
struct dom_node_internal *node;
@@ -47,23 +47,21 @@ dom_exception _dom_html_image_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_image_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_image_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_image_element object
*
- * \param doc The document object
- * \param ele The dom_html_image_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_image_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_image_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_image_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_image_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_IMG],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_image_element.h b/src/html/html_image_element.h
index ac73a1b..d17c513 100644
--- a/src/html/html_image_element.h
+++ b/src/html/html_image_element.h
@@ -19,13 +19,13 @@ struct dom_html_image_element {
};
/* Create a dom_html_image_element object */
-dom_exception _dom_html_image_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_image_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_image_element **ele);
/* Initialise a dom_html_image_element object */
-dom_exception _dom_html_image_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_image_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_image_element *ele);
/* Finalise a dom_html_image_element object */
diff --git a/src/html/html_input_element.c b/src/html/html_input_element.c
index a90ec40..2dc0dc3 100644
--- a/src/html/html_input_element.c
+++ b/src/html/html_input_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_input_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_input_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_input_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_input_element **ele)
{
struct dom_node_internal *node;
@@ -46,18 +46,18 @@ dom_exception _dom_html_input_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_input_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_input_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_input_element object
*
- * \param doc The document object
- * \param ele The dom_html_input_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_input_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_input_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_input_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_input_element *ele)
{
ele->form = NULL;
@@ -68,9 +68,7 @@ dom_exception _dom_html_input_element_initialise(struct dom_html_document *doc,
ele->checked = false;
ele->checked_set = false;
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_INPUT],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_input_element.h b/src/html/html_input_element.h
index b818b2e..b445888 100644
--- a/src/html/html_input_element.h
+++ b/src/html/html_input_element.h
@@ -26,13 +26,13 @@ struct dom_html_input_element {
};
/* Create a dom_html_input_element object */
-dom_exception _dom_html_input_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_input_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_input_element **ele);
/* Initialise a dom_html_input_element object */
-dom_exception _dom_html_input_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_input_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_input_element *ele);
/* Finalise a dom_html_input_element object */
diff --git a/src/html/html_isindex_element.c b/src/html/html_isindex_element.c
index 51611b3..82c7296 100644
--- a/src/html/html_isindex_element.c
+++ b/src/html/html_isindex_element.c
@@ -26,12 +26,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_isindex_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_isindex_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_isindex_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_isindex_element **ele)
{
struct dom_node_internal *node;
@@ -44,23 +44,21 @@ dom_exception _dom_html_isindex_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_isindex_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_isindex_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_isindex_element object
*
- * \param doc The document object
- * \param ele The dom_html_isindex_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_isindex_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_isindex_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_isindex_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_isindex_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_ISINDEX],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_isindex_element.h b/src/html/html_isindex_element.h
index a39170b..697e2eb 100644
--- a/src/html/html_isindex_element.h
+++ b/src/html/html_isindex_element.h
@@ -18,13 +18,13 @@ struct dom_html_isindex_element {
};
/* Create a dom_html_isindex_element object */
-dom_exception _dom_html_isindex_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_isindex_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_isindex_element **ele);
/* Initialise a dom_html_isindex_element object */
-dom_exception _dom_html_isindex_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_isindex_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_isindex_element *ele);
/* Finalise a dom_html_isindex_element object */
diff --git a/src/html/html_label_element.c b/src/html/html_label_element.c
index 2303892..e5730a2 100644
--- a/src/html/html_label_element.c
+++ b/src/html/html_label_element.c
@@ -25,12 +25,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_label_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_label_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_label_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_label_element **ele)
{
struct dom_node_internal *node;
@@ -44,23 +44,21 @@ dom_exception _dom_html_label_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_label_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_label_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_label_element object
*
- * \param doc The document object
- * \param ele The dom_html_label_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_label_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_label_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_label_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_label_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_LABEL],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_label_element.h b/src/html/html_label_element.h
index 36c817e..4eb042c 100644
--- a/src/html/html_label_element.h
+++ b/src/html/html_label_element.h
@@ -19,13 +19,13 @@ struct dom_html_label_element {
};
/* Create a dom_html_label_element object */
-dom_exception _dom_html_label_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_label_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_label_element **ele);
/* Initialise a dom_html_label_element object */
-dom_exception _dom_html_label_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_label_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_label_element *ele);
/* Finalise a dom_html_label_element object */
diff --git a/src/html/html_legend_element.c b/src/html/html_legend_element.c
index 1f297e2..842916f 100644
--- a/src/html/html_legend_element.c
+++ b/src/html/html_legend_element.c
@@ -29,12 +29,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_legend_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_legend_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_legend_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_legend_element **ele)
{
struct dom_node_internal *node;
@@ -48,23 +48,21 @@ dom_exception _dom_html_legend_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_legend_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_legend_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_legend_element object
*
- * \param doc The document object
- * \param ele The dom_html_legend_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_legend_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_legend_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_legend_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_legend_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_LEGEND],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_legend_element.h b/src/html/html_legend_element.h
index a656ae4..50b9b51 100644
--- a/src/html/html_legend_element.h
+++ b/src/html/html_legend_element.h
@@ -19,13 +19,13 @@ struct dom_html_legend_element {
};
/* Create a dom_html_legend_element object */
-dom_exception _dom_html_legend_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_legend_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_legend_element **ele);
/* Initialise a dom_html_legend_element object */
-dom_exception _dom_html_legend_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_legend_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_legend_element *ele);
/* Finalise a dom_html_legend_element object */
diff --git a/src/html/html_li_element.c b/src/html/html_li_element.c
index f2c560e..3af8fea 100644
--- a/src/html/html_li_element.c
+++ b/src/html/html_li_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_li_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_li_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *lifix,
+dom_exception _dom_html_li_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_li_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_li_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_li_element_initialise(doc, namespace, lifix, *ele);
+ return _dom_html_li_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_li_element object
*
- * \param doc The document object
- * \param ele The dom_html_li_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_li_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_li_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *lifix,
+dom_exception _dom_html_li_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_li_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_LI],
- namespace, lifix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_li_element.h b/src/html/html_li_element.h
index c50a2db..74dd5af 100644
--- a/src/html/html_li_element.h
+++ b/src/html/html_li_element.h
@@ -19,13 +19,13 @@ struct dom_html_li_element {
};
/* Create a dom_html_li_element object */
-dom_exception _dom_html_li_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *lifix,
+dom_exception _dom_html_li_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_li_element **ele);
/* Initialise a dom_html_li_element object */
-dom_exception _dom_html_li_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *lifix,
+dom_exception _dom_html_li_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_li_element *ele);
/* Finalise a dom_html_li_element object */
diff --git a/src/html/html_link_element.c b/src/html/html_link_element.c
index 8022a7b..10a2e7a 100644
--- a/src/html/html_link_element.c
+++ b/src/html/html_link_element.c
@@ -25,12 +25,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_link_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_link_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_link_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_link_element **ele)
{
struct dom_node_internal *node;
@@ -44,23 +44,21 @@ dom_exception _dom_html_link_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_link_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_link_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_link_element object
*
- * \param doc The document object
- * \param ele The dom_html_link_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_link_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_link_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_link_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_link_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_LINK],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_link_element.h b/src/html/html_link_element.h
index 960dcdc..d75b0ff 100644
--- a/src/html/html_link_element.h
+++ b/src/html/html_link_element.h
@@ -18,13 +18,13 @@ struct dom_html_link_element {
};
/* Create a dom_html_link_element object */
-dom_exception _dom_html_link_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_link_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_link_element **ele);
/* Initialise a dom_html_link_element object */
-dom_exception _dom_html_link_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_link_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_link_element *ele);
/* Finalise a dom_html_link_element object */
diff --git a/src/html/html_map_element.c b/src/html/html_map_element.c
index d20c3ce..980f002 100644
--- a/src/html/html_map_element.c
+++ b/src/html/html_map_element.c
@@ -29,12 +29,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_map_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_map_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_map_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_map_element **ele)
{
struct dom_node_internal *node;
@@ -48,23 +48,21 @@ dom_exception _dom_html_map_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_map_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_map_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_map_element object
*
- * \param doc The document object
- * \param ele The dom_html_map_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_map_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_map_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_map_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_map_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_MAP],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_map_element.h b/src/html/html_map_element.h
index 0230808..ede8a71 100644
--- a/src/html/html_map_element.h
+++ b/src/html/html_map_element.h
@@ -19,13 +19,13 @@ struct dom_html_map_element {
};
/* Create a dom_html_map_element object */
-dom_exception _dom_html_map_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_map_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_map_element **ele);
/* Initialise a dom_html_map_element object */
-dom_exception _dom_html_map_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_map_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_map_element *ele);
/* Finalise a dom_html_map_element object */
diff --git a/src/html/html_menu_element.c b/src/html/html_menu_element.c
index aadd823..1226c70 100644
--- a/src/html/html_menu_element.c
+++ b/src/html/html_menu_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_menu_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_menu_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_menu_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_menu_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_menu_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_menu_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_menu_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_menu_element object
*
- * \param doc The document object
- * \param ele The dom_html_menu_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_menu_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_menu_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_menu_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_menu_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_MENU],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_menu_element.h b/src/html/html_menu_element.h
index cb84e3d..f206315 100644
--- a/src/html/html_menu_element.h
+++ b/src/html/html_menu_element.h
@@ -19,13 +19,13 @@ struct dom_html_menu_element {
};
/* Create a dom_html_menu_element object */
-dom_exception _dom_html_menu_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_menu_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_menu_element **ele);
/* Initialise a dom_html_menu_element object */
-dom_exception _dom_html_menu_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_menu_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_menu_element *ele);
/* Finalise a dom_html_menu_element object */
diff --git a/src/html/html_meta_element.c b/src/html/html_meta_element.c
index 05e6a4f..56eaa34 100644
--- a/src/html/html_meta_element.c
+++ b/src/html/html_meta_element.c
@@ -23,12 +23,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_meta_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_meta_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_meta_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_meta_element **ele)
{
struct dom_node_internal *node;
@@ -42,23 +42,21 @@ dom_exception _dom_html_meta_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_meta_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_meta_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_meta_element object
*
- * \param doc The document object
- * \param ele The dom_html_meta_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_meta_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_meta_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_meta_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_meta_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_META],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_meta_element.h b/src/html/html_meta_element.h
index d4a1076..d92e5fd 100644
--- a/src/html/html_meta_element.h
+++ b/src/html/html_meta_element.h
@@ -18,13 +18,13 @@ struct dom_html_meta_element {
};
/* Create a dom_html_meta_element object */
-dom_exception _dom_html_meta_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_meta_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_meta_element **ele);
/* Initialise a dom_html_meta_element object */
-dom_exception _dom_html_meta_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_meta_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_meta_element *ele);
/* Finalise a dom_html_meta_element object */
diff --git a/src/html/html_mod_element.c b/src/html/html_mod_element.c
index 20f80d1..d952a1b 100644
--- a/src/html/html_mod_element.c
+++ b/src/html/html_mod_element.c
@@ -27,13 +27,13 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_mod_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_mod_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace,
- dom_string *prefix, struct dom_html_mod_element **ele)
+dom_exception _dom_html_mod_element_create(
+ struct dom_html_element_create_params *params,
+ struct dom_html_mod_element **ele)
{
struct dom_node_internal *node;
@@ -46,22 +46,21 @@ dom_exception _dom_html_mod_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_mod_element_initialise(doc, tag_name, namespace, prefix, *ele);
+ return _dom_html_mod_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_mod_element object
*
- * \param doc The document object
- * \param ele The dom_html_mod_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_mod_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_mod_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace,
- dom_string *prefix, struct dom_html_mod_element *ele)
+dom_exception _dom_html_mod_element_initialise(
+ struct dom_html_element_create_params *params,
+ struct dom_html_mod_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- tag_name, namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_mod_element.h b/src/html/html_mod_element.h
index 9df07d5..0e4c49e 100644
--- a/src/html/html_mod_element.h
+++ b/src/html/html_mod_element.h
@@ -19,13 +19,13 @@ struct dom_html_mod_element {
};
/* Create a dom_html_mod_element object */
-dom_exception _dom_html_mod_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace,
- dom_string *prefix, struct dom_html_mod_element **ele);
+dom_exception _dom_html_mod_element_create(
+ struct dom_html_element_create_params *params,
+ struct dom_html_mod_element **ele);
/* Initialise a dom_html_mod_element object */
-dom_exception _dom_html_mod_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_mod_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_mod_element *ele);
/* Finalise a dom_html_mod_element object */
diff --git a/src/html/html_object_element.c b/src/html/html_object_element.c
index 27d3f5a..914510d 100644
--- a/src/html/html_object_element.c
+++ b/src/html/html_object_element.c
@@ -30,12 +30,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_object_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_object_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_object_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_object_element **ele)
{
struct dom_node_internal *node;
@@ -49,23 +49,21 @@ dom_exception _dom_html_object_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_object_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_object_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_object_element object
*
- * \param doc The document object
- * \param ele The dom_html_object_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_object_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_object_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_object_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_object_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_OBJECT],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_object_element.h b/src/html/html_object_element.h
index 5170f2c..b569c9d 100644
--- a/src/html/html_object_element.h
+++ b/src/html/html_object_element.h
@@ -19,13 +19,13 @@ struct dom_html_object_element {
};
/* Create a dom_html_object_element object */
-dom_exception _dom_html_object_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_object_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_object_element **ele);
/* Initialise a dom_html_object_element object */
-dom_exception _dom_html_object_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_object_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_object_element *ele);
/* Finalise a dom_html_object_element object */
diff --git a/src/html/html_olist_element.c b/src/html/html_olist_element.c
index 6595ea5..411cc98 100644
--- a/src/html/html_olist_element.c
+++ b/src/html/html_olist_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_olist_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_olist_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *o_listfix,
+dom_exception _dom_html_olist_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_olist_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_olist_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_olist_element_initialise(doc, namespace, o_listfix, *ele);
+ return _dom_html_olist_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_olist_element object
*
- * \param doc The document object
- * \param ele The dom_html_olist_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_olist_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_olist_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *o_listfix,
+dom_exception _dom_html_olist_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_olist_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_OL],
- namespace, o_listfix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_olist_element.h b/src/html/html_olist_element.h
index 70601e8..b06b277 100644
--- a/src/html/html_olist_element.h
+++ b/src/html/html_olist_element.h
@@ -19,13 +19,13 @@ struct dom_html_olist_element {
};
/* Create a dom_html_olist_element object */
-dom_exception _dom_html_olist_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *o_listfix,
+dom_exception _dom_html_olist_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_olist_element **ele);
/* Initialise a dom_html_olist_element object */
-dom_exception _dom_html_olist_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *o_listfix,
+dom_exception _dom_html_olist_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_olist_element *ele);
/* Finalise a dom_html_olist_element object */
diff --git a/src/html/html_opt_group_element.c b/src/html/html_opt_group_element.c
index cdee6e7..0181111 100644
--- a/src/html/html_opt_group_element.c
+++ b/src/html/html_opt_group_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_opt_group_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_opt_group_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_opt_group_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_opt_group_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_opt_group_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_opt_group_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_opt_group_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_opt_group_element object
*
- * \param doc The document object
- * \param ele The dom_html_opt_group_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_opt_group_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_opt_group_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_opt_group_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_opt_group_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_OPTGROUP],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_opt_group_element.h b/src/html/html_opt_group_element.h
index c7f8c13..94dcf9e 100644
--- a/src/html/html_opt_group_element.h
+++ b/src/html/html_opt_group_element.h
@@ -18,13 +18,13 @@ struct dom_html_opt_group_element {
};
/* Create a dom_html_opt_group_element object */
-dom_exception _dom_html_opt_group_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_opt_group_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_opt_group_element **ele);
/* Initialise a dom_html_opt_group_element object */
-dom_exception _dom_html_opt_group_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_opt_group_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_opt_group_element *ele);
/* Finalise a dom_html_opt_group_element object */
diff --git a/src/html/html_option_element.c b/src/html/html_option_element.c
index e352562..a4dec3c 100644
--- a/src/html/html_option_element.c
+++ b/src/html/html_option_element.c
@@ -29,12 +29,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_option_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_option_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_option_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_option_element **ele)
{
struct dom_node_internal *node;
@@ -48,26 +48,24 @@ dom_exception _dom_html_option_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_option_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_option_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_option_element object
*
- * \param doc The document object
- * \param ele The dom_html_option_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_option_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_option_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_option_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_option_element *ele)
{
ele->default_selected = false;
ele->default_selected_set = false;
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_OPTION],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_option_element.h b/src/html/html_option_element.h
index bc8ff6f..b1f8b64 100644
--- a/src/html/html_option_element.h
+++ b/src/html/html_option_element.h
@@ -20,13 +20,13 @@ struct dom_html_option_element {
};
/* Create a dom_html_option_element object */
-dom_exception _dom_html_option_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_option_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_option_element **ele);
/* Initialise a dom_html_option_element object */
-dom_exception _dom_html_option_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_option_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_option_element *ele);
/* Finalise a dom_html_option_element object */
diff --git a/src/html/html_paragraph_element.c b/src/html/html_paragraph_element.c
index 63c50b2..bb8c1b3 100644
--- a/src/html/html_paragraph_element.c
+++ b/src/html/html_paragraph_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_paragraph_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_paragraph_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_paragraph_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_paragraph_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_paragraph_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_paragraph_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_paragraph_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_paragraph_element object
*
- * \param doc The document object
- * \param ele The dom_html_paragraph_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_paragraph_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_paragraph_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_paragraph_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_paragraph_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_P],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_paragraph_element.h b/src/html/html_paragraph_element.h
index b6627dd..7495a76 100644
--- a/src/html/html_paragraph_element.h
+++ b/src/html/html_paragraph_element.h
@@ -19,13 +19,13 @@ struct dom_html_paragraph_element {
};
/* Create a dom_html_paragraph_element object */
-dom_exception _dom_html_paragraph_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_paragraph_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_paragraph_element **ele);
/* Initialise a dom_html_paragraph_element object */
-dom_exception _dom_html_paragraph_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_paragraph_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_paragraph_element *ele);
/* Finalise a dom_html_paragraph_element object */
diff --git a/src/html/html_param_element.c b/src/html/html_param_element.c
index a858717..4c7ee89 100644
--- a/src/html/html_param_element.c
+++ b/src/html/html_param_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_param_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_param_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_param_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_param_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_param_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_param_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_param_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_param_element object
*
- * \param doc The document object
- * \param ele The dom_html_param_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_param_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_param_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_param_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_param_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_PARAM],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_param_element.h b/src/html/html_param_element.h
index 2cd8150..f56a6a5 100644
--- a/src/html/html_param_element.h
+++ b/src/html/html_param_element.h
@@ -19,13 +19,13 @@ struct dom_html_param_element {
};
/* Create a dom_html_param_element object */
-dom_exception _dom_html_param_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_param_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_param_element **ele);
/* Initialise a dom_html_param_element object */
-dom_exception _dom_html_param_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_param_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_param_element *ele);
/* Finalise a dom_html_param_element object */
diff --git a/src/html/html_pre_element.c b/src/html/html_pre_element.c
index c5f7ced..502e4d8 100644
--- a/src/html/html_pre_element.c
+++ b/src/html/html_pre_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_pre_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_pre_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_pre_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_pre_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_pre_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_pre_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_pre_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_pre_element object
*
- * \param doc The document object
- * \param ele The dom_html_pre_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_pre_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_pre_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_pre_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_pre_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_PRE],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_pre_element.h b/src/html/html_pre_element.h
index 75d8df8..d9dc6d8 100644
--- a/src/html/html_pre_element.h
+++ b/src/html/html_pre_element.h
@@ -19,13 +19,13 @@ struct dom_html_pre_element {
};
/* Create a dom_html_pre_element object */
-dom_exception _dom_html_pre_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_pre_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_pre_element **ele);
/* Initialise a dom_html_pre_element object */
-dom_exception _dom_html_pre_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_pre_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_pre_element *ele);
/* Finalise a dom_html_pre_element object */
diff --git a/src/html/html_quote_element.c b/src/html/html_quote_element.c
index 17961c0..f2263c3 100644
--- a/src/html/html_quote_element.c
+++ b/src/html/html_quote_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_quote_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_quote_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_quote_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_quote_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_quote_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_quote_element_initialise(doc, tag_name,
- namespace, prefix, *ele);
+ return _dom_html_quote_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_quote_element object
*
- * \param doc The document object
- * \param ele The dom_html_quote_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_quote_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_quote_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_quote_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_quote_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- tag_name, namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_quote_element.h b/src/html/html_quote_element.h
index ee79ee1..f62f2ec 100644
--- a/src/html/html_quote_element.h
+++ b/src/html/html_quote_element.h
@@ -19,13 +19,13 @@ struct dom_html_quote_element {
};
/* Create a dom_html_quote_element object */
-dom_exception _dom_html_quote_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_quote_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_quote_element **ele);
/* Initialise a dom_html_quote_element object */
-dom_exception _dom_html_quote_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_quote_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_quote_element *ele);
/* Finalise a dom_html_quote_element object */
diff --git a/src/html/html_script_element.c b/src/html/html_script_element.c
index 3bdf8cd..534c390 100644
--- a/src/html/html_script_element.c
+++ b/src/html/html_script_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_script_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_script_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_script_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_script_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_script_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_script_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_script_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_script_element object
*
- * \param doc The document object
- * \param ele The dom_html_script_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_script_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_script_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_script_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_script_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_SCRIPT],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_script_element.h b/src/html/html_script_element.h
index dcb7b72..c15e445 100644
--- a/src/html/html_script_element.h
+++ b/src/html/html_script_element.h
@@ -19,13 +19,13 @@ struct dom_html_script_element {
};
/* Create a dom_html_script_element object */
-dom_exception _dom_html_script_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_script_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_script_element **ele);
/* Initialise a dom_html_script_element object */
-dom_exception _dom_html_script_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_script_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_script_element *ele);
/* Finalise a dom_html_script_element object */
diff --git a/src/html/html_select_element.c b/src/html/html_select_element.c
index 438a365..fe06e5d 100644
--- a/src/html/html_select_element.c
+++ b/src/html/html_select_element.c
@@ -29,12 +29,12 @@ static bool is_option(struct dom_node_internal *node, void *ctx);
/**
* Create a dom_html_select_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_select_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_select_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_select_element **ele)
{
struct dom_node_internal *node;
@@ -48,25 +48,23 @@ dom_exception _dom_html_select_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_select_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_select_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_select_element object
*
- * \param doc The document object
- * \param ele The dom_html_select_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_select_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_select_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_select_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_select_element *ele)
{
ele->form = NULL;
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_SELECT],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_select_element.h b/src/html/html_select_element.h
index b0eaa91..d7dc0a4 100644
--- a/src/html/html_select_element.h
+++ b/src/html/html_select_element.h
@@ -23,13 +23,13 @@ struct dom_html_select_element {
};
/* Create a dom_html_select_element object */
-dom_exception _dom_html_select_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_select_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_select_element **ele);
/* Initialise a dom_html_select_element object */
-dom_exception _dom_html_select_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_select_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_select_element *ele);
/* Finalise a dom_html_select_element object */
diff --git a/src/html/html_style_element.c b/src/html/html_style_element.c
index c97955e..7434096 100644
--- a/src/html/html_style_element.c
+++ b/src/html/html_style_element.c
@@ -23,11 +23,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_style_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_style_element_create(struct dom_html_document *doc,
+dom_exception _dom_html_style_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_style_element **ele)
{
struct dom_node_internal *node;
@@ -41,31 +42,21 @@ dom_exception _dom_html_style_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_style_element_initialise(doc, *ele);
+ return _dom_html_style_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_style_element object
*
- * \param doc The document object
- * \param ele The dom_html_style_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_style_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_style_element_initialise(struct dom_html_document *doc,
+dom_exception _dom_html_style_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_style_element *ele)
{
- dom_string *name = NULL;
- dom_exception err;
-
- err = dom_string_create((const uint8_t *) "STYLE", SLEN("STYLE"),
- &name);
- if (err != DOM_NO_ERR)
- return err;
-
- err = _dom_html_element_initialise(doc, &ele->base, name, NULL, NULL);
- dom_string_unref(name);
-
- return err;
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_style_element.h b/src/html/html_style_element.h
index e7a47e5..e21b9cf 100644
--- a/src/html/html_style_element.h
+++ b/src/html/html_style_element.h
@@ -18,11 +18,13 @@ struct dom_html_style_element {
};
/* Create a dom_html_style_element object */
-dom_exception _dom_html_style_element_create(struct dom_html_document *doc,
+dom_exception _dom_html_style_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_style_element **ele);
/* Initialise a dom_html_style_element object */
-dom_exception _dom_html_style_element_initialise(struct dom_html_document *doc,
+dom_exception _dom_html_style_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_style_element *ele);
/* Finalise a dom_html_style_element object */
diff --git a/src/html/html_table_element.c b/src/html/html_table_element.c
index cdf1714..2139272 100644
--- a/src/html/html_table_element.c
+++ b/src/html/html_table_element.c
@@ -31,12 +31,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_table_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_element **ele)
{
struct dom_node_internal *node;
@@ -50,23 +50,21 @@ dom_exception _dom_html_table_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_table_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_table_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_table_element object
*
- * \param doc The document object
- * \param ele The dom_html_table_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_table_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_TABLE],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
@@ -432,13 +430,18 @@ dom_exception dom_html_table_element_create_caption(
return exp;
}
if((*caption) == NULL) {
- dom_html_document *doc = (dom_html_document *)
- ((dom_node_internal *) element)->owner;
dom_node *new_caption;
+ dom_html_document *doc = (dom_html_document *)
+ ((dom_node_internal *) element)->owner;
- exp = _dom_html_table_caption_element_create(doc,
- ((dom_node_internal *)element)->namespace,
- ((dom_node_internal *)element)->prefix,
+ struct dom_html_element_create_params params = {
+ .doc = doc,
+ .name = doc->elements[DOM_HTML_ELEMENT_TYPE_CAPTION],
+ .namespace = ((dom_node_internal *)element)->namespace,
+ .prefix = ((dom_node_internal *)element)->prefix
+ };
+
+ exp = _dom_html_table_caption_element_create(&params,
(dom_html_table_caption_element **)caption);
if(exp != DOM_NO_ERR) {
dom_node_unref(*caption);
@@ -499,14 +502,18 @@ dom_exception dom_html_table_element_create_t_foot(
return exp;
if ((*t_foot) == NULL) {
- dom_html_document *doc = (dom_html_document *)
- ((dom_node_internal *) element)->owner;
dom_node *new_t_foot;
+ dom_html_document *doc = (dom_html_document *)
+ ((dom_node_internal *) element)->owner;
- exp = _dom_html_table_section_element_create(doc,
- doc->elements[DOM_HTML_ELEMENT_TYPE_TFOOT],
- ((dom_node_internal *)element)->namespace,
- ((dom_node_internal *)element)->prefix,
+ struct dom_html_element_create_params params = {
+ .doc = doc,
+ .name = doc->elements[DOM_HTML_ELEMENT_TYPE_TFOOT],
+ .namespace = ((dom_node_internal *)element)->namespace,
+ .prefix = ((dom_node_internal *)element)->prefix
+ };
+
+ exp = _dom_html_table_section_element_create(&params,
(dom_html_table_section_element **)t_foot);
if (exp != DOM_NO_ERR) {
dom_node_unref(*t_foot);
@@ -572,14 +579,18 @@ dom_exception dom_html_table_element_create_t_head(
}
if((*t_head) == NULL) {
dom_exception exp;
- dom_html_document *doc = (dom_html_document *)
- ((dom_node_internal *) element)->owner;
dom_node *new_t_head;
+ dom_html_document *doc = (dom_html_document *)
+ ((dom_node_internal *) element)->owner;
- exp = _dom_html_table_section_element_create(doc,
- doc->elements[DOM_HTML_ELEMENT_TYPE_THEAD],
- ((dom_node_internal *)element)->namespace,
- ((dom_node_internal *)element)->prefix,
+ struct dom_html_element_create_params params = {
+ .doc = doc,
+ .name = doc->elements[DOM_HTML_ELEMENT_TYPE_THEAD],
+ .namespace = ((dom_node_internal *)element)->namespace,
+ .prefix = ((dom_node_internal *)element)->prefix
+ };
+
+ exp = _dom_html_table_section_element_create(&params,
(dom_html_table_section_element **)t_head);
if(exp != DOM_NO_ERR) {
dom_node_unref(*t_head);
@@ -650,15 +661,18 @@ dom_exception dom_html_table_element_create_t_body(
return exp;
}
if(len == 0) {
- dom_html_document *doc = (dom_html_document *)
- ((dom_node_internal *) element)->owner;
dom_node *new_t_body;
+ dom_html_document *doc = (dom_html_document *)
+ ((dom_node_internal *) element)->owner;
- exp = _dom_html_table_section_element_create(doc,
- doc->elements[DOM_HTML_ELEMENT_TYPE_TBODY],
- ((dom_node_internal *)element)->namespace,
- ((dom_node_internal *)element)->prefix,
- t_body);
+ struct dom_html_element_create_params params = {
+ .doc = doc,
+ .name = doc->elements[DOM_HTML_ELEMENT_TYPE_TBODY],
+ .namespace = ((dom_node_internal *)element)->namespace,
+ .prefix = ((dom_node_internal *)element)->prefix
+ };
+
+ exp = _dom_html_table_section_element_create(&params, t_body);
if(exp != DOM_NO_ERR) {
dom_node_unref(*t_body);
dom_html_collection_unref(t_bodies);
@@ -693,9 +707,16 @@ dom_exception dom_html_table_element_insert_row(
dom_exception exp;
dom_html_collection* rows;
uint32_t len;
- dom_html_document *doc = (dom_html_document *)
+ dom_html_document *doc = (dom_html_document *)
((dom_node_internal *) element)->owner;
+ struct dom_html_element_create_params params = {
+ .doc = doc,
+ .name = doc->elements[DOM_HTML_ELEMENT_TYPE_TR],
+ .namespace = ((dom_node_internal *)element)->namespace,
+ .prefix = ((dom_node_internal *)element)->prefix
+ };
+
exp = dom_html_table_element_get_rows(element,
&rows);
if(exp != DOM_NO_ERR) {
@@ -708,9 +729,7 @@ dom_exception dom_html_table_element_insert_row(
dom_html_collection_unref(rows);
return exp;
}
- exp = _dom_html_table_row_element_create(doc,
- ((dom_node_internal *)element)->namespace,
- ((dom_node_internal *)element)->prefix,
+ exp = _dom_html_table_row_element_create(&params,
(dom_html_table_row_element **)row);
if(exp != DOM_NO_ERR) {
dom_node_unref(*row);
diff --git a/src/html/html_table_element.h b/src/html/html_table_element.h
index 955ab88..4e4747c 100644
--- a/src/html/html_table_element.h
+++ b/src/html/html_table_element.h
@@ -18,13 +18,13 @@ struct dom_html_table_element {
};
/* Create a dom_html_table_element object */
-dom_exception _dom_html_table_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_element **ele);
/* Initialise a dom_html_table_element object */
-dom_exception _dom_html_table_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_element *ele);
/* Finalise a dom_html_table_element object */
diff --git a/src/html/html_tablecaption_element.c b/src/html/html_tablecaption_element.c
index ddb2d5c..5a4b1b1 100644
--- a/src/html/html_tablecaption_element.c
+++ b/src/html/html_tablecaption_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_table_caption_element object
*
- * \table_caption doc The document object
- * \table_caption ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_caption_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_caption_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_caption_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_table_caption_element_create(struct dom_html_document *d
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_table_caption_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_table_caption_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_table_caption_element object
*
- * \table_caption doc The document object
- * \table_caption ele The dom_html_table_caption_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_table_caption_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_caption_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_caption_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_caption_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_CAPTION],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_tablecaption_element.h b/src/html/html_tablecaption_element.h
index b1cfd3b..971c55c 100644
--- a/src/html/html_tablecaption_element.h
+++ b/src/html/html_tablecaption_element.h
@@ -19,13 +19,13 @@ struct dom_html_table_caption_element {
};
/* Create a dom_html_table_caption_element object */
-dom_exception _dom_html_table_caption_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_caption_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_caption_element **ele);
/* Initialise a dom_html_table_caption_element object */
-dom_exception _dom_html_table_caption_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_caption_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_caption_element *ele);
/* Finalise a dom_html_table_caption_element object */
diff --git a/src/html/html_tablecell_element.c b/src/html/html_tablecell_element.c
index c881440..c106b4f 100644
--- a/src/html/html_tablecell_element.c
+++ b/src/html/html_tablecell_element.c
@@ -28,12 +28,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_table_cell_element table_cell
*
- * \param doc The document table_cell
- * \param ele The returned element table_cell
+ * \param params The html element creation parameters
+ * \param ele The returned element table_cell
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_cell_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_cell_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_cell_element **ele)
{
struct dom_node_internal *node;
@@ -47,24 +47,21 @@ dom_exception _dom_html_table_cell_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_table_cell_element_initialise(doc, tag_name,
- namespace, prefix, *ele);
+ return _dom_html_table_cell_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_table_cell_element table_cell
*
- * \param doc The document table_cell
- * \param ele The dom_html_table_cell_element table_cell
+ * \param params The html element creation parameters
+ * \param ele The dom_html_table_cell_element table_cell
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_cell_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_cell_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_cell_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- tag_name,
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_tablecell_element.h b/src/html/html_tablecell_element.h
index 5a48439..5f40373 100644
--- a/src/html/html_tablecell_element.h
+++ b/src/html/html_tablecell_element.h
@@ -19,13 +19,13 @@ struct dom_html_table_cell_element {
};
/* Create a dom_html_table_cell_element object */
-dom_exception _dom_html_table_cell_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_cell_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_cell_element **ele);
/* Initialise a dom_html_table_cell_element object */
-dom_exception _dom_html_table_cell_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_cell_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_cell_element *ele);
/* Finalise a dom_html_table_cell_element object */
diff --git a/src/html/html_tablecol_element.c b/src/html/html_tablecol_element.c
index d3d985b..5df6d5b 100644
--- a/src/html/html_tablecol_element.c
+++ b/src/html/html_tablecol_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_table_col_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_col_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_col_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_col_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_table_col_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_table_col_element_initialise(doc, tag_name,
- namespace, prefix, *ele);
+ return _dom_html_table_col_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_table_col_element object
*
- * \param doc The document object
- * \param ele The dom_html_table_col_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_table_col_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_col_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_col_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_col_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- tag_name, namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_tablecol_element.h b/src/html/html_tablecol_element.h
index a8e6fa7..adfca2f 100644
--- a/src/html/html_tablecol_element.h
+++ b/src/html/html_tablecol_element.h
@@ -19,13 +19,13 @@ struct dom_html_table_col_element {
};
/* Create a dom_html_table_col_element object */
-dom_exception _dom_html_table_col_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_col_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_col_element **ele);
/* Initialise a dom_html_table_col_element object */
-dom_exception _dom_html_table_col_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_col_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_col_element *ele);
/* Finalise a dom_html_table_col_element object */
diff --git a/src/html/html_tablerow_element.c b/src/html/html_tablerow_element.c
index 0a0fb1e..8773452 100644
--- a/src/html/html_tablerow_element.c
+++ b/src/html/html_tablerow_element.c
@@ -30,12 +30,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_table_row_element table_row
*
- * \param doc The document table_row
- * \param ele The returned element table_row
+ * \param params The html element creation parameters
+ * \param ele The returned element table_row
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_row_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_row_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_row_element **ele)
{
struct dom_node_internal *node;
@@ -49,24 +49,21 @@ dom_exception _dom_html_table_row_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_table_row_element_initialise(doc,
- namespace, prefix, *ele);
+ return _dom_html_table_row_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_table_row_element table_row
*
- * \param doc The document table_row
- * \param ele The dom_html_table_row_element table_row
+ * \param params The html element creation parameters
+ * \param ele The dom_html_table_row_element table_row
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_row_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_row_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_row_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_TR],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
@@ -335,11 +332,15 @@ dom_exception dom_html_table_row_element_insert_cell(
dom_html_collection *cells; /*< The collection of cells in input table_row_element*/
uint32_t len; /*< The size of the cell collection */
dom_exception exp; /*< Variable for getting the exceptions*/
- exp = _dom_html_element_create(doc,
- doc->elements[DOM_HTML_ELEMENT_TYPE_TD],
- ((dom_node_internal *)element)->namespace,
- ((dom_node_internal *)element)->prefix,
- cell);
+
+ struct dom_html_element_create_params params = {
+ .doc = doc,
+ .name = doc->elements[DOM_HTML_ELEMENT_TYPE_TD],
+ .namespace = ((dom_node_internal *)element)->namespace,
+ .prefix = ((dom_node_internal *)element)->prefix
+ };
+
+ exp = _dom_html_element_create(&params, cell);
if (exp != DOM_NO_ERR)
return exp;
diff --git a/src/html/html_tablerow_element.h b/src/html/html_tablerow_element.h
index 2401790..ee081ba 100644
--- a/src/html/html_tablerow_element.h
+++ b/src/html/html_tablerow_element.h
@@ -18,13 +18,13 @@ struct dom_html_table_row_element {
};
/* Create a dom_html_table_row_element object */
-dom_exception _dom_html_table_row_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_row_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_row_element **ele);
/* Initialise a dom_html_table_row_element object */
-dom_exception _dom_html_table_row_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_row_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_row_element *ele);
/* Finalise a dom_html_table_row_element object */
diff --git a/src/html/html_tablesection_element.c b/src/html/html_tablesection_element.c
index 9718612..fadc0ed 100644
--- a/src/html/html_tablesection_element.c
+++ b/src/html/html_tablesection_element.c
@@ -31,12 +31,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_table_section_element object
*
- * \table_section doc The document object
- * \table_section ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_section_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_section_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_section_element **ele)
{
struct dom_node_internal *node;
@@ -50,24 +50,21 @@ dom_exception _dom_html_table_section_element_create(struct dom_html_document *d
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_table_section_element_initialise(doc, tag_name,
- namespace, prefix, *ele);
+ return _dom_html_table_section_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_table_section_element object
*
- * \table_section doc The document object
- * \table_section ele The dom_html_table_section_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_table_section_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_table_section_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_section_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_section_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- tag_name,
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
@@ -211,9 +208,15 @@ dom_exception dom_html_table_section_element_insert_row(
dom_html_collection *rows; /*< The collection of rows in input table_section_element*/
uint32_t len; /*< The size of the row collection */
dom_exception exp; /*< Variable for getting the exceptions*/
- exp = _dom_html_table_row_element_create(doc,
- ((dom_node_internal *)element)->namespace,
- ((dom_node_internal *)element)->prefix,
+
+ struct dom_html_element_create_params params = {
+ .doc = doc,
+ .name = doc->elements[DOM_HTML_ELEMENT_TYPE_TR],
+ .namespace = ((dom_node_internal *)element)->namespace,
+ .prefix = ((dom_node_internal *)element)->prefix
+ };
+
+ exp = _dom_html_table_row_element_create(&params,
(dom_html_table_row_element **)new_row);
if(exp != DOM_NO_ERR)
return exp;
diff --git a/src/html/html_tablesection_element.h b/src/html/html_tablesection_element.h
index 387882a..6985abd 100644
--- a/src/html/html_tablesection_element.h
+++ b/src/html/html_tablesection_element.h
@@ -19,13 +19,13 @@ struct dom_html_table_section_element {
};
/* Create a dom_html_table_section_element object */
-dom_exception _dom_html_table_section_element_create(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_section_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_table_section_element **ele);
/* Initialise a dom_html_table_section_element object */
-dom_exception _dom_html_table_section_element_initialise(struct dom_html_document *doc,
- dom_string *tag_name, dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_table_section_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_table_section_element *ele);
/* Finalise a dom_html_table_section_element object */
diff --git a/src/html/html_text_area_element.c b/src/html/html_text_area_element.c
index cfc3bed..bbc9789 100644
--- a/src/html/html_text_area_element.c
+++ b/src/html/html_text_area_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_text_area_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_text_area_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_text_area_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_text_area_element **ele)
{
struct dom_node_internal *node;
@@ -46,18 +46,18 @@ dom_exception _dom_html_text_area_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_text_area_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_text_area_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_text_area_element object
*
- * \param doc The document object
- * \param ele The dom_html_text_area_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_text_area_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_text_area_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_text_area_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_text_area_element *ele)
{
ele->form = NULL;
@@ -66,9 +66,7 @@ dom_exception _dom_html_text_area_element_initialise(struct dom_html_document *d
ele->value = NULL;
ele->value_set = false;
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_TEXTAREA],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_text_area_element.h b/src/html/html_text_area_element.h
index a115e85..5c7b420 100644
--- a/src/html/html_text_area_element.h
+++ b/src/html/html_text_area_element.h
@@ -24,13 +24,13 @@ struct dom_html_text_area_element {
};
/* Create a dom_html_text_area_element object */
-dom_exception _dom_html_text_area_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_text_area_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_text_area_element **ele);
/* Initialise a dom_html_text_area_element object */
-dom_exception _dom_html_text_area_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_text_area_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_text_area_element *ele);
/* Finalise a dom_html_text_area_element object */
diff --git a/src/html/html_title_element.c b/src/html/html_title_element.c
index e2107c8..02c7820 100644
--- a/src/html/html_title_element.c
+++ b/src/html/html_title_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_title_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_title_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_title_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_title_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_title_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_title_element_initialise(doc, namespace, prefix, *ele);
+ return _dom_html_title_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_title_element object
*
- * \param doc The document object
- * \param ele The dom_html_title_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_title_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_title_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_title_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_title_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_TITLE],
- namespace, prefix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_title_element.h b/src/html/html_title_element.h
index 51adaf9..1a7653a 100644
--- a/src/html/html_title_element.h
+++ b/src/html/html_title_element.h
@@ -18,13 +18,13 @@ struct dom_html_title_element {
};
/* Create a dom_html_title_element object */
-dom_exception _dom_html_title_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_title_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_title_element **ele);
/* Initialise a dom_html_title_element object */
-dom_exception _dom_html_title_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_title_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_title_element *ele);
/* Finalise a dom_html_title_element object */
diff --git a/src/html/html_ulist_element.c b/src/html/html_ulist_element.c
index 17d31a9..624c85f 100644
--- a/src/html/html_ulist_element.c
+++ b/src/html/html_ulist_element.c
@@ -27,12 +27,12 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_u_list_element object
*
- * \param doc The document object
- * \param ele The returned element object
+ * \param params The html element creation parameters
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_u_list_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *u_listfix,
+dom_exception _dom_html_u_list_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_u_list_element **ele)
{
struct dom_node_internal *node;
@@ -46,23 +46,21 @@ dom_exception _dom_html_u_list_element_create(struct dom_html_document *doc,
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_u_list_element_initialise(doc, namespace, u_listfix, *ele);
+ return _dom_html_u_list_element_initialise(params, *ele);
}
/**
* Initialise a dom_html_u_list_element object
*
- * \param doc The document object
- * \param ele The dom_html_u_list_element object
+ * \param params The html element creation parameters
+ * \param ele The dom_html_u_list_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
-dom_exception _dom_html_u_list_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *u_listfix,
+dom_exception _dom_html_u_list_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_u_list_element *ele)
{
- return _dom_html_element_initialise(doc, &ele->base,
- doc->elements[DOM_HTML_ELEMENT_TYPE_UL],
- namespace, u_listfix);
+ return _dom_html_element_initialise(params, &ele->base);
}
/**
diff --git a/src/html/html_ulist_element.h b/src/html/html_ulist_element.h
index 7e03f47..6e7e6f9 100644
--- a/src/html/html_ulist_element.h
+++ b/src/html/html_ulist_element.h
@@ -19,13 +19,13 @@ struct dom_html_u_list_element {
};
/* Create a dom_html_u_list_element object */
-dom_exception _dom_html_u_list_element_create(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_u_list_element_create(
+ struct dom_html_element_create_params *params,
struct dom_html_u_list_element **ele);
/* Initialise a dom_html_u_list_element object */
-dom_exception _dom_html_u_list_element_initialise(struct dom_html_document *doc,
- dom_string *namespace, dom_string *prefix,
+dom_exception _dom_html_u_list_element_initialise(
+ struct dom_html_element_create_params *params,
struct dom_html_u_list_element *ele);
/* Finalise a dom_html_u_list_element object */