libpurple/xmlnode.h

Wed, 20 Jun 2018 02:13:44 -0400

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Wed, 20 Jun 2018 02:13:44 -0400
changeset 39181
f0cd633d86d4
parent 37094
84873ce721dc
child 39659
e4dfb99b0cef
permissions
-rw-r--r--

prefs: Add binding versions of pref widget functions.

These just bind settings to existing widgets and copy the saved value to
the widget, except for combos which are produced from runtime lists.
Those are populated in a similar way as before.

There are some extra _bind_ words that will probably be dropped once the
other functions are unused.

20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19897
diff changeset
1 /* purple
7131
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15609
diff changeset
3 * Purple is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7642
diff changeset
4 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7642
diff changeset
5 * source distribution.
7131
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
6 *
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
10 * (at your option) any later version.
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
11 *
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
15 * GNU General Public License for more details.
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
16 *
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
18 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 18131
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
7131
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
20 */
35487
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
21
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
22 #ifndef _PURPLE_XMLNODE_H_
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
23 #define _PURPLE_XMLNODE_H_
35442
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
24 /**
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
25 * SECTION:xmlnode
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
26 * @section_id: libpurple-xmlnode
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
27 * @short_description: <filename>xmlnode.h</filename>
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
28 * @title: XML DOM functions
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
29 */
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
30
23659
8251d0f67df5 restructured much of the loader and themes for the buddy list, along with a basic trial of group background
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents: 23643
diff changeset
31 #include <glib.h>
34863
dc0c27a2289a Included glib-object.h in xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 34791
diff changeset
32 #include <glib-object.h>
23659
8251d0f67df5 restructured much of the loader and themes for the buddy list, along with a basic trial of group background
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents: 23643
diff changeset
33
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
34 #define PURPLE_TYPE_XMLNODE (purple_xmlnode_get_type())
34791
df49377a0778 Added GBoxed wrapping to xmlnode
Ankit Vani <a@nevitus.org>
parents: 33889
diff changeset
35
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
36 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
37 * PurpleXmlNodeType:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
38 * @PURPLE_XMLNODE_TYPE_TAG: Just a tag
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
39 * @PURPLE_XMLNODE_TYPE_ATTRIB: Has attributes
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
40 * @PURPLE_XMLNODE_TYPE_DATA: Has data
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
41 *
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
42 * The valid types for an PurpleXmlNode
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
43 */
32206
a2c62b07ae5a Please correct me if I'm wrong, but I don't think we gain anything
Mark Doliner <markdoliner@pidgin.im>
parents: 30510
diff changeset
44 typedef enum
7131
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
45 {
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
46 PURPLE_XMLNODE_TYPE_TAG,
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
47 PURPLE_XMLNODE_TYPE_ATTRIB,
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
48 PURPLE_XMLNODE_TYPE_DATA
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
49
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
50 } PurpleXmlNodeType;
7131
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
51
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
52 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
53 * PurpleXmlNode:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
54 * @name: The name of the node.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
55 * @xmlns: The namespace of the node.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
56 * @type: The type of the node.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
57 * @data: The data for the node.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
58 * @data_sz: The size of the data.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
59 * @parent: The parent node or %NULL.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
60 * @child: The child node or %NULL.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
61 * @lastchild: The last child node or %NULL.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
62 * @next: The next node or %NULL.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
63 * @prefix: The namespace prefix if any.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
64 * @namespace_map: The namespace map.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
65 *
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
66 * An PurpleXmlNode.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
67 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
68 typedef struct _PurpleXmlNode PurpleXmlNode;
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
69 struct _PurpleXmlNode
7131
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
70 {
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
71 char *name;
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
72 char *xmlns;
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
73 PurpleXmlNodeType type;
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
74 char *data;
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
75 size_t data_sz;
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
76 PurpleXmlNode *parent;
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
77 PurpleXmlNode *child;
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
78 PurpleXmlNode *lastchild;
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
79 PurpleXmlNode *next;
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
80 char *prefix;
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
81 GHashTable *namespace_map;
14386
5563ea640401 [gaim-migrate @ 17019]
Nathan Walp <nwalp@pidgin.im>
parents: 14254
diff changeset
82 };
7131
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
83
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32554
diff changeset
84 G_BEGIN_DECLS
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32554
diff changeset
85
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
86 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
87 * purple_xmlnode_get_type:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
88 *
35466
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
89 * Returns: The #GType for the #PurpleXmlNode boxed structure.
34791
df49377a0778 Added GBoxed wrapping to xmlnode
Ankit Vani <a@nevitus.org>
parents: 33889
diff changeset
90 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
91 GType purple_xmlnode_get_type(void);
34791
df49377a0778 Added GBoxed wrapping to xmlnode
Ankit Vani <a@nevitus.org>
parents: 33889
diff changeset
92
df49377a0778 Added GBoxed wrapping to xmlnode
Ankit Vani <a@nevitus.org>
parents: 33889
diff changeset
93 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
94 * purple_xmlnode_new:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
95 * @name: The name of the node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
96 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
97 * Creates a new PurpleXmlNode.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
98 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
99 * Returns: The new node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
100 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
101 PurpleXmlNode *purple_xmlnode_new(const char *name);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
102
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
103 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
104 * purple_xmlnode_new_child:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
105 * @parent: The parent node.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
106 * @name: The name of the child node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
107 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
108 * Creates a new PurpleXmlNode child.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
109 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
110 * Returns: The new child node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
111 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
112 PurpleXmlNode *purple_xmlnode_new_child(PurpleXmlNode *parent, const char *name);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
113
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
114 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
115 * purple_xmlnode_insert_child:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
116 * @parent: The parent node to insert child into.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
117 * @child: The child node to insert into parent.
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
118 *
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
119 * Inserts a node into a node as a child.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
120 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
121 void purple_xmlnode_insert_child(PurpleXmlNode *parent, PurpleXmlNode *child);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
122
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
123 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
124 * purple_xmlnode_get_child:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
125 * @parent: The parent node.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
126 * @name: The child's name.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
127 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
128 * Gets a child node named name.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
129 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
130 * Returns: The child or NULL.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
131 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
132 PurpleXmlNode *purple_xmlnode_get_child(const PurpleXmlNode *parent, const char *name);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
133
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
134 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
135 * purple_xmlnode_get_child_with_namespace:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
136 * @parent: The parent node.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
137 * @name: The child's name.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
138 * @xmlns: The namespace.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
139 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
140 * Gets a child node named name in a namespace.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
141 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
142 * Returns: The child or NULL.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
143 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
144 PurpleXmlNode *purple_xmlnode_get_child_with_namespace(const PurpleXmlNode *parent, const char *name, const char *xmlns);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
145
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
146 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
147 * purple_xmlnode_get_next_twin:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
148 * @node: The node of a twin to find.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
149 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
150 * Gets the next node with the same name as node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
151 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
152 * Returns: The twin of node or NULL.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
153 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
154 PurpleXmlNode *purple_xmlnode_get_next_twin(PurpleXmlNode *node);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
155
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
156 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
157 * purple_xmlnode_insert_data:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
158 * @node: The node to insert data into.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
159 * @data: The data to insert.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
160 * @size: The size of the data to insert. If data is
10415
faceb835eb87 [gaim-migrate @ 11665]
Mark Doliner <markdoliner@pidgin.im>
parents: 10337
diff changeset
161 * null-terminated you can pass in -1.
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
162 *
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
163 * Inserts data into a node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
164 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
165 void purple_xmlnode_insert_data(PurpleXmlNode *node, const char *data, gssize size);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
166
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
167 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
168 * purple_xmlnode_get_data:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
169 * @node: The node to get data from.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
170 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
171 * Gets (escaped) data from a node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
172 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
173 * Returns: The data from the node or NULL. This data is in raw escaped format.
18131
7127441da3ba add xmlnode_get_data_unescaped(), and got rid of an unecessary realloc
Nathan Walp <nwalp@pidgin.im>
parents: 15884
diff changeset
174 * You must g_free this string when finished using it.
7127441da3ba add xmlnode_get_data_unescaped(), and got rid of an unecessary realloc
Nathan Walp <nwalp@pidgin.im>
parents: 15884
diff changeset
175 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
176 char *purple_xmlnode_get_data(const PurpleXmlNode *node);
18131
7127441da3ba add xmlnode_get_data_unescaped(), and got rid of an unecessary realloc
Nathan Walp <nwalp@pidgin.im>
parents: 15884
diff changeset
177
7127441da3ba add xmlnode_get_data_unescaped(), and got rid of an unecessary realloc
Nathan Walp <nwalp@pidgin.im>
parents: 15884
diff changeset
178 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
179 * purple_xmlnode_get_data_unescaped:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
180 * @node: The node to get data from.
18131
7127441da3ba add xmlnode_get_data_unescaped(), and got rid of an unecessary realloc
Nathan Walp <nwalp@pidgin.im>
parents: 15884
diff changeset
181 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
182 * Gets unescaped data from a node.
18131
7127441da3ba add xmlnode_get_data_unescaped(), and got rid of an unecessary realloc
Nathan Walp <nwalp@pidgin.im>
parents: 15884
diff changeset
183 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
184 * Returns: The data from the node, in unescaped form. You must g_free
14162
3546040af8e2 [gaim-migrate @ 16730]
Daniel Atallah <datallah@pidgin.im>
parents: 13808
diff changeset
185 * this string when finished using it.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
186 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
187 char *purple_xmlnode_get_data_unescaped(const PurpleXmlNode *node);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
188
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
189 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
190 * purple_xmlnode_set_attrib:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
191 * @node: The node to set an attribute for.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
192 * @attr: The name of the attribute.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
193 * @value: The value of the attribute.
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
194 *
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
195 * Sets an attribute for a node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
196 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
197 void purple_xmlnode_set_attrib(PurpleXmlNode *node, const char *attr, const char *value);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
198
26393
7420fd99903a Add xmlnode_set_attrib_full that enables you to set an attribute with both
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25911
diff changeset
199 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
200 * purple_xmlnode_set_attrib_full:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
201 * @node: The node to set an attribute for.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
202 * @attr: The name of the attribute to set
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
203 * @xmlns: The namespace of the attribute to set
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
204 * @prefix: The prefix of the attribute to set
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
205 * @value: The value of the attribute
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
206 *
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
207 * Sets a namespaced attribute for a node
26393
7420fd99903a Add xmlnode_set_attrib_full that enables you to set an attribute with both
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 25911
diff changeset
208 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
209 void purple_xmlnode_set_attrib_full(PurpleXmlNode *node, const char *attr, const char *xmlns,
33889
4efe5c21db45 Doc and code formatting (use spaces not tabs to align comments after code and
Mark Doliner <mark@kingant.net>
parents: 32787
diff changeset
210 const char *prefix, const char *value);
15265
a5b0ab58b05d [gaim-migrate @ 17993]
Sean Egan <seanegan@pidgin.im>
parents: 15238
diff changeset
211
a5b0ab58b05d [gaim-migrate @ 17993]
Sean Egan <seanegan@pidgin.im>
parents: 15238
diff changeset
212 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
213 * purple_xmlnode_get_attrib:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
214 * @node: The node to get an attribute from.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
215 * @attr: The attribute to get.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
216 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
217 * Gets an attribute from a node.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
218 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
219 * Returns: The value of the attribute.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
220 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
221 const char *purple_xmlnode_get_attrib(const PurpleXmlNode *node, const char *attr);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
222
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
223 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
224 * purple_xmlnode_get_attrib_with_namespace:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
225 * @node: The node to get an attribute from.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
226 * @attr: The attribute to get
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
227 * @xmlns: The namespace of the attribute to get
15265
a5b0ab58b05d [gaim-migrate @ 17993]
Sean Egan <seanegan@pidgin.im>
parents: 15238
diff changeset
228 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
229 * Gets a namespaced attribute from a node
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
230 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
231 * Returns: The value of the attribute/
15265
a5b0ab58b05d [gaim-migrate @ 17993]
Sean Egan <seanegan@pidgin.im>
parents: 15238
diff changeset
232 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
233 const char *purple_xmlnode_get_attrib_with_namespace(const PurpleXmlNode *node, const char *attr, const char *xmlns);
15265
a5b0ab58b05d [gaim-migrate @ 17993]
Sean Egan <seanegan@pidgin.im>
parents: 15238
diff changeset
234
a5b0ab58b05d [gaim-migrate @ 17993]
Sean Egan <seanegan@pidgin.im>
parents: 15238
diff changeset
235 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
236 * purple_xmlnode_remove_attrib:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
237 * @node: The node to remove an attribute from.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
238 * @attr: The attribute to remove.
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
239 *
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
240 * Removes an attribute from a node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
241 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
242 void purple_xmlnode_remove_attrib(PurpleXmlNode *node, const char *attr);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
243
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
244 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
245 * purple_xmlnode_remove_attrib_with_namespace:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
246 * @node: The node to remove an attribute from
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
247 * @attr: The attribute to remove
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
248 * @xmlns: The namespace of the attribute to remove
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
249 *
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
250 * Removes a namespaced attribute from a node
15265
a5b0ab58b05d [gaim-migrate @ 17993]
Sean Egan <seanegan@pidgin.im>
parents: 15238
diff changeset
251 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
252 void purple_xmlnode_remove_attrib_with_namespace(PurpleXmlNode *node, const char *attr, const char *xmlns);
15265
a5b0ab58b05d [gaim-migrate @ 17993]
Sean Egan <seanegan@pidgin.im>
parents: 15238
diff changeset
253
a5b0ab58b05d [gaim-migrate @ 17993]
Sean Egan <seanegan@pidgin.im>
parents: 15238
diff changeset
254 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
255 * purple_xmlnode_set_namespace:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
256 * @node: The node to qualify
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
257 * @xmlns: The namespace of the node
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
258 *
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
259 * Sets the namespace of a node
13808
411ee56da344 [gaim-migrate @ 16229]
Sean Egan <seanegan@pidgin.im>
parents: 12887
diff changeset
260 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
261 void purple_xmlnode_set_namespace(PurpleXmlNode *node, const char *xmlns);
13808
411ee56da344 [gaim-migrate @ 16229]
Sean Egan <seanegan@pidgin.im>
parents: 12887
diff changeset
262
411ee56da344 [gaim-migrate @ 16229]
Sean Egan <seanegan@pidgin.im>
parents: 12887
diff changeset
263 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
264 * purple_xmlnode_get_namespace:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
265 * @node: The node to get the namepsace from
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
266 *
13808
411ee56da344 [gaim-migrate @ 16229]
Sean Egan <seanegan@pidgin.im>
parents: 12887
diff changeset
267 * Returns the namespace of a node
411ee56da344 [gaim-migrate @ 16229]
Sean Egan <seanegan@pidgin.im>
parents: 12887
diff changeset
268 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
269 * Returns: The namespace of this node
13808
411ee56da344 [gaim-migrate @ 16229]
Sean Egan <seanegan@pidgin.im>
parents: 12887
diff changeset
270 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
271 const char *purple_xmlnode_get_namespace(const PurpleXmlNode *node);
32321
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
272
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
273 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
274 * purple_xmlnode_get_default_namespace:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
275 * @node: The node for which to return the default namespace
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
276 *
32321
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
277 * Returns the current default namespace. The default
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
278 * namespace is the current namespace which applies to child
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
279 * elements which are unprefixed and which do not contain their
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
280 * own namespace.
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
281 *
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
282 * For example, given:
35468
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
283 * <programlisting>
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
284 * &lt;iq type='get' xmlns='jabber:client' xmlns:ns1='http://example.org/ns1'&gt;
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
285 * &lt;ns1:element&gt;&lt;child1/&gt;&lt;/ns1:element&gt;
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
286 * &lt;/iq&gt;
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
287 * </programlisting>
32321
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
288 *
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
289 * The default namespace of all nodes (including 'child1') is "jabber:client",
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
290 * though the namespace for 'element' is "http://example.org/ns1".
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
291 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
292 * Returns: The default namespace of this node
32321
ae17a89ef666 xmlnode: Fix some brokeness in xmlnode serialization with prefixed elements.
Paul Aurich <darkrain42@pidgin.im>
parents: 32313
diff changeset
293 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
294 const char *purple_xmlnode_get_default_namespace(const PurpleXmlNode *node);
13808
411ee56da344 [gaim-migrate @ 16229]
Sean Egan <seanegan@pidgin.im>
parents: 12887
diff changeset
295
411ee56da344 [gaim-migrate @ 16229]
Sean Egan <seanegan@pidgin.im>
parents: 12887
diff changeset
296 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
297 * purple_xmlnode_get_prefix_namespace:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
298 * @node: The node from which to start the search.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
299 * @prefix: The prefix for which to return the associated namespace.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
300 *
32322
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
301 * Returns the defined namespace for a prefix.
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
302 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
303 * Returns: The namespace for this prefix.
32322
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
304 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
305 const char *purple_xmlnode_get_prefix_namespace(const PurpleXmlNode *node, const char *prefix);
32322
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
306
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
307 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
308 * purple_xmlnode_set_prefix:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
309 * @node: The node to qualify
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
310 * @prefix: The prefix of the node
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
311 *
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
312 * Sets the prefix of a node
21454
2ca06ee152ac make our xmlnode preserve prefixes
Ka-Hing Cheung <khc@pidgin.im>
parents: 20603
diff changeset
313 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
314 void purple_xmlnode_set_prefix(PurpleXmlNode *node, const char *prefix);
21454
2ca06ee152ac make our xmlnode preserve prefixes
Ka-Hing Cheung <khc@pidgin.im>
parents: 20603
diff changeset
315
2ca06ee152ac make our xmlnode preserve prefixes
Ka-Hing Cheung <khc@pidgin.im>
parents: 20603
diff changeset
316 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
317 * purple_xmlnode_get_prefix:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
318 * @node: The node to get the prefix from
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
319 *
21454
2ca06ee152ac make our xmlnode preserve prefixes
Ka-Hing Cheung <khc@pidgin.im>
parents: 20603
diff changeset
320 * Returns the prefix of a node
2ca06ee152ac make our xmlnode preserve prefixes
Ka-Hing Cheung <khc@pidgin.im>
parents: 20603
diff changeset
321 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
322 * Returns: The prefix of this node
21454
2ca06ee152ac make our xmlnode preserve prefixes
Ka-Hing Cheung <khc@pidgin.im>
parents: 20603
diff changeset
323 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
324 const char *purple_xmlnode_get_prefix(const PurpleXmlNode *node);
21454
2ca06ee152ac make our xmlnode preserve prefixes
Ka-Hing Cheung <khc@pidgin.im>
parents: 20603
diff changeset
325
2ca06ee152ac make our xmlnode preserve prefixes
Ka-Hing Cheung <khc@pidgin.im>
parents: 20603
diff changeset
326 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
327 * purple_xmlnode_strip_prefixes:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
328 * @node: The node from which to strip prefixes
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
329 *
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
330 * Remove all element prefixes from an PurpleXmlNode tree. The prefix's
32322
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
331 * namespace is transformed into the default namespace for an element.
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
332 *
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
333 * Note that this will not necessarily remove all prefixes in use
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
334 * (prefixed attributes may still exist), and that this usage may
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
335 * break some applications (SOAP / XPath apparently often rely on
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
336 * the prefixes having the same name.
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
337 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
338 void purple_xmlnode_strip_prefixes(PurpleXmlNode *node);
32322
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
339
5c1dd6d9d57f xmlnode: Add xmlnode_strip_prefixes
Paul Aurich <darkrain42@pidgin.im>
parents: 32321
diff changeset
340 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
341 * purple_xmlnode_get_parent:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
342 * @child: The child node.
23750
57baab09bf45 Added xmlnode_get_parent.
Michael Ruprecht <maiku@pidgin.im>
parents: 21552
diff changeset
343 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
344 * Gets the parent node.
23750
57baab09bf45 Added xmlnode_get_parent.
Michael Ruprecht <maiku@pidgin.im>
parents: 21552
diff changeset
345 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
346 * Returns: The parent or NULL.
23750
57baab09bf45 Added xmlnode_get_parent.
Michael Ruprecht <maiku@pidgin.im>
parents: 21552
diff changeset
347 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
348 PurpleXmlNode *purple_xmlnode_get_parent(const PurpleXmlNode *child);
23750
57baab09bf45 Added xmlnode_get_parent.
Michael Ruprecht <maiku@pidgin.im>
parents: 21552
diff changeset
349
57baab09bf45 Added xmlnode_get_parent.
Michael Ruprecht <maiku@pidgin.im>
parents: 21552
diff changeset
350 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
351 * purple_xmlnode_to_str:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
352 * @node: The starting node to output.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
353 * @len: Address for the size of the string.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
354 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
355 * Returns the node in a string of xml.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
356 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
357 * Returns: The node represented as a string. You must
10415
faceb835eb87 [gaim-migrate @ 11665]
Mark Doliner <markdoliner@pidgin.im>
parents: 10337
diff changeset
358 * g_free this string when finished using it.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
359 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
360 char *purple_xmlnode_to_str(const PurpleXmlNode *node, int *len);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
361
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
362 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
363 * purple_xmlnode_to_formatted_str:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
364 * @node: The starting node to output.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
365 * @len: Address for the size of the string.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
366 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
367 * Returns the node in a string of human readable xml.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
368 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
369 * Returns: The node as human readable string including
10415
faceb835eb87 [gaim-migrate @ 11665]
Mark Doliner <markdoliner@pidgin.im>
parents: 10337
diff changeset
370 * tab and new line characters. You must
faceb835eb87 [gaim-migrate @ 11665]
Mark Doliner <markdoliner@pidgin.im>
parents: 10337
diff changeset
371 * g_free this string when finished using it.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
372 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
373 char *purple_xmlnode_to_formatted_str(const PurpleXmlNode *node, int *len);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
374
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
375 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
376 * purple_xmlnode_from_str:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
377 * @str: The string of xml.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
378 * @size: The size of the string, or -1 if @str is
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
379 * NUL-terminated.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
380 *
10337
778231f38df6 [gaim-migrate @ 11545]
Mark Doliner <markdoliner@pidgin.im>
parents: 10327
diff changeset
381 * Creates a node from a string of XML. Calling this on the
778231f38df6 [gaim-migrate @ 11545]
Mark Doliner <markdoliner@pidgin.im>
parents: 10327
diff changeset
382 * root node of an XML document will parse the entire document
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
383 * into a tree of nodes, and return the PurpleXmlNode of the root.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
384 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
385 * Returns: The new node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
386 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
387 PurpleXmlNode *purple_xmlnode_from_str(const char *str, gssize size);
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
388
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
389 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
390 * purple_xmlnode_copy:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
391 * @src: The node to copy.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
392 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
393 * Creates a new node from the source node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
394 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
395 * Returns: A new copy of the src node.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
396 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
397 PurpleXmlNode *purple_xmlnode_copy(const PurpleXmlNode *src);
7131
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
398
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
399 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
400 * purple_xmlnode_free:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
401 * @node: The node to free.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
402 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
403 * Frees a node and all of its children.
10327
a2b44a6bff0e [gaim-migrate @ 11534]
Gary Kramlich <grim@pidgin.im>
parents: 9837
diff changeset
404 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
405 void purple_xmlnode_free(PurpleXmlNode *node);
7131
bde45b2e6bf3 [gaim-migrate @ 7698]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
406
23643
4a68ddefa857 added a more generic function to read xml files (and made the util version into a wrapper) so it can be used by the
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents: 21552
diff changeset
407 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
408 * purple_xmlnode_from_file:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
409 * @dir: The directory where the file is located
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
410 * @filename: The filename
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
411 * @description: A description of the file being parsed. Displayed to
33889
4efe5c21db45 Doc and code formatting (use spaces not tabs to align comments after code and
Mark Doliner <mark@kingant.net>
parents: 32787
diff changeset
412 * the user if the file cannot be read.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
413 * @process: The subsystem that is calling purple_xmlnode_from_file. Used as
33889
4efe5c21db45 Doc and code formatting (use spaces not tabs to align comments after code and
Mark Doliner <mark@kingant.net>
parents: 32787
diff changeset
414 * the category for debugging.
23643
4a68ddefa857 added a more generic function to read xml files (and made the util version into a wrapper) so it can be used by the
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents: 21552
diff changeset
415 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
416 * Creates a node from a XML File. Calling this on the
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
417 * root node of an XML document will parse the entire document
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
418 * into a tree of nodes, and return the PurpleXmlNode of the root.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
419 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34935
diff changeset
420 * Returns: The new node or NULL if an error occurred.
23643
4a68ddefa857 added a more generic function to read xml files (and made the util version into a wrapper) so it can be used by the
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents: 21552
diff changeset
421 */
34935
686fa55b0deb Replaced xmlnode with PurpleXmlNode, and xmlnode_* API with purple_xmlnode_* API
Ankit Vani <a@nevitus.org>
parents: 34863
diff changeset
422 PurpleXmlNode *purple_xmlnode_from_file(const char *dir, const char *filename,
33889
4efe5c21db45 Doc and code formatting (use spaces not tabs to align comments after code and
Mark Doliner <mark@kingant.net>
parents: 32787
diff changeset
423 const char *description, const char *process);
23643
4a68ddefa857 added a more generic function to read xml files (and made the util version into a wrapper) so it can be used by the
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents: 21552
diff changeset
424
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32554
diff changeset
425 G_END_DECLS
14988
66b34458d49e [gaim-migrate @ 17698]
Richard Laager <rlaager@pidgin.im>
parents: 14498
diff changeset
426
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15609
diff changeset
427 #endif /* _PURPLE_XMLNODE_H_ */
32313
3f58eb41a9a8 Remove deprecated xmlnode functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32206
diff changeset
428

mercurial