72
|
1 #ifndef __ROSTER_H__
|
|
2 #define __ROSTER_H__ 1
|
|
3
|
|
4 #include <glib.h>
|
|
5
|
|
6 # include "jabglue.h"
|
|
7
|
|
8 enum findwhat {
|
|
9 jidsearch,
|
|
10 namesearch
|
|
11 };
|
|
12
|
|
13 // Roster_type is a set of flags, so values should be 2^n
|
|
14 #define ROSTER_TYPE_USER 1
|
|
15 #define ROSTER_TYPE_GROUP 2
|
|
16 #define ROSTER_TYPE_AGENT 4
|
|
17
|
|
18 // Flags:
|
|
19 #define ROSTER_FLAG_MSG 1 // Message not read
|
|
20 #define ROSTER_FLAG_HIDE 2 // Group hidden (or buddy window closed)
|
|
21 #define ROSTER_FLAG_LOCK 4 // Node should not be removed from buddylist
|
|
22 // ROSTER_FLAG_LOCAL 8 // Buddy not on server's roster (??)
|
|
23
|
|
24 extern GList *buddylist;
|
78
|
25 extern GList *current_buddy;
|
72
|
26
|
78
|
27 // Macros...
|
|
28
|
79
|
29 #define BUDDATA(glist_node) ((glist_node)->data)
|
|
30 #define CURRENT_JID buddy_getjid(BUDDATA(current_buddy))
|
78
|
31
|
|
32 // Prototypes...
|
|
33 GSList *roster_add_group(const char *name);
|
|
34 GSList *roster_add_user(const char *jid, const char *name, const char *group,
|
|
35 guint type);
|
|
36 void roster_del_user(const char *jid);
|
|
37 void roster_setstatus(const char *jid, enum imstatus bstat);
|
80
|
38 void roster_setflags(const char *jid, guint flags, guint value);
|
148
|
39 void roster_msg_setflag(const char *jid, guint value);
|
89
|
40 void roster_settype(const char *jid, guint type);
|
90
|
41 enum imstatus roster_getstatus(const char *jid);
|
89
|
42 guint roster_gettype(const char *jid);
|
141
|
43 inline guint roster_exists(const char *jidname, enum findwhat type,
|
|
44 guint roster_type);
|
72
|
45
|
120
|
46 void buddylist_set_hide_offline_buddies(int hide);
|
|
47 inline int buddylist_get_hide_offline_buddies(void);
|
72
|
48 void buddy_hide_group(gpointer rosterdata, int hide);
|
|
49 void buddylist_build(void);
|
|
50 const char *buddy_getjid(gpointer rosterdata);
|
|
51 const char *buddy_getname(gpointer rosterdata);
|
|
52 guint buddy_gettype(gpointer rosterdata);
|
|
53 enum imstatus buddy_getstatus(gpointer rosterdata);
|
119
|
54 void buddy_setflags(gpointer rosterdata, guint flags, guint value);
|
72
|
55 guint buddy_getflags(gpointer rosterdata);
|
|
56
|
|
57 #endif /* __ROSTER_H__ */
|