libpurple/blist.h

Mon, 27 Jul 2009 05:20:52 +0000

author
Jan Kaluza <hanzz.k@gmail.com>
date
Mon, 27 Jul 2009 05:20:52 +0000
changeset 27969
ed5bf3c3e328
parent 27739
67040a12ab53
child 28423
c12dbb691b04
permissions
-rw-r--r--

Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.

Patch from Jan "HanzZ" Kaluza with some changes by me so that it's
easier to merge with Sulabh and Eric's SoC projects (mostly so grim
wouldn't yell at me). Anyway, any bugs introduced by me (darkrain42).


committer: Paul Aurich <darkrain42@pidgin.im>

5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 /**
5497
da3c08f3af25 [gaim-migrate @ 5893]
Mark Doliner <markdoliner@pidgin.im>
parents: 5277
diff changeset
2 * @file blist.h Buddy List API
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
3 * @ingroup core
20889
3d0ef192f98c All the links to libpurple signal pages were in the comment containing the
Will Thompson <resiak@pidgin.im>
parents: 20620
diff changeset
4 * @see @ref blist-signals
20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
5 */
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
6
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
7 /* purple
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
8 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
9 * Purple is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 8012
diff changeset
10 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 8012
diff changeset
11 * source distribution.
6485
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
12 *
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 * This program is free software; you can redistribute it and/or modify
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 * it under the terms of the GNU General Public License as published by
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 * the Free Software Foundation; either version 2 of the License, or
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 * (at your option) any later version.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 * This program is distributed in the hope that it will be useful,
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
21 * GNU General Public License for more details.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
22 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 * You should have received a copy of the GNU General Public License
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
24 * 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: 18414
diff changeset
25 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
26 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
27 #ifndef _PURPLE_BLIST_H_
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
28 #define _PURPLE_BLIST_H_
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
29
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
30 /* I can't believe I let ChipX86 inspire me to write good code. -Sean */
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
31
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
32 #include <glib.h>
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
33
23514
f5c4c1cb7b6f Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <resiak@pidgin.im>
parents: 23282
diff changeset
34 /** @copydoc _PurpleBuddyList */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
35 typedef struct _PurpleBuddyList PurpleBuddyList;
23514
f5c4c1cb7b6f Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <resiak@pidgin.im>
parents: 23282
diff changeset
36 /** @copydoc _PurpleBlistUiOps */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
37 typedef struct _PurpleBlistUiOps PurpleBlistUiOps;
23514
f5c4c1cb7b6f Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <resiak@pidgin.im>
parents: 23282
diff changeset
38 /** @copydoc _PurpleBlistNode */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
39 typedef struct _PurpleBlistNode PurpleBlistNode;
5564
1779a1bfbdb8 [gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents: 5563
diff changeset
40
23514
f5c4c1cb7b6f Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <resiak@pidgin.im>
parents: 23282
diff changeset
41 /** @copydoc _PurpleChat */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
42 typedef struct _PurpleChat PurpleChat;
23514
f5c4c1cb7b6f Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <resiak@pidgin.im>
parents: 23282
diff changeset
43 /** @copydoc _PurpleGroup */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
44 typedef struct _PurpleGroup PurpleGroup;
23514
f5c4c1cb7b6f Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <resiak@pidgin.im>
parents: 23282
diff changeset
45 /** @copydoc _PurpleContact */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
46 typedef struct _PurpleContact PurpleContact;
23514
f5c4c1cb7b6f Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <resiak@pidgin.im>
parents: 23282
diff changeset
47 /** @copydoc _PurpleBuddy */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
48 typedef struct _PurpleBuddy PurpleBuddy;
5564
1779a1bfbdb8 [gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents: 5563
diff changeset
49
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
50 /**************************************************************************/
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
51 /* Enumerations */
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
52 /**************************************************************************/
7098
22eabd4f5ed4 [gaim-migrate @ 7663]
Christian Hammond <chipx86@chipx86.com>
parents: 7060
diff changeset
53 typedef enum
22eabd4f5ed4 [gaim-migrate @ 7663]
Christian Hammond <chipx86@chipx86.com>
parents: 7060
diff changeset
54 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
55 PURPLE_BLIST_GROUP_NODE,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
56 PURPLE_BLIST_CONTACT_NODE,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
57 PURPLE_BLIST_BUDDY_NODE,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
58 PURPLE_BLIST_CHAT_NODE,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
59 PURPLE_BLIST_OTHER_NODE
7098
22eabd4f5ed4 [gaim-migrate @ 7663]
Christian Hammond <chipx86@chipx86.com>
parents: 7060
diff changeset
60
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
61 } PurpleBlistNodeType;
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
62
22334
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
63 #define PURPLE_BLIST_NODE_IS_CHAT(n) (purple_blist_node_get_type(n) == PURPLE_BLIST_CHAT_NODE)
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
64 #define PURPLE_BLIST_NODE_IS_BUDDY(n) (purple_blist_node_get_type(n) == PURPLE_BLIST_BUDDY_NODE)
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
65 #define PURPLE_BLIST_NODE_IS_CONTACT(n) (purple_blist_node_get_type(n) == PURPLE_BLIST_CONTACT_NODE)
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
66 #define PURPLE_BLIST_NODE_IS_GROUP(n) (purple_blist_node_get_type(n) == PURPLE_BLIST_GROUP_NODE)
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
67
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
68 #define PURPLE_BUDDY_IS_ONLINE(b) \
22341
ed341c90116e Add accessor and update finch to not touch the internals of PurpleBuddy and PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22334
diff changeset
69 ((b) != NULL && purple_account_is_connected(purple_buddy_get_account(b)) && \
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
70 purple_presence_is_online(purple_buddy_get_presence(b)))
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
71
9787
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
72 typedef enum
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
73 {
25105
fe13c190ca13 Remove the commas at the end of enumerator lists. This resolves warnings
Florian Quèze <florian@instantbird.org>
parents: 24569
diff changeset
74 PURPLE_BLIST_NODE_FLAG_NO_SAVE = 1 << 0 /**< node should not be saved with the buddy list */
10008
1de3454a0dca [gaim-migrate @ 10925]
Mark Doliner <markdoliner@pidgin.im>
parents: 9997
diff changeset
75
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
76 } PurpleBlistNodeFlags;
9787
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
77
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
78 /**
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
79 * @since 2.6.0
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
80 */
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
81 #define PURPLE_BLIST_NODE(obj) ((PurpleBlistNode *)(obj))
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
82
24561
2e1ac0034634 Fix some macros to work with hidden structs.
Richard Laager <rlaager@pidgin.im>
parents: 24548
diff changeset
83 #define PURPLE_BLIST_NODE_HAS_FLAG(b, f) (purple_blist_node_get_flags((PurpleBlistNode*)(b)) & (f))
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
84 #define PURPLE_BLIST_NODE_SHOULD_SAVE(b) (! PURPLE_BLIST_NODE_HAS_FLAG(b, PURPLE_BLIST_NODE_FLAG_NO_SAVE))
9787
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
85
24561
2e1ac0034634 Fix some macros to work with hidden structs.
Richard Laager <rlaager@pidgin.im>
parents: 24548
diff changeset
86 #define PURPLE_BLIST_NODE_NAME(n) (purple_blist_node_get_type(n) == PURPLE_BLIST_CHAT_NODE ? purple_chat_get_name((PurpleChat*)n) : \
2e1ac0034634 Fix some macros to work with hidden structs.
Richard Laager <rlaager@pidgin.im>
parents: 24548
diff changeset
87 purple_blist_node_get_type(n) == PURPLE_BLIST_BUDDY_NODE ? purple_buddy_get_name((PurpleBuddy*)n) : NULL)
12519
2b8971895255 [gaim-migrate @ 14831]
Sean Egan <seanegan@pidgin.im>
parents: 12323
diff changeset
88
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
89 /**
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
90 * @since 2.6.0
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
91 */
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
92 #define PURPLE_GROUP(obj) ((PurpleGroup *)(obj))
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
93
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
94 /**
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
95 * @since 2.6.0
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
96 */
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
97 #define PURPLE_CONTACT(obj) ((PurpleContact *)(obj))
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
98
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
99 /**
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
100 * @since 2.6.0
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
101 */
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
102 #define PURPLE_BUDDY(obj) ((PurpleBuddy *)(obj))
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
103
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
104 /**
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
105 * @since 2.6.0
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
106 */
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
107 #define PURPLE_CHAT(obj) ((PurpleChat *)(obj))
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
108
10008
1de3454a0dca [gaim-migrate @ 10925]
Mark Doliner <markdoliner@pidgin.im>
parents: 9997
diff changeset
109 #include "account.h"
1de3454a0dca [gaim-migrate @ 10925]
Mark Doliner <markdoliner@pidgin.im>
parents: 9997
diff changeset
110 #include "buddyicon.h"
1de3454a0dca [gaim-migrate @ 10925]
Mark Doliner <markdoliner@pidgin.im>
parents: 9997
diff changeset
111 #include "status.h"
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
112
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
113 /**************************************************************************/
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
114 /* Data Structures */
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
115 /**************************************************************************/
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
116
24569
5dbd0617a27d Build everything with the *_DISABLE_DEPRECATED flags set. This allows us
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
117 #if !(defined PURPLE_HIDE_STRUCTS) || (defined _PURPLE_BLIST_C_)
24531
76e72697f7d6 Hide the blistnode, buddy, contact, group, and chat structs
Gary Kramlich <grim@reaperworld.com>
parents: 23514
diff changeset
118
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
119 /**
10566
b681d2b3dec5 [gaim-migrate @ 11949]
Etan Reisner <deryni@pidgin.im>
parents: 10548
diff changeset
120 * A Buddy list node. This can represent a group, a buddy, or anything else.
26388
b692a63519cb Exposing the GHashTable seems crazy to me. See #8644.
Paul Aurich <darkrain42@pidgin.im>
parents: 25889
diff changeset
121 * This is a base class for PurpleBuddy, PurpleContact, PurpleGroup, and for
b692a63519cb Exposing the GHashTable seems crazy to me. See #8644.
Paul Aurich <darkrain42@pidgin.im>
parents: 25889
diff changeset
122 * anything else that wants to put itself in the buddy list. */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
123 struct _PurpleBlistNode {
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
124 PurpleBlistNodeType type; /**< The type of node this is */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
125 PurpleBlistNode *prev; /**< The sibling before this buddy. */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
126 PurpleBlistNode *next; /**< The sibling after this buddy. */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
127 PurpleBlistNode *parent; /**< The parent of this node */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
128 PurpleBlistNode *child; /**< The child of this node */
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
129 GHashTable *settings; /**< per-node settings */
7098
22eabd4f5ed4 [gaim-migrate @ 7663]
Christian Hammond <chipx86@chipx86.com>
parents: 7060
diff changeset
130 void *ui_data; /**< The UI can put data here. */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
131 PurpleBlistNodeFlags flags; /**< The buddy flags */
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
132 };
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
133
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
134 /**
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
135 * A buddy. This contains everything Purple will ever need to know about someone on the buddy list. Everything.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
136 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
137 struct _PurpleBuddy {
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
138 PurpleBlistNode node; /**< The node that this buddy inherits from */
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
139 char *name; /**< The name of the buddy. */
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
140 char *alias; /**< The user-set alias of the buddy */
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
141 char *server_alias; /**< The server-specified alias of the buddy. (i.e. MSN "Friendly Names") */
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
142 void *proto_data; /**< This allows the prpl to associate whatever data it wants with a buddy */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
143 PurpleBuddyIcon *icon; /**< The buddy icon. */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
144 PurpleAccount *account; /**< the account this buddy belongs to */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
145 PurplePresence *presence;
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
146 };
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
147
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
148 /**
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
149 * A contact. This contains everything Purple will ever need to know about a contact.
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
150 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
151 struct _PurpleContact {
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
152 PurpleBlistNode node; /**< The node that this contact inherits from. */
6755
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
153 char *alias; /**< The user-set alias of the contact */
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
154 int totalsize; /**< The number of buddies in this contact */
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
155 int currentsize; /**< The number of buddies in this contact corresponding to online accounts */
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
156 int online; /**< The number of buddies in this contact who are currently online */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
157 PurpleBuddy *priority; /**< The "top" buddy for this contact */
10378
190dba029852 [gaim-migrate @ 11603]
Tim Ringenbach <marv@pidgin.im>
parents: 10350
diff changeset
158 gboolean priority_valid; /**< Is priority valid? */
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
159 };
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
160
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
161
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
162 /**
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
163 * A group. This contains everything Purple will ever need to know about a group.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
164 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
165 struct _PurpleGroup {
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
166 PurpleBlistNode node; /**< The node that this group inherits from */
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
167 char *name; /**< The name of this group. */
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
168 int totalsize; /**< The number of chats and contacts in this group */
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
169 int currentsize; /**< The number of chats and contacts in this group corresponding to online accounts */
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
170 int online; /**< The number of chats and contacts in this group who are currently online */
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
171 };
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
172
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
173 /**
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
174 * A chat. This contains everything Purple needs to put a chat room in the
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
175 * buddy list.
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
176 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
177 struct _PurpleChat {
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
178 PurpleBlistNode node; /**< The node that this chat inherits from */
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
179 char *alias; /**< The display name of this chat. */
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
180 GHashTable *components; /**< the stuff the protocol needs to know to join the chat */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
181 PurpleAccount *account; /**< The account this chat is attached to */
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
182 };
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
183
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
184 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
185 * The Buddy List
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
186 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
187 struct _PurpleBuddyList {
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
188 PurpleBlistNode *root; /**< The first node in the buddy list */
7098
22eabd4f5ed4 [gaim-migrate @ 7663]
Christian Hammond <chipx86@chipx86.com>
parents: 7060
diff changeset
189 GHashTable *buddies; /**< Every buddy in this list */
22eabd4f5ed4 [gaim-migrate @ 7663]
Christian Hammond <chipx86@chipx86.com>
parents: 7060
diff changeset
190 void *ui_data; /**< UI-specific data. */
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
191 };
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
192
24953
af9819fe91cb Hide PurpleBlist
Gary Kramlich <grim@reaperworld.com>
parents: 24950
diff changeset
193 #endif /* PURPLE_HIDE_STRUCTS && PURPLE_BLIST_STRUCTS */
af9819fe91cb Hide PurpleBlist
Gary Kramlich <grim@reaperworld.com>
parents: 24950
diff changeset
194
12054
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
195 /**
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
196 * Buddy list UI operations.
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
197 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
198 * Any UI representing a buddy list must assign a filled-out PurpleBlistUiOps
12054
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
199 * structure to the buddy list core.
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
200 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
201 struct _PurpleBlistUiOps
12054
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
202 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
203 void (*new_list)(PurpleBuddyList *list); /**< Sets UI-specific data on a buddy list. */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
204 void (*new_node)(PurpleBlistNode *node); /**< Sets UI-specific data on a node. */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
205 void (*show)(PurpleBuddyList *list); /**< The core will call this when it's finished doing its core stuff */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
206 void (*update)(PurpleBuddyList *list,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
207 PurpleBlistNode *node); /**< This will update a node in the buddy list. */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
208 void (*remove)(PurpleBuddyList *list,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
209 PurpleBlistNode *node); /**< This removes a node from the list */
26388
b692a63519cb Exposing the GHashTable seems crazy to me. See #8644.
Paul Aurich <darkrain42@pidgin.im>
parents: 25889
diff changeset
210 void (*destroy)(PurpleBuddyList *list); /**< When the list is destroyed, this is called to destroy the UI. */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
211 void (*set_visible)(PurpleBuddyList *list,
12054
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
212 gboolean show); /**< Hides or unhides the buddy list */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
213 void (*request_add_buddy)(PurpleAccount *account, const char *username,
12054
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
214 const char *group, const char *alias);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
215 void (*request_add_chat)(PurpleAccount *account, PurpleGroup *group,
12054
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
216 const char *alias, const char *name);
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
217 void (*request_add_group)(void);
16743
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
218
27969
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
219 /**
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
220 * This is called when a node has been modified and should be saved.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
221 *
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
222 * Implementation of this UI op is OPTIONAL. If not implemented, it will
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
223 * be set to a fallback function that saves data to blist.xml like in
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
224 * previous libpurple versions.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
225 *
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
226 * @attrib node The node which has been modified.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
227 *
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
228 * @since 2.6.0.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
229 */
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
230 void (*save_node)(PurpleBlistNode *node);
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
231
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
232 /**
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
233 * Called when a node is about to be removed from the buddy list.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
234 * The UI op should update the relevant data structures to remove this
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
235 * node (for example, removing a buddy from the group this node is in).
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
236 *
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
237 * Implementation of this UI op is OPTIONAL. If not implemented, it will
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
238 * be set to a fallback function that saves data to blist.xml like in
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
239 * previous libpurple versions.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
240 *
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
241 * @attrib node The node which has been modified.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
242 * @since 2.6.0.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
243 */
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
244 void (*remove_node)(PurpleBlistNode *node);
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
245
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
246 /**
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
247 * Called to save all the data for an account. If the UI sets this,
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
248 * the callback must save the privacy and buddy list data for an account.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
249 * If the account is NULL, save the data for all accounts.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
250 *
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
251 * Implementation of this UI op is OPTIONAL. If not implemented, it will
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
252 * be set to a fallback function that saves data to blist.xml like in
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
253 * previous libpurple versions.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
254 *
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
255 * @attrib account The account whose data to save. If NULL, save all data
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
256 * for all accounts.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
257 * @since 2.6.0.
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
258 */
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
259 void (*save_account)(PurpleAccount *account);
ed5bf3c3e328 Add blist ui-ops to overload the saving of data to blist.xml. Closes #9630.
Jan Kaluza <hanzz.k@gmail.com>
parents: 27739
diff changeset
260
16743
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
261 void (*_purple_reserved1)(void);
12054
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
262 };
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
263
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5906
diff changeset
264 #ifdef __cplusplus
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5906
diff changeset
265 extern "C" {
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5906
diff changeset
266 #endif
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5906
diff changeset
267
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
268 /**************************************************************************/
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
269 /** @name Buddy List API */
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
270 /**************************************************************************/
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
271 /*@{*/
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
272
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
273 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
274 * Creates a new buddy list
10071
d2ba11541693 [gaim-migrate @ 11047]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 10052
diff changeset
275 *
d2ba11541693 [gaim-migrate @ 11047]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 10052
diff changeset
276 * @return The new buddy list.
27739
67040a12ab53 Free the buddy list data some more at shutdown and some deprecations.
Paul Aurich <darkrain42@pidgin.im>
parents: 26994
diff changeset
277 * @deprecated In 3.0.0, this will be handled by purple_blist_init()
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
278 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
279 PurpleBuddyList *purple_blist_new(void);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
280
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
281 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
282 * Sets the main buddy list.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
283 *
10071
d2ba11541693 [gaim-migrate @ 11047]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 10052
diff changeset
284 * @param blist The buddy list you want to use.
27739
67040a12ab53 Free the buddy list data some more at shutdown and some deprecations.
Paul Aurich <darkrain42@pidgin.im>
parents: 26994
diff changeset
285 * @deprecated In 3.0.0, this will be handled by purple_blist_init()
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
286 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
287 void purple_set_blist(PurpleBuddyList *blist);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
288
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
289 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
290 * Returns the main buddy list.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
291 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
292 * @return The main buddy list.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
293 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
294 PurpleBuddyList *purple_get_blist(void);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
295
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
296 /**
13485
0e26756a5fd5 [gaim-migrate @ 15860]
Ethan Blanton <elb@pidgin.im>
parents: 12919
diff changeset
297 * Returns the root node of the main buddy list.
0e26756a5fd5 [gaim-migrate @ 15860]
Ethan Blanton <elb@pidgin.im>
parents: 12919
diff changeset
298 *
0e26756a5fd5 [gaim-migrate @ 15860]
Ethan Blanton <elb@pidgin.im>
parents: 12919
diff changeset
299 * @return The root node.
0e26756a5fd5 [gaim-migrate @ 15860]
Ethan Blanton <elb@pidgin.im>
parents: 12919
diff changeset
300 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
301 PurpleBlistNode *purple_blist_get_root(void);
13485
0e26756a5fd5 [gaim-migrate @ 15860]
Ethan Blanton <elb@pidgin.im>
parents: 12919
diff changeset
302
0e26756a5fd5 [gaim-migrate @ 15860]
Ethan Blanton <elb@pidgin.im>
parents: 12919
diff changeset
303 /**
26994
2dbadd391e9c Me fail English? That's unpossible!
Paul Aurich <darkrain42@pidgin.im>
parents: 26990
diff changeset
304 * Returns a list of every buddy in the list. Use of this function is
2dbadd391e9c Me fail English? That's unpossible!
Paul Aurich <darkrain42@pidgin.im>
parents: 26990
diff changeset
305 * discouraged if you do not actually need every buddy in the list. Use
26990
385ad4d15ae5 Use more efficient purple_find_buddies in bonjour.
Paul Aurich <darkrain42@pidgin.im>
parents: 26831
diff changeset
306 * purple_find_buddies instead.
26388
b692a63519cb Exposing the GHashTable seems crazy to me. See #8644.
Paul Aurich <darkrain42@pidgin.im>
parents: 25889
diff changeset
307 *
26767
7489049a3bde Change purple_blist_get_buddies to return a list instead of the hash table.
Paul Aurich <darkrain42@pidgin.im>
parents: 26742
diff changeset
308 * @return A list of every buddy in the list. Caller is responsible for
7489049a3bde Change purple_blist_get_buddies to return a list instead of the hash table.
Paul Aurich <darkrain42@pidgin.im>
parents: 26742
diff changeset
309 * freeing the list.
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
310 *
26990
385ad4d15ae5 Use more efficient purple_find_buddies in bonjour.
Paul Aurich <darkrain42@pidgin.im>
parents: 26831
diff changeset
311 * @see purple_find_buddies
24953
af9819fe91cb Hide PurpleBlist
Gary Kramlich <grim@reaperworld.com>
parents: 24950
diff changeset
312 * @since 2.6.0
af9819fe91cb Hide PurpleBlist
Gary Kramlich <grim@reaperworld.com>
parents: 24950
diff changeset
313 */
26767
7489049a3bde Change purple_blist_get_buddies to return a list instead of the hash table.
Paul Aurich <darkrain42@pidgin.im>
parents: 26742
diff changeset
314 GSList *purple_blist_get_buddies(void);
24953
af9819fe91cb Hide PurpleBlist
Gary Kramlich <grim@reaperworld.com>
parents: 24950
diff changeset
315
af9819fe91cb Hide PurpleBlist
Gary Kramlich <grim@reaperworld.com>
parents: 24950
diff changeset
316 /**
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
317 * Returns the UI data for the list.
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
318 *
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
319 * @return The UI data for the list.
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
320 *
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
321 * @since 2.6.0
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
322 */
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
323 gpointer purple_blist_get_ui_data(void);
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
324
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
325 /**
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
326 * Sets the UI data for the list.
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
327 *
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
328 * @param ui_data The UI data for the list.
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
329 *
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
330 * @since 2.6.0
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
331 */
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
332 void purple_blist_set_ui_data(gpointer ui_data);
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
333
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
334 /**
12112
86a24bbf9a2c [gaim-migrate @ 14412]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12088
diff changeset
335 * Returns the next node of a given node. This function is to be used to iterate
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
336 * over the tree returned by purple_get_blist.
12112
86a24bbf9a2c [gaim-migrate @ 14412]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12088
diff changeset
337 *
86a24bbf9a2c [gaim-migrate @ 14412]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12088
diff changeset
338 * @param node A node.
86a24bbf9a2c [gaim-migrate @ 14412]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12088
diff changeset
339 * @param offline Whether to include nodes for offline accounts
86a24bbf9a2c [gaim-migrate @ 14412]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12088
diff changeset
340 * @return The next node
22282
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
341 * @see purple_blist_node_get_parent
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
342 * @see purple_blist_node_get_first_child
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
343 * @see purple_blist_node_get_sibling_next
22334
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
344 * @see purple_blist_node_get_sibling_prev
12112
86a24bbf9a2c [gaim-migrate @ 14412]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12088
diff changeset
345 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
346 PurpleBlistNode *purple_blist_node_next(PurpleBlistNode *node, gboolean offline);
12112
86a24bbf9a2c [gaim-migrate @ 14412]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12088
diff changeset
347
86a24bbf9a2c [gaim-migrate @ 14412]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 12088
diff changeset
348 /**
22282
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
349 * Returns the parent node of a given node.
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
350 *
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
351 * @param node A node.
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
352 * @return The parent node.
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
353 * @since 2.4.0
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
354 * @see purple_blist_node_get_first_child
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
355 * @see purple_blist_node_get_sibling_next
22334
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
356 * @see purple_blist_node_get_sibling_prev
22282
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
357 * @see purple_blist_node_next
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
358 */
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
359 PurpleBlistNode *purple_blist_node_get_parent(PurpleBlistNode *node);
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
360
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
361 /**
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
362 * Returns the the first child node of a given node.
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
363 *
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
364 * @param node A node.
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
365 * @return The child node.
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
366 * @since 2.4.0
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
367 * @see purple_blist_node_get_parent
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
368 * @see purple_blist_node_get_sibling_next
22334
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
369 * @see purple_blist_node_get_sibling_prev
22282
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
370 * @see purple_blist_node_next
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
371 */
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
372 PurpleBlistNode *purple_blist_node_get_first_child(PurpleBlistNode *node);
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
373
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
374 /**
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
375 * Returns the sibling node of a given node.
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
376 *
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
377 * @param node A node.
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
378 * @return The sibling node.
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
379 * @since 2.4.0
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
380 * @see purple_blist_node_get_parent
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
381 * @see purple_blist_node_get_first_child
22334
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
382 * @see purple_blist_node_get_sibling_prev
22282
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
383 * @see purple_blist_node_next
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
384 */
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
385 PurpleBlistNode *purple_blist_node_get_sibling_next(PurpleBlistNode *node);
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
386
a964668bd7e4 Add some accessor functions for PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21999
diff changeset
387 /**
22334
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
388 * Returns the previous sibling node of a given node.
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
389 *
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
390 * @param node A node.
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
391 * @return The sibling node.
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
392 * @since 2.4.0
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
393 * @see purple_blist_node_get_parent
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
394 * @see purple_blist_node_get_first_child
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
395 * @see purple_blist_node_get_sibling_next
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
396 * @see purple_blist_node_next
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
397 */
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
398 PurpleBlistNode *purple_blist_node_get_sibling_prev(PurpleBlistNode *node);
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
399
6eec04817c0d Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22283
diff changeset
400 /**
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
401 * Returns the UI data of a given node.
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
402 *
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
403 * @param node The node.
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
404 * @return The UI data.
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
405 * @since 2.6.0
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
406 */
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
407 gpointer purple_blist_node_get_ui_data(const PurpleBlistNode *node);
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
408
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
409 /**
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
410 * Sets the UI data of a given node.
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
411 *
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
412 * @param node The node.
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
413 * @param ui_data The UI data.
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
414 *
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
415 * @since 2.6.0
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
416 */
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
417 void purple_blist_node_set_ui_data(PurpleBlistNode *node, gpointer ui_data);
24968
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
418
2d500d10773f Added purple_blist_get_ui_data, purple_blist_set_ui_data, purple_blist_node_get_ui_data, and purple_blist_node_set_ui_data functions.
Gary Kramlich <grim@reaperworld.com>
parents: 24957
diff changeset
419 /**
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
420 * Shows the buddy list, creating a new one if necessary.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
421 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
422 void purple_blist_show(void);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
423
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
424
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
425 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
426 * Destroys the buddy list window.
27739
67040a12ab53 Free the buddy list data some more at shutdown and some deprecations.
Paul Aurich <darkrain42@pidgin.im>
parents: 26994
diff changeset
427 *
67040a12ab53 Free the buddy list data some more at shutdown and some deprecations.
Paul Aurich <darkrain42@pidgin.im>
parents: 26994
diff changeset
428 * @deprecated The UI is responsible for cleaning up the
67040a12ab53 Free the buddy list data some more at shutdown and some deprecations.
Paul Aurich <darkrain42@pidgin.im>
parents: 26994
diff changeset
429 * PurpleBuddyList->ui_data. purple_blist_uninit() will free the
67040a12ab53 Free the buddy list data some more at shutdown and some deprecations.
Paul Aurich <darkrain42@pidgin.im>
parents: 26994
diff changeset
430 * PurpleBuddyList* itself.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
431 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
432 void purple_blist_destroy(void);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
433
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
434 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
435 * Hides or unhides the buddy list.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
436 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
437 * @param show Whether or not to show the buddy list
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
438 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
439 void purple_blist_set_visible(gboolean show);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
440
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
441 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
442 * Updates a buddy's status.
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
443 *
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
444 * This should only be called from within Purple.
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
445 *
10052
329dad7e2da3 [gaim-migrate @ 11013]
Dave West <kat@users.sourceforge.net>
parents: 10037
diff changeset
446 * @param buddy The buddy whose status has changed.
329dad7e2da3 [gaim-migrate @ 11013]
Dave West <kat@users.sourceforge.net>
parents: 10037
diff changeset
447 * @param old_status The status from which we are changing.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
448 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
449 void purple_blist_update_buddy_status(PurpleBuddy *buddy, PurpleStatus *old_status);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
450
7950
1f1f2fe00cef [gaim-migrate @ 8624]
Evan Schoenberg <evands@pidgin.im>
parents: 7859
diff changeset
451 /**
23282
ceef4b18f664 Add the purple_blist_update_node_icon function and deprecate the
Etan Reisner <deryni@pidgin.im>
parents: 23063
diff changeset
452 * Updates a node's custom icon.
ceef4b18f664 Add the purple_blist_update_node_icon function and deprecate the
Etan Reisner <deryni@pidgin.im>
parents: 23063
diff changeset
453 *
ceef4b18f664 Add the purple_blist_update_node_icon function and deprecate the
Etan Reisner <deryni@pidgin.im>
parents: 23063
diff changeset
454 * @param node The PurpleBlistNode whose custom icon has changed.
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
455 *
23282
ceef4b18f664 Add the purple_blist_update_node_icon function and deprecate the
Etan Reisner <deryni@pidgin.im>
parents: 23063
diff changeset
456 * @since 2.5.0
ceef4b18f664 Add the purple_blist_update_node_icon function and deprecate the
Etan Reisner <deryni@pidgin.im>
parents: 23063
diff changeset
457 */
ceef4b18f664 Add the purple_blist_update_node_icon function and deprecate the
Etan Reisner <deryni@pidgin.im>
parents: 23063
diff changeset
458 void purple_blist_update_node_icon(PurpleBlistNode *node);
ceef4b18f664 Add the purple_blist_update_node_icon function and deprecate the
Etan Reisner <deryni@pidgin.im>
parents: 23063
diff changeset
459
24569
5dbd0617a27d Build everything with the *_DISABLE_DEPRECATED flags set. This allows us
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
460 #if !(defined PURPLE_DISABLE_DEPRECATED) || (defined _PURPLE_BLIST_C_)
23282
ceef4b18f664 Add the purple_blist_update_node_icon function and deprecate the
Etan Reisner <deryni@pidgin.im>
parents: 23063
diff changeset
461 /**
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
462 * Updates a buddy's icon.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
463 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
464 * @param buddy The buddy whose buddy icon has changed
23282
ceef4b18f664 Add the purple_blist_update_node_icon function and deprecate the
Etan Reisner <deryni@pidgin.im>
parents: 23063
diff changeset
465 * @deprecated Use purple_blist_update_node_icon() instead.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
466 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
467 void purple_blist_update_buddy_icon(PurpleBuddy *buddy);
23282
ceef4b18f664 Add the purple_blist_update_node_icon function and deprecate the
Etan Reisner <deryni@pidgin.im>
parents: 23063
diff changeset
468 #endif
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
469
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
470 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
471 * Renames a buddy in the buddy list.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
472 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
473 * @param buddy The buddy whose name will be changed.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
474 * @param name The new name of the buddy.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
475 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
476 void purple_blist_rename_buddy(PurpleBuddy *buddy, const char *name);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
477
12319
42a0e8cecea3 [gaim-migrate @ 14623]
Richard Laager <rlaager@pidgin.im>
parents: 12286
diff changeset
478 /**
42a0e8cecea3 [gaim-migrate @ 14623]
Richard Laager <rlaager@pidgin.im>
parents: 12286
diff changeset
479 * Aliases a contact in the buddy list.
42a0e8cecea3 [gaim-migrate @ 14623]
Richard Laager <rlaager@pidgin.im>
parents: 12286
diff changeset
480 *
42a0e8cecea3 [gaim-migrate @ 14623]
Richard Laager <rlaager@pidgin.im>
parents: 12286
diff changeset
481 * @param contact The contact whose alias will be changed.
42a0e8cecea3 [gaim-migrate @ 14623]
Richard Laager <rlaager@pidgin.im>
parents: 12286
diff changeset
482 * @param alias The contact's alias.
42a0e8cecea3 [gaim-migrate @ 14623]
Richard Laager <rlaager@pidgin.im>
parents: 12286
diff changeset
483 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
484 void purple_blist_alias_contact(PurpleContact *contact, const char *alias);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
485
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
486 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
487 * Aliases a buddy in the buddy list.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
488 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
489 * @param buddy The buddy whose alias will be changed.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
490 * @param alias The buddy's alias.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
491 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
492 void purple_blist_alias_buddy(PurpleBuddy *buddy, const char *alias);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
493
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
494 /**
6059
9934c862ca14 [gaim-migrate @ 6509]
John Silvestri <john.silvestri@gmail.com>
parents: 6058
diff changeset
495 * Sets the server-sent alias of a buddy in the buddy list.
13952
2bc729a80bd3 [gaim-migrate @ 16372]
Mark Doliner <markdoliner@pidgin.im>
parents: 13929
diff changeset
496 * PRPLs should call serv_got_alias() instead of this.
6058
0d5c66a5da5d [gaim-migrate @ 6508]
Mark Doliner <markdoliner@pidgin.im>
parents: 6036
diff changeset
497 *
0d5c66a5da5d [gaim-migrate @ 6508]
Mark Doliner <markdoliner@pidgin.im>
parents: 6036
diff changeset
498 * @param buddy The buddy whose alias will be changed.
0d5c66a5da5d [gaim-migrate @ 6508]
Mark Doliner <markdoliner@pidgin.im>
parents: 6036
diff changeset
499 * @param alias The buddy's "official" alias.
0d5c66a5da5d [gaim-migrate @ 6508]
Mark Doliner <markdoliner@pidgin.im>
parents: 6036
diff changeset
500 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
501 void purple_blist_server_alias_buddy(PurpleBuddy *buddy, const char *alias);
6058
0d5c66a5da5d [gaim-migrate @ 6508]
Mark Doliner <markdoliner@pidgin.im>
parents: 6036
diff changeset
502
0d5c66a5da5d [gaim-migrate @ 6508]
Mark Doliner <markdoliner@pidgin.im>
parents: 6036
diff changeset
503 /**
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
504 * Aliases a chat in the buddy list.
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
505 *
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
506 * @param chat The chat whose alias will be changed.
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
507 * @param alias The chat's new alias.
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
508 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
509 void purple_blist_alias_chat(PurpleChat *chat, const char *alias);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
510
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
511 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
512 * Renames a group
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
513 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
514 * @param group The group to rename
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
515 * @param name The new name
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
516 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
517 void purple_blist_rename_group(PurpleGroup *group, const char *name);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
518
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
519 /**
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
520 * Creates a new chat for the buddy list
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
521 *
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
522 * @param account The account this chat will get added to
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
523 * @param alias The alias of the new chat
15203
1a092806f344 [gaim-migrate @ 17927]
Mark Doliner <markdoliner@pidgin.im>
parents: 14814
diff changeset
524 * @param components The info the prpl needs to join the chat. The
1a092806f344 [gaim-migrate @ 17927]
Mark Doliner <markdoliner@pidgin.im>
parents: 14814
diff changeset
525 * hash function should be g_str_hash() and the
1a092806f344 [gaim-migrate @ 17927]
Mark Doliner <markdoliner@pidgin.im>
parents: 14814
diff changeset
526 * equal function should be g_str_equal().
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
527 * @return A newly allocated chat
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
528 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
529 PurpleChat *purple_chat_new(PurpleAccount *account, const char *alias, GHashTable *components);
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
530
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
531 /**
26742
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
532 * Destroys a chat
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
533 *
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
534 * @param chat The chat to destroy
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
535 */
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
536 void purple_chat_destroy(PurpleChat *chat);
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
537
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
538 /**
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
539 * Adds a new chat to the buddy list.
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
540 *
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
541 * The chat will be inserted right after node or appended to the end
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
542 * of group if node is NULL. If both are NULL, the buddy will be added to
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
543 * the "Chats" group.
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
544 *
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
545 * @param chat The new chat who gets added
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
546 * @param group The group to add the new chat to.
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
547 * @param node The insertion point
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
548 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
549 void purple_blist_add_chat(PurpleChat *chat, PurpleGroup *group, PurpleBlistNode *node);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
550
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
551 /**
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
552 * Creates a new buddy.
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
553 *
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
554 * This function only creates the PurpleBuddy. Use purple_blist_add_buddy
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
555 * to add the buddy to the list and purple_account_add_buddy to sync up
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
556 * with the server.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
557 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
558 * @param account The account this buddy will get added to
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
559 * @param name The name of the new buddy
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
560 * @param alias The alias of the new buddy (or NULL if unaliased)
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
561 * @return A newly allocated buddy
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
562 *
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
563 * @see purple_account_add_buddy
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
564 * @see purple_blist_add_buddy
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
565 */
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
566 PurpleBuddy *purple_buddy_new(PurpleAccount *account, const char *name, const char *alias);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
567
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
568 /**
26742
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
569 * Destroys a buddy
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
570 *
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
571 * @param buddy The buddy to destroy
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
572 */
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
573 void purple_buddy_destroy(PurpleBuddy *buddy);
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
574
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
575 /**
6846
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
576 * Sets a buddy's icon.
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
577 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
578 * This should only be called from within Purple. You probably want to
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
579 * call purple_buddy_icon_set_data().
6846
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
580 *
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
581 * @param buddy The buddy.
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
582 * @param icon The buddy icon.
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
583 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
584 * @see purple_buddy_icon_set_data()
6846
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
585 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
586 void purple_buddy_set_icon(PurpleBuddy *buddy, PurpleBuddyIcon *icon);
6846
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
587
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
588 /**
10037
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
589 * Returns a buddy's account.
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
590 *
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
591 * @param buddy The buddy.
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
592 *
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
593 * @return The account
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
594 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
595 PurpleAccount *purple_buddy_get_account(const PurpleBuddy *buddy);
10037
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
596
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
597 /**
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
598 * Returns a buddy's name
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
599 *
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
600 * @param buddy The buddy.
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
601 *
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
602 * @return The name.
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
603 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
604 const char *purple_buddy_get_name(const PurpleBuddy *buddy);
10037
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
605
5f5b72040fa2 [gaim-migrate @ 10996]
Dave West <kat@users.sourceforge.net>
parents: 10012
diff changeset
606 /**
6846
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
607 * Returns a buddy's icon.
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
608 *
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
609 * @param buddy The buddy.
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
610 *
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
611 * @return The buddy icon.
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
612 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
613 PurpleBuddyIcon *purple_buddy_get_icon(const PurpleBuddy *buddy);
6846
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
614
f814f02dca87 [gaim-migrate @ 7391]
Christian Hammond <chipx86@chipx86.com>
parents: 6843
diff changeset
615 /**
24934
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
616 * Returns a buddy's protocol-specific data.
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
617 *
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
618 * This should only be called from the associated prpl.
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
619 *
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
620 * @param buddy The buddy.
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
621 * @return The protocol data.
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
622 *
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
623 * @see purple_buddy_set_protocol_data()
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
624 * @since 2.6.0
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
625 */
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
626 gpointer purple_buddy_get_protocol_data(const PurpleBuddy *buddy);
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
627
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
628 /**
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
629 * Sets a buddy's protocol-specific data.
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
630 *
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
631 * This should only be called from the associated prpl.
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
632 *
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
633 * @param buddy The buddy.
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
634 * @param data The data.
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
635 *
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
636 * @see purple_buddy_get_protocol_data()
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
637 * @since 2.6.0
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
638 */
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
639 void purple_buddy_set_protocol_data(PurpleBuddy *buddy, gpointer data);
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
640
d78663b75d9f Add purple_buddy_get_protocol_data() and purple_buddy_set_protocol_data()
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
641 /**
7312
69a442443d9c [gaim-migrate @ 7896]
Nathan Walp <nwalp@pidgin.im>
parents: 7246
diff changeset
642 * Returns a buddy's contact.
69a442443d9c [gaim-migrate @ 7896]
Nathan Walp <nwalp@pidgin.im>
parents: 7246
diff changeset
643 *
69a442443d9c [gaim-migrate @ 7896]
Nathan Walp <nwalp@pidgin.im>
parents: 7246
diff changeset
644 * @param buddy The buddy.
69a442443d9c [gaim-migrate @ 7896]
Nathan Walp <nwalp@pidgin.im>
parents: 7246
diff changeset
645 *
69a442443d9c [gaim-migrate @ 7896]
Nathan Walp <nwalp@pidgin.im>
parents: 7246
diff changeset
646 * @return The buddy's contact.
69a442443d9c [gaim-migrate @ 7896]
Nathan Walp <nwalp@pidgin.im>
parents: 7246
diff changeset
647 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
648 PurpleContact *purple_buddy_get_contact(PurpleBuddy *buddy);
7312
69a442443d9c [gaim-migrate @ 7896]
Nathan Walp <nwalp@pidgin.im>
parents: 7246
diff changeset
649
69a442443d9c [gaim-migrate @ 7896]
Nathan Walp <nwalp@pidgin.im>
parents: 7246
diff changeset
650 /**
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9939
diff changeset
651 * Returns a buddy's presence.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9939
diff changeset
652 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9939
diff changeset
653 * @param buddy The buddy.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9939
diff changeset
654 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9939
diff changeset
655 * @return The buddy's presence.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9939
diff changeset
656 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
657 PurplePresence *purple_buddy_get_presence(const PurpleBuddy *buddy);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9939
diff changeset
658
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9939
diff changeset
659 /**
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
660 * Adds a new buddy to the buddy list.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
661 *
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
662 * The buddy will be inserted right after node or prepended to the
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
663 * group if node is NULL. If both are NULL, the buddy will be added to
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
664 * the "Buddies" group.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
665 *
6720
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6695
diff changeset
666 * @param buddy The new buddy who gets added
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6695
diff changeset
667 * @param contact The optional contact to place the buddy in.
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6695
diff changeset
668 * @param group The group to add the new buddy to.
22819
7d360024a0df Super minor documentation improvement
Mark Doliner <markdoliner@pidgin.im>
parents: 22341
diff changeset
669 * @param node The insertion point. Pass in NULL to add the node as
26471
f02860c88d01 Uh, I think this comment is wrong. Or the code is wrong and does silly
Mark Doliner <markdoliner@pidgin.im>
parents: 25889
diff changeset
670 * the first child in the given group.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
671 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
672 void purple_blist_add_buddy(PurpleBuddy *buddy, PurpleContact *contact, PurpleGroup *group, PurpleBlistNode *node);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
673
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
674 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
675 * Creates a new group
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
676 *
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
677 * You can't have more than one group with the same name. Sorry. If you pass
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
678 * this the name of a group that already exists, it will return that group.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
679 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
680 * @param name The name of the new group
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
681 * @return A new group struct
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
682 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
683 PurpleGroup *purple_group_new(const char *name);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
684
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
685 /**
26742
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
686 * Destroys a group
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
687 *
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
688 * @param group The group to destroy
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
689 */
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
690 void purple_group_destroy(PurpleGroup *group);
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
691
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
692 /**
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
693 * Adds a new group to the buddy list.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
694 *
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
695 * The new group will be inserted after insert or prepended to the list if
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
696 * node is NULL.
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
697 *
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
698 * @param group The group
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
699 * @param node The insertion point
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
700 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
701 void purple_blist_add_group(PurpleGroup *group, PurpleBlistNode *node);
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
702
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
703 /**
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
704 * Creates a new contact
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
705 *
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
706 * @return A new contact struct
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
707 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
708 PurpleContact *purple_contact_new(void);
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
709
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
710 /**
26742
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
711 * Destroys a contact
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
712 *
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
713 * @param contact The contact to destroy
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
714 */
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
715 void purple_contact_destroy(PurpleContact *contact);
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
716
48ab41b763bf Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
Nick Hebner <hebnern@gmail.com>
parents: 26471
diff changeset
717 /**
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
718 * Adds a new contact to the buddy list.
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
719 *
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
720 * The new contact will be inserted after insert or prepended to the list if
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
721 * node is NULL.
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
722 *
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
723 * @param contact The contact
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
724 * @param group The group to add the contact to
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
725 * @param node The insertion point
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
726 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
727 void purple_blist_add_contact(PurpleContact *contact, PurpleGroup *group, PurpleBlistNode *node);
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
728
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
729 /**
6965
8e89df586ed1 [gaim-migrate @ 7512]
Nathan Walp <nwalp@pidgin.im>
parents: 6872
diff changeset
730 * Merges two contacts
8e89df586ed1 [gaim-migrate @ 7512]
Nathan Walp <nwalp@pidgin.im>
parents: 6872
diff changeset
731 *
8e89df586ed1 [gaim-migrate @ 7512]
Nathan Walp <nwalp@pidgin.im>
parents: 6872
diff changeset
732 * All of the buddies from source will be moved to target
8e89df586ed1 [gaim-migrate @ 7512]
Nathan Walp <nwalp@pidgin.im>
parents: 6872
diff changeset
733 *
8e89df586ed1 [gaim-migrate @ 7512]
Nathan Walp <nwalp@pidgin.im>
parents: 6872
diff changeset
734 * @param source The contact to merge
7246
e61e8d301b34 [gaim-migrate @ 7823]
Nathan Walp <nwalp@pidgin.im>
parents: 7125
diff changeset
735 * @param node The place to merge to (a buddy or contact)
6965
8e89df586ed1 [gaim-migrate @ 7512]
Nathan Walp <nwalp@pidgin.im>
parents: 6872
diff changeset
736 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
737 void purple_blist_merge_contact(PurpleContact *source, PurpleBlistNode *node);
6965
8e89df586ed1 [gaim-migrate @ 7512]
Nathan Walp <nwalp@pidgin.im>
parents: 6872
diff changeset
738
8e89df586ed1 [gaim-migrate @ 7512]
Nathan Walp <nwalp@pidgin.im>
parents: 6872
diff changeset
739 /**
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
740 * Returns the highest priority buddy for a given contact.
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
741 *
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
742 * @param contact The contact
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
743 * @return The highest priority buddy
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
744 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
745 PurpleBuddy *purple_contact_get_priority_buddy(PurpleContact *contact);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
746
24569
5dbd0617a27d Build everything with the *_DISABLE_DEPRECATED flags set. This allows us
Richard Laager <rlaager@pidgin.im>
parents: 24561
diff changeset
747 #if !(defined PURPLE_DISABLE_DEPRECATED) || (defined _PURPLE_BLIST_C_)
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
748 /**
6755
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
749 * Sets the alias for a contact.
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
750 *
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
751 * @param contact The contact
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
752 * @param alias The alias to set, or NULL to unset
20620
daa111825e61 Looking at purple_contact_set_alias and purple_blist_alias_contact functions
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
753 *
daa111825e61 Looking at purple_contact_set_alias and purple_blist_alias_contact functions
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20147
diff changeset
754 * @deprecated Use purple_blist_alias_contact() instead.
6755
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
755 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
756 void purple_contact_set_alias(PurpleContact *contact, const char *alias);
20808
e3524e9d502c Honor a PURPLE_DISABLE_DEPRECATED define to allow plugins to catch
Richard Laager <rlaager@pidgin.im>
parents: 20620
diff changeset
757 #endif
6755
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
758
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
759 /**
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
760 * Gets the alias for a contact.
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
761 *
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
762 * @param contact The contact
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
763 * @return The alias, or NULL if it is not set.
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
764 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
765 const char *purple_contact_get_alias(PurpleContact *contact);
6755
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
766
2d5c62f8809e [gaim-migrate @ 7287]
Nathan Walp <nwalp@pidgin.im>
parents: 6744
diff changeset
767 /**
9787
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
768 * Determines whether an account owns any buddies in a given contact
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
769 *
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
770 * @param contact The contact to search through.
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
771 * @param account The account.
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
772 *
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
773 * @return TRUE if there are any buddies from account in the contact, or FALSE otherwise.
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
774 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
775 gboolean purple_contact_on_account(PurpleContact *contact, PurpleAccount *account);
9787
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
776
a88b7e860699 [gaim-migrate @ 10655]
Christopher O'Brien <siege@pidgin.im>
parents: 9754
diff changeset
777 /**
10378
190dba029852 [gaim-migrate @ 11603]
Tim Ringenbach <marv@pidgin.im>
parents: 10350
diff changeset
778 * Invalidates the priority buddy so that the next call to
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
779 * purple_contact_get_priority_buddy recomputes it.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9939
diff changeset
780 *
10378
190dba029852 [gaim-migrate @ 11603]
Tim Ringenbach <marv@pidgin.im>
parents: 10350
diff changeset
781 * @param contact The contact
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9939
diff changeset
782 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
783 void purple_contact_invalidate_priority_buddy(PurpleContact *contact);
21611
d38b7c292df5 Clarify what purple_blist_remove_buddy() does somewhat.
Daniel Atallah <datallah@pidgin.im>
parents: 21208
diff changeset
784
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9939
diff changeset
785 /**
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
786 * Removes a buddy from the buddy list and frees the memory allocated to it.
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
787 * This doesn't actually try to remove the buddy from the server list.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
788 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
789 * @param buddy The buddy to be removed
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
790 *
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
791 * @see purple_account_remove_buddy
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
792 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
793 void purple_blist_remove_buddy(PurpleBuddy *buddy);
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
794
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
795 /**
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
796 * Removes a contact, and any buddies it contains, and frees the memory
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
797 * allocated to it. This calls purple_blist_remove_buddy and therefore
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
798 * doesn't remove the buddies from the server list.
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
799 *
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
800 * @param contact The contact to be removed
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
801 *
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
802 * @see purple_blist_remove_buddy
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
803 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
804 void purple_blist_remove_contact(PurpleContact *contact);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
805
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
806 /**
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
807 * Removes a chat from the buddy list and frees the memory allocated to it.
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
808 *
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
809 * @param chat The chat to be removed
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
810 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
811 void purple_blist_remove_chat(PurpleChat *chat);
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
812
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
813 /**
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
814 * Removes a group from the buddy list and frees the memory allocated to it and to
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
815 * its children
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
816 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
817 * @param group The group to be removed
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
818 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
819 void purple_blist_remove_group(PurpleGroup *group);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
820
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
821 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
822 * Returns the alias of a buddy.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
823 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
824 * @param buddy The buddy whose name will be returned.
10349
8edbe78b800c [gaim-migrate @ 11563]
Sean Egan <seanegan@pidgin.im>
parents: 10348
diff changeset
825 * @return The alias (if set), server alias (if set),
8edbe78b800c [gaim-migrate @ 11563]
Sean Egan <seanegan@pidgin.im>
parents: 10348
diff changeset
826 * or NULL.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
827 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
828 const char *purple_buddy_get_alias_only(PurpleBuddy *buddy);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
829
14553
905eb6bb4afb [gaim-migrate @ 17210]
Jérôme Poulin <ticpu@users.sourceforge.net>
parents: 14254
diff changeset
830 /**
905eb6bb4afb [gaim-migrate @ 17210]
Jérôme Poulin <ticpu@users.sourceforge.net>
parents: 14254
diff changeset
831 * Gets the server alias for a buddy.
905eb6bb4afb [gaim-migrate @ 17210]
Jérôme Poulin <ticpu@users.sourceforge.net>
parents: 14254
diff changeset
832 *
905eb6bb4afb [gaim-migrate @ 17210]
Jérôme Poulin <ticpu@users.sourceforge.net>
parents: 14254
diff changeset
833 * @param buddy The buddy whose name will be returned
905eb6bb4afb [gaim-migrate @ 17210]
Jérôme Poulin <ticpu@users.sourceforge.net>
parents: 14254
diff changeset
834 * @return The server alias, or NULL if it is not set.
905eb6bb4afb [gaim-migrate @ 17210]
Jérôme Poulin <ticpu@users.sourceforge.net>
parents: 14254
diff changeset
835 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
836 const char *purple_buddy_get_server_alias(PurpleBuddy *buddy);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
837
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
838 /**
9620
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
839 * Returns the correct name to display for a buddy, taking the contact alias
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
840 * into account. In order of precedence: the buddy's alias; the buddy's
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
841 * contact alias; the buddy's server alias; the buddy's user name.
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
842 *
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
843 * @param buddy The buddy whose name will be returned
9635
4f705de0334c [gaim-migrate @ 10479]
Mark Doliner <markdoliner@pidgin.im>
parents: 9620
diff changeset
844 * @return The appropriate name or alias, or NULL.
9620
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
845 *
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
846 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
847 const char *purple_buddy_get_contact_alias(PurpleBuddy *buddy);
9620
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
848
24948
626ed27a3fd8 Deprecate the unused purple_buddy_get_local_alias() function.
Richard Laager <rlaager@pidgin.im>
parents: 24944
diff changeset
849 #if !(defined PURPLE_DISABLE_DEPRECATED) || (defined _PURPLE_BLIST_C_)
10349
8edbe78b800c [gaim-migrate @ 11563]
Sean Egan <seanegan@pidgin.im>
parents: 10348
diff changeset
850 /**
8edbe78b800c [gaim-migrate @ 11563]
Sean Egan <seanegan@pidgin.im>
parents: 10348
diff changeset
851 * Returns the correct alias for this user, ignoring server aliases. Used
8edbe78b800c [gaim-migrate @ 11563]
Sean Egan <seanegan@pidgin.im>
parents: 10348
diff changeset
852 * when a user-recognizable name is required. In order: buddy's alias; buddy's
8edbe78b800c [gaim-migrate @ 11563]
Sean Egan <seanegan@pidgin.im>
parents: 10348
diff changeset
853 * contact alias; buddy's user name.
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25885
diff changeset
854 *
10349
8edbe78b800c [gaim-migrate @ 11563]
Sean Egan <seanegan@pidgin.im>
parents: 10348
diff changeset
855 * @param buddy The buddy whose alias will be returned.
8edbe78b800c [gaim-migrate @ 11563]
Sean Egan <seanegan@pidgin.im>
parents: 10348
diff changeset
856 * @return The appropriate name or alias.
24948
626ed27a3fd8 Deprecate the unused purple_buddy_get_local_alias() function.
Richard Laager <rlaager@pidgin.im>
parents: 24944
diff changeset
857 * @deprecated Try purple_buddy_get_alias(), if server aliases are okay.
10349
8edbe78b800c [gaim-migrate @ 11563]
Sean Egan <seanegan@pidgin.im>
parents: 10348
diff changeset
858 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
859 const char *purple_buddy_get_local_alias(PurpleBuddy *buddy);
24948
626ed27a3fd8 Deprecate the unused purple_buddy_get_local_alias() function.
Richard Laager <rlaager@pidgin.im>
parents: 24944
diff changeset
860 #endif
9620
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
861
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
862 /**
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
863 * Returns the correct name to display for a buddy. In order of precedence:
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
864 * the buddy's alias; the buddy's server alias; the buddy's contact alias;
fe99fcea5c1c [gaim-migrate @ 10464]
Christopher O'Brien <siege@pidgin.im>
parents: 9460
diff changeset
865 * the buddy's user name.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
866 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
867 * @param buddy The buddy whose name will be returned.
9635
4f705de0334c [gaim-migrate @ 10479]
Mark Doliner <markdoliner@pidgin.im>
parents: 9620
diff changeset
868 * @return The appropriate name or alias, or NULL
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
869 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
870 const char *purple_buddy_get_alias(PurpleBuddy *buddy);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
871
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
872 /**
24950
143f594f0cd0 Alias foo. I think blist.h structs are now completely hidden.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24948
diff changeset
873 * Returns the local alias for the buddy, or @c NULL if none exists.
143f594f0cd0 Alias foo. I think blist.h structs are now completely hidden.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24948
diff changeset
874 *
143f594f0cd0 Alias foo. I think blist.h structs are now completely hidden.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24948
diff changeset
875 * @param buddy The buddy
143f594f0cd0 Alias foo. I think blist.h structs are now completely hidden.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24948
diff changeset
876 * @return The local alias for the buddy
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
877 *
24957
647853a842da A couple of minor fixes.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24953
diff changeset
878 * @since 2.6.0
24950
143f594f0cd0 Alias foo. I think blist.h structs are now completely hidden.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24948
diff changeset
879 */
143f594f0cd0 Alias foo. I think blist.h structs are now completely hidden.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24948
diff changeset
880 const char *purple_buddy_get_local_buddy_alias(PurpleBuddy *buddy);
143f594f0cd0 Alias foo. I think blist.h structs are now completely hidden.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24948
diff changeset
881
143f594f0cd0 Alias foo. I think blist.h structs are now completely hidden.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 24948
diff changeset
882 /**
6744
340fa61c8180 [gaim-migrate @ 7276]
Nathan Walp <nwalp@pidgin.im>
parents: 6735
diff changeset
883 * Returns the correct name to display for a blist chat.
340fa61c8180 [gaim-migrate @ 7276]
Nathan Walp <nwalp@pidgin.im>
parents: 6735
diff changeset
884 *
340fa61c8180 [gaim-migrate @ 7276]
Nathan Walp <nwalp@pidgin.im>
parents: 6735
diff changeset
885 * @param chat The chat whose name will be returned.
340fa61c8180 [gaim-migrate @ 7276]
Nathan Walp <nwalp@pidgin.im>
parents: 6735
diff changeset
886 * @return The alias (if set), or first component value.
340fa61c8180 [gaim-migrate @ 7276]
Nathan Walp <nwalp@pidgin.im>
parents: 6735
diff changeset
887 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
888 const char *purple_chat_get_name(PurpleChat *chat);
6744
340fa61c8180 [gaim-migrate @ 7276]
Nathan Walp <nwalp@pidgin.im>
parents: 6735
diff changeset
889
340fa61c8180 [gaim-migrate @ 7276]
Nathan Walp <nwalp@pidgin.im>
parents: 6735
diff changeset
890 /**
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
891 * Finds the buddy struct given a name and an account
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
892 *
10071
d2ba11541693 [gaim-migrate @ 11047]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 10052
diff changeset
893 * @param account The account this buddy belongs to
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
894 * @param name The buddy's name
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
895 * @return The buddy or NULL if the buddy does not exist
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
896 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
897 PurpleBuddy *purple_find_buddy(PurpleAccount *account, const char *name);
6245
f7548d168415 [gaim-migrate @ 6739]
Nathan Walp <nwalp@pidgin.im>
parents: 6063
diff changeset
898
f7548d168415 [gaim-migrate @ 6739]
Nathan Walp <nwalp@pidgin.im>
parents: 6063
diff changeset
899 /**
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
900 * Finds the buddy struct given a name, an account, and a group
6872
61144295083e [gaim-migrate @ 7418]
Nathan Walp <nwalp@pidgin.im>
parents: 6846
diff changeset
901 *
10071
d2ba11541693 [gaim-migrate @ 11047]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 10052
diff changeset
902 * @param account The account this buddy belongs to
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
903 * @param name The buddy's name
6872
61144295083e [gaim-migrate @ 7418]
Nathan Walp <nwalp@pidgin.im>
parents: 6846
diff changeset
904 * @param group The group to look in
61144295083e [gaim-migrate @ 7418]
Nathan Walp <nwalp@pidgin.im>
parents: 6846
diff changeset
905 * @return The buddy or NULL if the buddy does not exist in the group
61144295083e [gaim-migrate @ 7418]
Nathan Walp <nwalp@pidgin.im>
parents: 6846
diff changeset
906 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
907 PurpleBuddy *purple_find_buddy_in_group(PurpleAccount *account, const char *name,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
908 PurpleGroup *group);
6872
61144295083e [gaim-migrate @ 7418]
Nathan Walp <nwalp@pidgin.im>
parents: 6846
diff changeset
909
61144295083e [gaim-migrate @ 7418]
Nathan Walp <nwalp@pidgin.im>
parents: 6846
diff changeset
910 /**
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
911 * Finds all PurpleBuddy structs given a name and an account
6245
f7548d168415 [gaim-migrate @ 6739]
Nathan Walp <nwalp@pidgin.im>
parents: 6063
diff changeset
912 *
10071
d2ba11541693 [gaim-migrate @ 11047]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 10052
diff changeset
913 * @param account The account this buddy belongs to
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
914 * @param name The buddy's name (or NULL to return all buddies for the account)
6245
f7548d168415 [gaim-migrate @ 6739]
Nathan Walp <nwalp@pidgin.im>
parents: 6063
diff changeset
915 *
f7548d168415 [gaim-migrate @ 6739]
Nathan Walp <nwalp@pidgin.im>
parents: 6063
diff changeset
916 * @return A GSList of buddies (which must be freed), or NULL if the buddy doesn't exist
f7548d168415 [gaim-migrate @ 6739]
Nathan Walp <nwalp@pidgin.im>
parents: 6063
diff changeset
917 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
918 GSList *purple_find_buddies(PurpleAccount *account, const char *name);
6245
f7548d168415 [gaim-migrate @ 6739]
Nathan Walp <nwalp@pidgin.im>
parents: 6063
diff changeset
919
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
920
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
921 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
922 * Finds a group by name
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
923 *
18414
b08108fc6ffc Add a missing apostrophe in a comment.
Will Thompson <resiak@pidgin.im>
parents: 18412
diff changeset
924 * @param name The group's name
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
925 * @return The group or NULL if the group does not exist
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
926 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
927 PurpleGroup *purple_find_group(const char *name);
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
928
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
929 /**
6456
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
930 * Finds a chat by name.
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
931 *
6720
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6695
diff changeset
932 * @param account The chat's account.
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6695
diff changeset
933 * @param name The chat's name.
6456
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
934 *
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
935 * @return The chat, or @c NULL if the chat does not exist.
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
936 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
937 PurpleChat *purple_blist_find_chat(PurpleAccount *account, const char *name);
6456
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
938
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
939 /**
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
940 * Returns the group of which the chat is a member.
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
941 *
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
942 * @param chat The chat.
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
943 *
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
944 * @return The parent group, or @c NULL if the chat is not in a group.
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
945 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
946 PurpleGroup *purple_chat_get_group(PurpleChat *chat);
6456
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
947
e4e7dee16c1a [gaim-migrate @ 6965]
Christian Hammond <chipx86@chipx86.com>
parents: 6245
diff changeset
948 /**
22283
078d7f35f0f1 Add an accessor function for PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22282
diff changeset
949 * Returns the account the chat belongs to.
078d7f35f0f1 Add an accessor function for PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22282
diff changeset
950 *
078d7f35f0f1 Add an accessor function for PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22282
diff changeset
951 * @param chat The chat.
078d7f35f0f1 Add an accessor function for PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22282
diff changeset
952 *
078d7f35f0f1 Add an accessor function for PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22282
diff changeset
953 * @return The account the chat belongs to.
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
954 *
22283
078d7f35f0f1 Add an accessor function for PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22282
diff changeset
955 * @since 2.4.0
078d7f35f0f1 Add an accessor function for PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22282
diff changeset
956 */
078d7f35f0f1 Add an accessor function for PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22282
diff changeset
957 PurpleAccount *purple_chat_get_account(PurpleChat *chat);
078d7f35f0f1 Add an accessor function for PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22282
diff changeset
958
078d7f35f0f1 Add an accessor function for PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22282
diff changeset
959 /**
22341
ed341c90116e Add accessor and update finch to not touch the internals of PurpleBuddy and PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22334
diff changeset
960 * Get a hashtable containing information about a chat.
ed341c90116e Add accessor and update finch to not touch the internals of PurpleBuddy and PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22334
diff changeset
961 *
ed341c90116e Add accessor and update finch to not touch the internals of PurpleBuddy and PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22334
diff changeset
962 * @param chat The chat.
ed341c90116e Add accessor and update finch to not touch the internals of PurpleBuddy and PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22334
diff changeset
963 *
ed341c90116e Add accessor and update finch to not touch the internals of PurpleBuddy and PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22334
diff changeset
964 * @constreturn The hashtable.
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
965 *
22341
ed341c90116e Add accessor and update finch to not touch the internals of PurpleBuddy and PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22334
diff changeset
966 * @since 2.4.0
ed341c90116e Add accessor and update finch to not touch the internals of PurpleBuddy and PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22334
diff changeset
967 */
ed341c90116e Add accessor and update finch to not touch the internals of PurpleBuddy and PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22334
diff changeset
968 GHashTable *purple_chat_get_components(PurpleChat *chat);
ed341c90116e Add accessor and update finch to not touch the internals of PurpleBuddy and PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22334
diff changeset
969
ed341c90116e Add accessor and update finch to not touch the internals of PurpleBuddy and PurpleChat.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 22334
diff changeset
970 /**
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
971 * Returns the group of which the buddy is a member.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
972 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
973 * @param buddy The buddy
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
974 * @return The group or NULL if the buddy is not in a group
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
975 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
976 PurpleGroup *purple_buddy_get_group(PurpleBuddy *buddy);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
977
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
978
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
979 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
980 * Returns a list of accounts that have buddies in this group
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
981 *
6720
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6695
diff changeset
982 * @param g The group
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6695
diff changeset
983 *
21999
471bfda14434 Fix up a doxygen comment about a function return value.
Etan Reisner <deryni@pidgin.im>
parents: 21648
diff changeset
984 * @return A GSList of accounts (which must be freed), or NULL if the group
471bfda14434 Fix up a doxygen comment about a function return value.
Etan Reisner <deryni@pidgin.im>
parents: 21648
diff changeset
985 * has no accounts.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
986 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
987 GSList *purple_group_get_accounts(PurpleGroup *g);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
988
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
989 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
990 * Determines whether an account owns any buddies in a given group
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
991 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
992 * @param g The group to search through.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
993 * @param account The account.
6720
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6695
diff changeset
994 *
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6695
diff changeset
995 * @return TRUE if there are any buddies in the group, or FALSE otherwise.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
996 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
997 gboolean purple_group_on_account(PurpleGroup *g, PurpleAccount *account);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
998
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
999 /**
16822
d1ee7a30e9b8 Add a missing function useful for dbus clients, requested by Andrey Kostenko. And fix a crash from badly written dbus code.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16743
diff changeset
1000 * Returns the name of a group.
d1ee7a30e9b8 Add a missing function useful for dbus clients, requested by Andrey Kostenko. And fix a crash from badly written dbus code.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16743
diff changeset
1001 *
d1ee7a30e9b8 Add a missing function useful for dbus clients, requested by Andrey Kostenko. And fix a crash from badly written dbus code.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16743
diff changeset
1002 * @param group The group.
d1ee7a30e9b8 Add a missing function useful for dbus clients, requested by Andrey Kostenko. And fix a crash from badly written dbus code.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16743
diff changeset
1003 *
d1ee7a30e9b8 Add a missing function useful for dbus clients, requested by Andrey Kostenko. And fix a crash from badly written dbus code.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16743
diff changeset
1004 * @return The name of the group.
d1ee7a30e9b8 Add a missing function useful for dbus clients, requested by Andrey Kostenko. And fix a crash from badly written dbus code.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16743
diff changeset
1005 */
d1ee7a30e9b8 Add a missing function useful for dbus clients, requested by Andrey Kostenko. And fix a crash from badly written dbus code.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16743
diff changeset
1006 const char *purple_group_get_name(PurpleGroup *group);
d1ee7a30e9b8 Add a missing function useful for dbus clients, requested by Andrey Kostenko. And fix a crash from badly written dbus code.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16743
diff changeset
1007
d1ee7a30e9b8 Add a missing function useful for dbus clients, requested by Andrey Kostenko. And fix a crash from badly written dbus code.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16743
diff changeset
1008 /**
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
1009 * Called when an account connects. Tells the UI to update all the
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
1010 * buddies.
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
1011 *
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
1012 * @param account The account
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
1013 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1014 void purple_blist_add_account(PurpleAccount *account);
5234
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
1015
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
1016
8320a1cb0274 [gaim-migrate @ 5604]
Nathan Walp <nwalp@pidgin.im>
parents: 5228
diff changeset
1017 /**
26390
b0cde401fca4 More documentation (mostly little changes)
Paul Aurich <darkrain42@pidgin.im>
parents: 26388
diff changeset
1018 * Called when an account disconnects. Sets the presence of all the buddies to 0
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1019 * and tells the UI to update them.
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1020 *
6695
2a63688f0d6d [gaim-migrate @ 7221]
Nathan Walp <nwalp@pidgin.im>
parents: 6485
diff changeset
1021 * @param account The account
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1022 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1023 void purple_blist_remove_account(PurpleAccount *account);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1024
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1025
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1026 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1027 * Determines the total size of a group
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1028 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1029 * @param group The group
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1030 * @param offline Count buddies in offline accounts
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1031 * @return The number of buddies in the group
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1032 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1033 int purple_blist_get_group_size(PurpleGroup *group, gboolean offline);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1034
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1035 /**
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1036 * Determines the number of online buddies in a group
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1037 *
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1038 * @param group The group
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1039 * @return The number of online buddies in the group, or 0 if the group is NULL
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1040 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1041 int purple_blist_get_group_online_count(PurpleGroup *group);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1042
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1043 /*@}*/
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1044
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1045 /****************************************************************************************/
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1046 /** @name Buddy list file management API */
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1047 /****************************************************************************************/
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1048
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1049 /**
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1050 * Loads the buddy list from ~/.purple/blist.xml.
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1051 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1052 void purple_blist_load(void);
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1053
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1054 /**
10704
99a466f384d2 [gaim-migrate @ 12288]
Mark Doliner <markdoliner@pidgin.im>
parents: 10662
diff changeset
1055 * Schedule a save of the blist.xml file. This is used by the privacy
99a466f384d2 [gaim-migrate @ 12288]
Mark Doliner <markdoliner@pidgin.im>
parents: 10662
diff changeset
1056 * API whenever the privacy settings are changed. If you make a change
99a466f384d2 [gaim-migrate @ 12288]
Mark Doliner <markdoliner@pidgin.im>
parents: 10662
diff changeset
1057 * to blist.xml using one of the functions in the buddy list API, then
99a466f384d2 [gaim-migrate @ 12288]
Mark Doliner <markdoliner@pidgin.im>
parents: 10662
diff changeset
1058 * the buddy list is saved automatically, so you should not need to
99a466f384d2 [gaim-migrate @ 12288]
Mark Doliner <markdoliner@pidgin.im>
parents: 10662
diff changeset
1059 * call this.
10350
a72a43212626 [gaim-migrate @ 11565]
Mark Doliner <markdoliner@pidgin.im>
parents: 10349
diff changeset
1060 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1061 void purple_blist_schedule_save(void);
10350
a72a43212626 [gaim-migrate @ 11565]
Mark Doliner <markdoliner@pidgin.im>
parents: 10349
diff changeset
1062
a72a43212626 [gaim-migrate @ 11565]
Mark Doliner <markdoliner@pidgin.im>
parents: 10349
diff changeset
1063 /**
7060
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1064 * Requests from the user information needed to add a buddy to the
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1065 * buddy list.
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1066 *
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1067 * @param account The account the buddy is added to.
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1068 * @param username The username of the buddy.
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1069 * @param group The name of the group to place the buddy in.
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1070 * @param alias The optional alias for the buddy.
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1071 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1072 void purple_blist_request_add_buddy(PurpleAccount *account, const char *username,
7060
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1073 const char *group, const char *alias);
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1074
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1075 /**
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1076 * Requests from the user information needed to add a chat to the
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1077 * buddy list.
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1078 *
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1079 * @param account The account the buddy is added to.
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1080 * @param group The optional group to add the chat to.
9000
ff260ac20c29 [gaim-migrate @ 9775]
Gary Kramlich <grim@pidgin.im>
parents: 8952
diff changeset
1081 * @param alias The optional alias for the chat.
9939
9a2960bb4600 [gaim-migrate @ 10831]
Gary Kramlich <grim@pidgin.im>
parents: 9927
diff changeset
1082 * @param name The required chat name.
7060
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1083 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1084 void purple_blist_request_add_chat(PurpleAccount *account, PurpleGroup *group,
9754
3a17eee239b2 [gaim-migrate @ 10621]
Nathan Fredrickson <nathan@silverorange.com>
parents: 9713
diff changeset
1085 const char *alias, const char *name);
7060
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1086
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1087 /**
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1088 * Requests from the user information needed to add a group to the
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1089 * buddy list.
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1090 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1091 void purple_blist_request_add_group(void);
7060
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1092
717cbeb22b6d [gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
1093 /**
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1094 * Associates a boolean with a node in the buddy list
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1095 *
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1096 * @param node The node to associate the data with
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1097 * @param key The identifier for the data
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1098 * @param value The value to set
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1099 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1100 void purple_blist_node_set_bool(PurpleBlistNode *node, const char *key, gboolean value);
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1101
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1102 /**
8735
01248ea222d3 [gaim-migrate @ 9490]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 8710
diff changeset
1103 * Retrieves a named boolean setting from a node in the buddy list
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1104 *
8735
01248ea222d3 [gaim-migrate @ 9490]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 8710
diff changeset
1105 * @param node The node to retrieve the data from
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1106 * @param key The identifier of the data
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1107 *
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1108 * @return The value, or FALSE if there is no setting
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1109 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1110 gboolean purple_blist_node_get_bool(PurpleBlistNode *node, const char *key);
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1111
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1112 /**
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1113 * Associates an integer with a node in the buddy list
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1114 *
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1115 * @param node The node to associate the data with
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1116 * @param key The identifier for the data
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1117 * @param value The value to set
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1118 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1119 void purple_blist_node_set_int(PurpleBlistNode *node, const char *key, int value);
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1120
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1121 /**
8735
01248ea222d3 [gaim-migrate @ 9490]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 8710
diff changeset
1122 * Retrieves a named integer setting from a node in the buddy list
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1123 *
8735
01248ea222d3 [gaim-migrate @ 9490]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 8710
diff changeset
1124 * @param node The node to retrieve the data from
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1125 * @param key The identifier of the data
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1126 *
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1127 * @return The value, or 0 if there is no setting
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1128 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1129 int purple_blist_node_get_int(PurpleBlistNode *node, const char *key);
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1130
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1131 /**
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1132 * Associates a string with a node in the buddy list
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1133 *
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1134 * @param node The node to associate the data with
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1135 * @param key The identifier for the data
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1136 * @param value The value to set
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1137 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1138 void purple_blist_node_set_string(PurpleBlistNode *node, const char *key,
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1139 const char *value);
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1140
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1141 /**
8735
01248ea222d3 [gaim-migrate @ 9490]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 8710
diff changeset
1142 * Retrieves a named string setting from a node in the buddy list
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1143 *
8735
01248ea222d3 [gaim-migrate @ 9490]
Jonathan Champ <royanee@users.sourceforge.net>
parents: 8710
diff changeset
1144 * @param node The node to retrieve the data from
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1145 * @param key The identifier of the data
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1146 *
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1147 * @return The value, or NULL if there is no setting
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1148 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1149 const char *purple_blist_node_get_string(PurpleBlistNode *node, const char *key);
7693
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1150
1f736efbd12d [gaim-migrate @ 8338]
Nathan Walp <nwalp@pidgin.im>
parents: 7674
diff changeset
1151 /**
7811
ac4d00073eee [gaim-migrate @ 8458]
Ethan Blanton <elb@pidgin.im>
parents: 7693
diff changeset
1152 * Removes a named setting from a blist node
ac4d00073eee [gaim-migrate @ 8458]
Ethan Blanton <elb@pidgin.im>
parents: 7693
diff changeset
1153 *
ac4d00073eee [gaim-migrate @ 8458]
Ethan Blanton <elb@pidgin.im>
parents: 7693
diff changeset
1154 * @param node The node from which to remove the setting
ac4d00073eee [gaim-migrate @ 8458]
Ethan Blanton <elb@pidgin.im>
parents: 7693
diff changeset
1155 * @param key The name of the setting
ac4d00073eee [gaim-migrate @ 8458]
Ethan Blanton <elb@pidgin.im>
parents: 7693
diff changeset
1156 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1157 void purple_blist_node_remove_setting(PurpleBlistNode *node, const char *key);
7811
ac4d00073eee [gaim-migrate @ 8458]
Ethan Blanton <elb@pidgin.im>
parents: 7693
diff changeset
1158
10548
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1159 /**
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1160 * Set the flags for the given node. Setting a node's flags will overwrite
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1161 * the old flags, so if you want to save them, you must first call
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1162 * purple_blist_node_get_flags and modify that appropriately.
10548
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1163 *
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1164 * @param node The node on which to set the flags.
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1165 * @param flags The flags to set. This is a bitmask.
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1166 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1167 void purple_blist_node_set_flags(PurpleBlistNode *node, PurpleBlistNodeFlags flags);
10548
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1168
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1169 /**
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1170 * Get the current flags on a given node.
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1171 *
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1172 * @param node The node from which to get the flags.
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1173 *
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1174 * @return The flags on the node. This is a bitmask.
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1175 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1176 PurpleBlistNodeFlags purple_blist_node_get_flags(PurpleBlistNode *node);
10548
990b3ec2758e [gaim-migrate @ 11918]
Mark Doliner <markdoliner@pidgin.im>
parents: 10433
diff changeset
1177
17859
afbace92af8d New function purple_blist_node_get_type.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16822
diff changeset
1178 /**
afbace92af8d New function purple_blist_node_get_type.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16822
diff changeset
1179 * Get the type of a given node.
afbace92af8d New function purple_blist_node_get_type.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16822
diff changeset
1180 *
afbace92af8d New function purple_blist_node_get_type.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16822
diff changeset
1181 * @param node The node.
afbace92af8d New function purple_blist_node_get_type.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16822
diff changeset
1182 *
afbace92af8d New function purple_blist_node_get_type.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16822
diff changeset
1183 * @return The type of the node.
25885
5b5e2ca316b2 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <markdoliner@pidgin.im>
parents: 25119
diff changeset
1184 *
23063
9458eafda32c Assorted cleanups, mostly to the Doxygen comments. I added a few missing
Richard Laager <rlaager@pidgin.im>
parents: 22819
diff changeset
1185 * @since 2.1.0
17859
afbace92af8d New function purple_blist_node_get_type.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16822
diff changeset
1186 */
afbace92af8d New function purple_blist_node_get_type.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16822
diff changeset
1187 PurpleBlistNodeType purple_blist_node_get_type(PurpleBlistNode *node);
afbace92af8d New function purple_blist_node_get_type.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16822
diff changeset
1188
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1189 /*@}*/
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1190
8710
360b660e428d [gaim-migrate @ 9464]
Christian Hammond <chipx86@chipx86.com>
parents: 8046
diff changeset
1191 /**
9030
7b574a641391 [gaim-migrate @ 9806]
Mark Doliner <markdoliner@pidgin.im>
parents: 9013
diff changeset
1192 * Retrieves the extended menu items for a buddy list node.
12286
08d994091c36 [gaim-migrate @ 14590]
Etan Reisner <deryni@pidgin.im>
parents: 12112
diff changeset
1193 * @param n The blist node for which to obtain the extended menu items.
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1194 * @return A list of PurpleMenuAction items, as harvested by the
12286
08d994091c36 [gaim-migrate @ 14590]
Etan Reisner <deryni@pidgin.im>
parents: 12112
diff changeset
1195 * blist-node-extended-menu signal.
9030
7b574a641391 [gaim-migrate @ 9806]
Mark Doliner <markdoliner@pidgin.im>
parents: 9013
diff changeset
1196 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1197 GList *purple_blist_node_get_extended_menu(PurpleBlistNode *n);
9030
7b574a641391 [gaim-migrate @ 9806]
Mark Doliner <markdoliner@pidgin.im>
parents: 9013
diff changeset
1198
5228
83adaad2deb1 [gaim-migrate @ 5598]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1199 /**************************************************************************/
12054
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1200 /** @name UI Registration Functions */
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1201 /**************************************************************************/
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1202 /*@{*/
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1203
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1204 /**
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1205 * Sets the UI operations structure to be used for the buddy list.
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1206 *
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1207 * @param ops The ops struct.
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1208 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1209 void purple_blist_set_ui_ops(PurpleBlistUiOps *ops);
12054
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1210
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1211 /**
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1212 * Returns the UI operations structure to be used for the buddy list.
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1213 *
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1214 * @return The UI operations structure.
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1215 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1216 PurpleBlistUiOps *purple_blist_get_ui_ops(void);
12054
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1217
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1218 /*@}*/
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1219
024e234b348b [gaim-migrate @ 14349]
Nathan Walp <nwalp@pidgin.im>
parents: 12053
diff changeset
1220 /**************************************************************************/
6485
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1221 /** @name Buddy List Subsystem */
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1222 /**************************************************************************/
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1223 /*@{*/
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1224
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1225 /**
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1226 * Returns the handle for the buddy list subsystem.
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1227 *
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1228 * @return The buddy list subsystem handle.
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1229 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1230 void *purple_blist_get_handle(void);
6485
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1231
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1232 /**
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1233 * Initializes the buddy list subsystem.
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1234 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1235 void purple_blist_init(void);
6485
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1236
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1237 /**
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1238 * Uninitializes the buddy list subsystem.
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1239 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1240 void purple_blist_uninit(void);
6485
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1241
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1242 /*@}*/
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 6456
diff changeset
1243
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5906
diff changeset
1244 #ifdef __cplusplus
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5906
diff changeset
1245 }
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5906
diff changeset
1246 #endif
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5906
diff changeset
1247
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1248 #endif /* _PURPLE_BLIST_H_ */

mercurial