summaryrefslogtreecommitdiff
path: root/src/util/dom-str.c
diff options
context:
space:
mode:
authorMichael Drake <tlsa@netsurf-browser.org>2015-08-01 17:40:24 +0100
committerMichael Drake <tlsa@netsurf-browser.org>2015-08-03 22:30:20 +0100
commitba2cea6270dc014bf2751f373404fa915d2c38b6 (patch)
tree1a7d6a91c3362a0acda23715e8fba918a885a500 /src/util/dom-str.c
parentcefb64e2eb6e67d523ed9367fea54ec7d30a1414 (diff)
downloadlibnslayout-ba2cea6270dc014bf2751f373404fa915d2c38b6.tar.gz
libnslayout-ba2cea6270dc014bf2751f373404fa915d2c38b6.tar.bz2
Add DOM event handler.
Currently just prints the events it gets.
Diffstat (limited to 'src/util/dom-str.c')
-rw-r--r--src/util/dom-str.c54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/util/dom-str.c b/src/util/dom-str.c
new file mode 100644
index 0000000..b959afe
--- /dev/null
+++ b/src/util/dom-str.c
@@ -0,0 +1,54 @@
+/*
+ * This file is part of LibNSLayout
+ * Licensed under the ISC License, http://opensource.org/licenses/ISC
+ * Copyright 2015 Michael Drake <tlsa@netsurf-browser.org>
+ */
+
+/** \file src/util/dom-str.c
+ * Layout object handling
+ */
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#include "util/dom-str.h"
+#include "util/util.h"
+
+dom_string *nsl_dom_str_node_inserted;
+dom_string *nsl_dom_str_subtree_modified;
+
+
+/* Exported function, documented in src/util/dom-str.h */
+nslayout_error nsl_dom_str_init(void)
+{
+ dom_exception exc;
+
+ exc = dom_string_create((const uint8_t *)"DOMNodeInserted",
+ SLEN("DOMNodeInserted"),
+ &nsl_dom_str_node_inserted);
+ if (exc != DOM_NO_ERR) {
+ /* TODO: free stuff, return value */
+ printf("Failed to create string!\n");
+ return NSLAYOUT_NO_MEM;
+ }
+ exc = dom_string_create((const uint8_t *)"DOMSubtreeModified",
+ SLEN("DOMSubtreeModified"),
+ &nsl_dom_str_subtree_modified);
+ if (exc != DOM_NO_ERR) {
+ /* TODO: free stuff, return value */
+ printf("Failed to create string!\n");
+ return NSLAYOUT_NO_MEM;
+ }
+
+ return NSLAYOUT_OK;
+}
+
+
+/* Exported function, documented in src/util/dom-str.h */
+nslayout_error nsl_dom_str_fini(void)
+{
+ dom_string_unref(nsl_dom_str_node_inserted);
+ dom_string_unref(nsl_dom_str_subtree_modified);
+
+ return NSLAYOUT_OK;
+}