## Xml Utils

Xml Utils — An api to read and write xml.

## Functions

GladeXmlNode * | glade_xml_search_child ()
GladeXmlNode * | glade_xml_search_child_required ()
gchar * | glade_xml_get_content ()
void | glade_xml_set_content ()
gboolean | glade_xml_get_value_int ()
gboolean | glade_xml_get_value_int_required ()
gchar * | glade_xml_get_value_string ()
gchar * | glade_xml_get_value_string_required ()
gboolean | glade_xml_get_boolean ()
void | glade_xml_set_value ()
gchar * | glade_xml_get_property_string_required ()
gchar * | glade_xml_get_property_string ()
gboolean | glade_xml_get_property_boolean ()
gdouble | glade_xml_get_property_double ()
gint | glade_xml_get_property_int ()
void | glade_xml_node_set_property_string ()
void | glade_xml_node_set_property_boolean ()
GladeXmlNode * | glade_xml_node_new ()
GladeXmlNode * | glade_xml_node_new_comment ()
void | glade_xml_node_delete ()
GladeXmlNode * | glade_xml_node_get_children ()
GladeXmlNode * | glade_xml_node_next ()
gboolean | glade_xml_node_verify ()
gboolean | glade_xml_node_verify_silent ()
const gchar * | glade_xml_node_get_name ()
void | glade_xml_node_append_child ()
void | glade_xml_node_remove ()
gboolean | glade_xml_node_is_comment ()
GladeXmlNode * | glade_xml_node_next_with_comments ()
GladeXmlNode * | glade_xml_node_get_children_with_comments ()
GladeXmlNode * | glade_xml_doc_get_root ()
GladeXmlDoc * | glade_xml_doc_new ()
void | glade_xml_doc_set_root ()
void | glade_xml_doc_free ()
gint | glade_xml_doc_save ()
GladeXmlContext * | glade_xml_context_new ()
void | glade_xml_context_destroy ()
void | glade_xml_context_free ()
GladeXmlContext * | glade_xml_context_new_from_path ()
GladeXmlDoc * | glade_xml_context_get_doc ()
gboolean | glade_xml_load_sym_from_node ()

## Object Hierarchy

## Description

You may need these tools if you are implementing GladeReadWidgetFunc and/or GladeWriteWidgetFunc on your GladeWidgetAdaptor to read and write widgets in custom ways

## Functions

### glade_xml_search_child ()

    GladeXmlNode *
    glade_xml_search_child (GladeXmlNode *node,
                            const gchar *name);

### glade_xml_search_child_required ()

    GladeXmlNode *
    glade_xml_search_child_required (GladeXmlNode *tree,
                                     const gchar *name);

just a small wrapper arround glade_xml_search_child that displays an error if the child was not found

#### Returns

### glade_xml_get_content ()

    gchar *
    glade_xml_get_content (GladeXmlNode *node_in);

Gets a string containing the content of `node_in` .

#### Parameters

node_in | a GladeXmlNode |

#### Returns

A newly allocated string

### glade_xml_set_content ()

    void
    glade_xml_set_content (GladeXmlNode *node_in,
                           const gchar *content);

Sets the content of `node` to `content` .

#### Parameters

node_in | a GladeXmlNode |
content | a string |

### glade_xml_get_value_int ()

    gboolean
    glade_xml_get_value_int (GladeXmlNode *node_in,
                             const gchar *name,
                             int *val);

Gets an integer value for a node either carried as an attribute or as the content of a child.

#### Parameters

node_in | a GladeXmlNode |
name | a string |
val | a pointer to an int |

#### Returns

`TRUE` if the node is found, `FALSE` otherwise

### glade_xml_get_value_int_required ()

    gboolean
    glade_xml_get_value_int_required (GladeXmlNode *node,
                                      const gchar *name,
                                      int *val);

This is a wrapper around `glade_xml_get_value_int()`, only it emits a `g_warning()` if `node_in` did not contain the requested tag

#### Parameters

node | a GladeXmlNode |
name | a string |
val | a pointer to an int |

#### Returns

### glade_xml_get_value_string ()

    gchar *
    glade_xml_get_value_string (GladeXmlNode *node,
                                const gchar *name);

### glade_xml_get_value_string_required ()

    gchar *
    glade_xml_get_value_string_required (GladeXmlNode *node,
                                         const gchar *name,
                                         const gchar *xtra_info);

### glade_xml_get_boolean ()

    gboolean
    glade_xml_get_boolean (GladeXmlNode *node,
                           const gchar *name,
                           gboolean _default);

### glade_xml_set_value ()

    void
    glade_xml_set_value (GladeXmlNode *node_in,
                         const gchar *name,
                         const gchar *val);

Sets the property `name` in `node_in` to `val`

#### Parameters

node_in | a GladeXmlNode |
name | a string |
val | a string |

### glade_xml_get_property_string_required ()

    gchar *
    glade_xml_get_property_string_required
                                   (GladeXmlNode *node_in,
                                    const gchar *name,
                                    const gchar *xtra);

