diff options
Diffstat (limited to 'saedit/xml.h')
-rw-r--r-- | saedit/xml.h | 29 |
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 |