summaryrefslogtreecommitdiff
path: root/saedit/xml.h
diff options
context:
space:
mode:
Diffstat (limited to 'saedit/xml.h')
-rw-r--r--saedit/xml.h29
1 files changed, 23 insertions, 6 deletions
diff --git a/saedit/xml.h b/saedit/xml.h
index cf76795..4030d72 100644
--- a/saedit/xml.h
+++ b/saedit/xml.h
@@ -11,14 +11,31 @@
#ifndef XML_H
#define XML_H
+#include <stdio.h>
#include <glib.h>
-#include <ibus.h>
#include "common.h"
-gchar **xml_attr_new(const gchar *name, const gchar *value);
-gchar *xml_node_get_attr_value(const XMLNode *node, const gchar *attr_name);
-gint xml_node_compare_with_name_func(gconstpointer a, gconstpointer b);
-gint xml_node_compare_with_action_node_by_imageset_name_func(gconstpointer a, gconstpointer b);
-gint xml_node_compare_with_attr_func(const XMLNode *node, const gchar **attr);
+typedef struct {
+ gchar *name;
+ gchar *text;
+ gchar **attributes;
+ GList *sub_nodes;
+} XMLNode;
+
+
+XMLNode *xml_parse_file (const gchar *name);
+
+XMLNode *xml_parse_buffer (const gchar *buffer);
+
+void xml_free (XMLNode *node);
+
+void xml_output (const XMLNode *node,
+ GString *output);
+
+gchar **xml_attr_new(const gchar *name, const gchar *value);
+gchar *xml_node_get_attr_value(const XMLNode *node, const gchar *attr_name);
+gint xml_node_compare_with_name_func(gconstpointer a, gconstpointer b);
+gint xml_node_compare_with_action_node_by_imageset_name_func(gconstpointer a, gconstpointer b);
+gint xml_node_compare_with_attr_func(const XMLNode *node, const gchar **attr);
#endif