### glade_xml_get_property_string ()

    gchar *
    glade_xml_get_property_string (GladeXmlNode *node_in,
                                   const gchar *name);

### glade_xml_get_property_boolean ()

    gboolean
    glade_xml_get_property_boolean (GladeXmlNode *node_in,
                                    const gchar *name,
                                    gboolean _default);

### glade_xml_get_property_double ()

    gdouble
    glade_xml_get_property_double (GladeXmlNode *node_in,
                                   const gchar *name,
                                   gdouble _default);

### glade_xml_get_property_int ()

    gint
    glade_xml_get_property_int (GladeXmlNode *node_in,
                                const gchar *name,
                                gint _default);

### glade_xml_node_set_property_string ()

    void
    glade_xml_node_set_property_string (GladeXmlNode *node_in,
                                        const gchar *name,
                                        const gchar *string);

### glade_xml_node_set_property_boolean ()

    void
    glade_xml_node_set_property_boolean (GladeXmlNode *node_in,
                                         const gchar *name,
                                         gboolean value);

### glade_xml_node_new ()

    GladeXmlNode *
    glade_xml_node_new (GladeXmlContext *context,
                        const gchar *name);

### glade_xml_node_new_comment ()

    GladeXmlNode *
    glade_xml_node_new_comment (GladeXmlContext *context,
                                const gchar *comment);

### glade_xml_node_delete ()

    void
    glade_xml_node_delete (GladeXmlNode *node);

### glade_xml_node_get_children ()

    GladeXmlNode *
    glade_xml_node_get_children (GladeXmlNode *node);

### glade_xml_node_next ()

    GladeXmlNode *
    glade_xml_node_next (GladeXmlNode *node_in);

### glade_xml_node_verify ()

    gboolean
    glade_xml_node_verify (GladeXmlNode *node_in,
                           const gchar *name);

This is a wrapper around `glade_xml_node_verify_silent()`, only it emits a `g_warning()` if `node_in` has a name different than `name` .

#### Parameters

node_in | a GladeXmlNode |
name | a string |

#### Returns

`TRUE` if `node_in` 's name is equal to `name` , `FALSE` otherwise

### glade_xml_node_verify_silent ()

    gboolean
    glade_xml_node_verify_silent (GladeXmlNode *node_in,
                                  const gchar *name);

#### Parameters

node_in | a GladeXmlNode |
name | a string |

#### Returns

`TRUE` if `node_in` 's name is equal to `name` , `FALSE` otherwise

### glade_xml_node_get_name ()

    const gchar *
    glade_xml_node_get_name (GladeXmlNode *node_in);

### glade_xml_node_append_child ()

    void
    glade_xml_node_append_child (GladeXmlNode *node,
                                 GladeXmlNode *child);

### glade_xml_node_remove ()

    void
    glade_xml_node_remove (GladeXmlNode *node_in);

### glade_xml_node_is_comment ()

    gboolean
    glade_xml_node_is_comment (GladeXmlNode *node_in);

### glade_xml_node_next_with_comments ()

    GladeXmlNode *
    glade_xml_node_next_with_comments (GladeXmlNode *node_in);

### glade_xml_node_get_children_with_comments ()

    GladeXmlNode *
    glade_xml_node_get_children_with_comments
                                   (GladeXmlNode *node);

### glade_xml_doc_get_root ()

    GladeXmlNode *
    glade_xml_doc_get_root (GladeXmlDoc *doc);

#### Parameters

doc | a GladeXmlDoc |

#### Returns

the GladeXmlNode that is the document root of `doc`

### glade_xml_doc_new ()

    GladeXmlDoc *
    glade_xml_doc_new (void);

### glade_xml_doc_set_root ()

    void
    glade_xml_doc_set_root (GladeXmlDoc *doc,
                            GladeXmlNode *node);

### glade_xml_doc_free ()

    void
    glade_xml_doc_free (GladeXmlDoc *doc_in);

### glade_xml_doc_save ()

    gint
    glade_xml_doc_save (GladeXmlDoc *doc_in,
                        const gchar *full_path);

### glade_xml_context_new ()

    GladeXmlContext *
    glade_xml_context_new (GladeXmlDoc *doc,
                           const gchar *name_space);

### glade_xml_context_destroy ()

    void
    glade_xml_context_destroy (GladeXmlContext *context);

### glade_xml_context_free ()

    void
    glade_xml_context_free (GladeXmlContext *context);

Similar to glade_xml_context_destroy but it also frees the document set in the context

### glade_xml_context_new_from_path ()

    GladeXmlContext *
    glade_xml_context_new_from_path (const gchar *full_path,
                                     const gchar *nspace,
                                     const gchar *root_name);

### glade_xml_context_get_doc ()

    GladeXmlDoc *
    glade_xml_context_get_doc (GladeXmlContext *context);

### glade_xml_load_sym_from_node ()

    gboolean
    glade_xml_load_sym_from_node (GladeXmlNode *node_in,
                                  GModule *module,
                                  gchar *tagname,
                                  gpointer *sym_location);

## Types and Values