meanwhile  1.0.2
mw_st_list.h
Go to the documentation of this file.
1 
2 /*
3  Meanwhile - Unofficial Lotus Sametime Community Client Library
4  Copyright (C) 2004 Christopher (siege) O'Brien
5 
6  This library is free software; you can redistribute it and/or
7  modify it under the terms of the GNU Library General Public
8  License as published by the Free Software Foundation; either
9  version 2 of the License, or (at your option) any later version.
10 
11  This library is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  Library General Public License for more details.
15 
16  You should have received a copy of the GNU Library General Public
17  License along with this library; if not, write to the Free
18  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 */
20 
21 #ifndef _MW_ST_LIST_H
22 #define _MW_ST_LIST_H
23 
24 
32 #include <glib.h>
33 #include "mw_common.h"
34 
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
40 
41 #define ST_LIST_MAJOR 3
42 #define ST_LIST_MINOR 1
43 #define ST_LIST_MICRO 3
44 
45 
50 };
51 
52 
57 };
58 
59 
64 
65 
70 
71 
75 struct mwSametimeUser;
76 
77 
80 
81 
83 void mwSametimeList_free(struct mwSametimeList *l);
84 
85 
89 void mwSametimeList_get(struct mwGetBuffer *b, struct mwSametimeList *l);
90 
91 
95 void mwSametimeList_put(struct mwPutBuffer *b, struct mwSametimeList *l);
96 
97 
99 struct mwSametimeList *mwSametimeList_load(const char *str);
100 
101 
103 char *mwSametimeList_store(struct mwSametimeList *l);
104 
105 
106 void mwSametimeList_setMajor(struct mwSametimeList *l, guint v);
107 
108 
109 guint mwSametimeList_getMajor(struct mwSametimeList *l);
110 
111 
112 void mwSametimeList_setMinor(struct mwSametimeList *l, guint v);
113 
114 
115 guint mwSametimeList_getMinor(struct mwSametimeList *l);
116 
117 
118 void mwSametimeList_setMicro(struct mwSametimeList *l, guint v);
119 
120 
121 guint mwSametimeList_getMicro(struct mwSametimeList *l);
122 
123 
125 GList *mwSametimeList_getGroups(struct mwSametimeList *l);
126 
127 
128 struct mwSametimeGroup *
130  const char *name);
131 
132 
134 struct mwSametimeGroup *
136  enum mwSametimeGroupType type,
137  const char *name);
138 
139 
142 void mwSametimeGroup_free(struct mwSametimeGroup *g);
143 
144 
146 
147 
148 const char *mwSametimeGroup_getName(struct mwSametimeGroup *g);
149 
150 
152  const char *alias);
153 
154 
155 const char *mwSametimeGroup_getAlias(struct mwSametimeGroup *g);
156 
157 
158 void mwSametimeGroup_setOpen(struct mwSametimeGroup *g, gboolean open);
159 
160 
161 gboolean mwSametimeGroup_isOpen(struct mwSametimeGroup *g);
162 
163 
165 
166 
168 GList *mwSametimeGroup_getUsers(struct mwSametimeGroup *g);
169 
170 
171 struct mwSametimeUser *
173  struct mwIdBlock *user);
174 
175 
177 struct mwSametimeUser *
179  enum mwSametimeUserType type,
180  struct mwIdBlock *user);
181 
182 
184 void mwSametimeUser_free(struct mwSametimeUser *u);
185 
186 
188 
189 
191 
192 
193 const char *mwSametimeUser_getUser(struct mwSametimeUser *u);
194 
195 
196 const char *mwSametimeUser_getCommunity(struct mwSametimeUser *u);
197 
198 
199 void mwSametimeUser_setShortName(struct mwSametimeUser *u, const char *name);
200 
201 
202 const char *mwSametimeUser_getShortName(struct mwSametimeUser *u);
203 
204 
205 void mwSametimeUser_setAlias(struct mwSametimeUser *u, const char *alias);
206 
207 
208 const char *mwSametimeUser_getAlias(struct mwSametimeUser *u);
209 
210 
211 
212 #ifdef __cplusplus
213 }
214 #endif
215 
216 
217 #endif /* _MW_ST_LIST_H */
const char * mwSametimeUser_getCommunity(struct mwSametimeUser *u)
void mwSametimeList_get(struct mwGetBuffer *b, struct mwSametimeList *l)
Load a sametime list from a buffer.
Represents a group-based buddy list.
struct mwSametimeGroup * mwSametimeUser_getGroup(struct mwSametimeUser *u)
enum mwSametimeGroupType mwSametimeGroup_getType(struct mwSametimeGroup *g)
external user
Definition: mw_st_list.h:55
a server-side group
Definition: mw_st_list.h:48
Represents a group in a buddy list.
Definition: mw_st_list.h:63
buffer to be read from
Definition: mw_common.h:71
enum mwSametimeUserType mwSametimeUser_getType(struct mwSametimeUser *u)
void mwSametimeUser_setShortName(struct mwSametimeUser *u, const char *name)
Represents a user in a group in a buddy list.
Definition: mw_st_list.h:69
const char * mwSametimeGroup_getAlias(struct mwSametimeGroup *g)
guint mwSametimeList_getMicro(struct mwSametimeList *l)
const char * mwSametimeUser_getUser(struct mwSametimeUser *u)
guint mwSametimeList_getMajor(struct mwSametimeList *l)
struct mwSametimeList * mwSametimeList_load(const char *str)
convert a plain string into a sametime list
user on same community
Definition: mw_st_list.h:54
gboolean mwSametimeGroup_isOpen(struct mwSametimeGroup *g)
const char * mwSametimeUser_getAlias(struct mwSametimeUser *u)
error determining group type
Definition: mw_st_list.h:49
Definition: mw_common.h:174
Common data types and functions for handling those types.
mwSametimeGroupType
Definition: mw_st_list.h:46
struct mwSametimeGroup * mwSametimeGroup_new(struct mwSametimeList *l, enum mwSametimeGroupType type, const char *name)
Create a new group in a list.
const char * mwSametimeUser_getShortName(struct mwSametimeUser *u)
void mwSametimeUser_free(struct mwSametimeUser *u)
Remove user from its group, and free it.
struct mwSametimeGroup * mwSametimeList_findGroup(struct mwSametimeList *l, const char *name)
void mwSametimeList_setMicro(struct mwSametimeList *l, guint v)
struct mwSametimeUser * mwSametimeGroup_findUser(struct mwSametimeGroup *g, struct mwIdBlock *user)
const char * mwSametimeGroup_getName(struct mwSametimeGroup *g)
mwSametimeUserType
Definition: mw_st_list.h:53
error determining user type
Definition: mw_st_list.h:56
void mwSametimeList_free(struct mwSametimeList *l)
Free the list, all of its groups, and all of the groups&#39; members.
GList * mwSametimeGroup_getUsers(struct mwSametimeGroup *g)
Get a GList snapshot of the users in a list.
char * mwSametimeList_store(struct mwSametimeList *l)
convert a sametime list into a string
void mwSametimeGroup_setOpen(struct mwSametimeGroup *g, gboolean open)
a normal group of users
Definition: mw_st_list.h:47
guint mwSametimeList_getMinor(struct mwSametimeList *l)
void mwSametimeList_setMinor(struct mwSametimeList *l, guint v)
GList * mwSametimeList_getGroups(struct mwSametimeList *l)
Get a GList snapshot of the groups in a list.
void mwSametimeGroup_free(struct mwSametimeGroup *g)
Remove a group from its list, and free it.
void mwSametimeUser_setAlias(struct mwSametimeUser *u, const char *alias)
struct mwSametimeList * mwSametimeGroup_getList(struct mwSametimeGroup *g)
void mwSametimeList_setMajor(struct mwSametimeList *l, guint v)
void mwSametimeGroup_setAlias(struct mwSametimeGroup *g, const char *alias)
buffer to be written to
struct mwSametimeUser * mwSametimeUser_new(struct mwSametimeGroup *g, enum mwSametimeUserType type, struct mwIdBlock *user)
Create a user in a group.
void mwSametimeList_put(struct mwPutBuffer *b, struct mwSametimeList *l)
Write a sametime list onto a buffer.
struct mwSametimeList * mwSametimeList_new()
Create a new list.