summaryrefslogtreecommitdiff
path: root/include/dom
diff options
context:
space:
mode:
Diffstat (limited to 'include/dom')
-rw-r--r--include/dom/dom.h2
-rw-r--r--include/dom/html/html_option_element.h52
-rw-r--r--include/dom/html/html_select_element.h55
3 files changed, 97 insertions, 12 deletions
diff --git a/include/dom/dom.h b/include/dom/dom.h
index b68085a..f9d8817 100644
--- a/include/dom/dom.h
+++ b/include/dom/dom.h
@@ -52,6 +52,8 @@
#include <dom/html/html_button_element.h>
#include <dom/html/html_text_area_element.h>
#include <dom/html/html_opt_group_element.h>
+#include <dom/html/html_option_element.h>
+#include <dom/html/html_select_element.h>
/* DOM Events header */
#include <dom/events/events.h>
diff --git a/include/dom/html/html_option_element.h b/include/dom/html/html_option_element.h
index 2e182d5..53ba286 100644
--- a/include/dom/html/html_option_element.h
+++ b/include/dom/html/html_option_element.h
@@ -2,6 +2,56 @@
* This file is part of libdom.
* Licensed under the MIT License,
* http://www.opensource.org/licenses/mit-license.php
- * Copyright 2009 Bo Yang <struggleyb.nku@gmail.com>
+ * Copyright 2012 John-Mark Bell <jmb@netsurf-browser.org>
*/
+#ifndef dom_html_option_element_h_
+#define dom_html_option_element_h_
+
+#include <stdbool.h>
+#include <dom/core/exceptions.h>
+#include <dom/core/string.h>
+#include <dom/html/html_form_element.h>
+
+typedef struct dom_html_option_element dom_html_option_element;
+
+dom_exception dom_html_option_element_get_form(
+ dom_html_option_element *option, dom_html_form_element **form);
+
+dom_exception dom_html_option_element_get_default_selected(
+ dom_html_option_element *option, bool *default_selected);
+
+dom_exception dom_html_option_element_set_default_selected(
+ dom_html_option_element *option, bool default_selected);
+
+dom_exception dom_html_option_element_get_text(
+ dom_html_option_element *option, dom_string **text);
+
+dom_exception dom_html_option_element_get_index(
+ dom_html_option_element *option, unsigned long *index);
+
+dom_exception dom_html_option_element_get_disabled(
+ dom_html_option_element *option, bool *disabled);
+
+dom_exception dom_html_option_element_set_disabled(
+ dom_html_option_element *option, bool disabled);
+
+dom_exception dom_html_option_element_get_label(
+ dom_html_option_element *option, dom_string **label);
+
+dom_exception dom_html_option_element_set_label(
+ dom_html_option_element *option, dom_string *label);
+
+dom_exception dom_html_option_element_get_selected(
+ dom_html_option_element *option, bool *selected);
+
+dom_exception dom_html_option_element_set_selected(
+ dom_html_option_element *option, bool selected);
+
+dom_exception dom_html_option_element_get_value(
+ dom_html_option_element *option, dom_string **value);
+
+dom_exception dom_html_option_element_set_value(
+ dom_html_option_element *option, dom_string *value);
+
+#endif
diff --git a/include/dom/html/html_select_element.h b/include/dom/html/html_select_element.h
index a052be1..6999368 100644
--- a/include/dom/html/html_select_element.h
+++ b/include/dom/html/html_select_element.h
@@ -12,44 +12,77 @@
#include <dom/core/exceptions.h>
+#include <dom/html/html_form_element.h>
+
typedef struct dom_html_select_element dom_html_select_element;
struct dom_html_options_collection;
struct dom_html_element;
+dom_exception dom_html_select_element_get_type(
+ dom_html_select_element *ele, dom_string **type);
+
dom_exception dom_html_select_element_get_selected_index(
- dom_html_select_element *ele, uint32_t *index);
+ dom_html_select_element *ele, int32_t *index);
dom_exception dom_html_select_element_set_selected_index(
- dom_html_select_element *ele, uint32_t index);
+ dom_html_select_element *ele, int32_t index);
+
+dom_exception dom_html_select_element_get_value(
+ dom_html_select_element *ele, dom_string **value);
+dom_exception dom_html_select_element_set_value(
+ dom_html_select_element *ele, dom_string *value);
+
dom_exception dom_html_select_element_get_length(
dom_html_select_element *ele, uint32_t *len);
dom_exception dom_html_select_element_set_length(
dom_html_select_element *ele, uint32_t len);
-dom_exception dom_html_select_element_get_options(
+
+dom_exception dom_html_select_element_get_form(
+ dom_html_select_element *ele, dom_html_form_element **form);
+
+dom_exception dom__html_select_element_get_options(
dom_html_select_element *ele,
struct dom_html_options_collection **col);
+#define dom_html_select_element_get_options(e, c) \
+ dom__html_select_element_get_options((dom_html_select_element *) (e), \
+ (struct dom_html_options_collection **) (c))
+
dom_exception dom_html_select_element_get_disabled(
dom_html_select_element *ele, bool *disabled);
dom_exception dom_html_select_element_set_disabled(
dom_html_select_element *ele, bool disabled);
+
dom_exception dom_html_select_element_get_multiple(
dom_html_select_element *ele, bool *multiple);
dom_exception dom_html_select_element_set_multiple(
dom_html_select_element *ele, bool multiple);
+
+dom_exception dom_html_select_element_get_name(
+ dom_html_select_element *ele, dom_string **name);
+dom_exception dom_html_select_element_set_name(
+ dom_html_select_element *ele, dom_string *name);
+
dom_exception dom_html_select_element_get_size(
- dom_html_select_element *ele, uint32_t *size);
+ dom_html_select_element *ele, int32_t *size);
dom_exception dom_html_select_element_set_size(
- dom_html_select_element *ele, uint32_t size);
+ dom_html_select_element *ele, int32_t size);
+
dom_exception dom_html_select_element_get_tab_index(
- dom_html_select_element *ele, uint32_t *tab_index);
+ dom_html_select_element *ele, int32_t *tab_index);
dom_exception dom_html_select_element_set_tab_index(
- dom_html_select_element *ele, uint32_t tab_index);
+ dom_html_select_element *ele, int32_t tab_index);
/* Functions */
-dom_exception dom_html_select_element_add(struct dom_html_element *ele,
- struct dom_html_element *before);
-dom_exception dom_html_element_blur(struct dom_html_select_element *ele);
-dom_exception dom_html_element_focus(struct dom_html_select_element *ele);
+dom_exception dom__html_select_element_add(dom_html_select_element *select,
+ struct dom_html_element *ele, struct dom_html_element *before);
+#define dom_html_select_element_add(s, e, b) \
+ dom__html_select_element_add((dom_html_select_element *) (s), \
+ (struct dom_html_element *) (e), \
+ (struct dom_html_element *) (b))
+dom_exception dom_html_select_element_remove(dom_html_select_element *ele,
+ long index);
+dom_exception dom_html_select_element_blur(struct dom_html_select_element *ele);
+dom_exception dom_html_select_element_focus(struct dom_html_select_element *ele);
#endif