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 <glib.h>
34 #include "mw_common.h"
35 
36 
37 #ifdef __cplusplus
38 extern "C" {
39 #endif
40 
41 
42 #define ST_LIST_MAJOR 3
43 #define ST_LIST_MINOR 1
44 #define ST_LIST_MICRO 3
45 
46 
51 };
52 
53 
58 };
59 
60 
65 
66 
71 
72 
76 struct mwSametimeUser;
77 
78 
81 
82 
84 void mwSametimeList_free(struct mwSametimeList *l);
85 
86 
90 void mwSametimeList_get(struct mwGetBuffer *b, struct mwSametimeList *l);
91 
92 
96 void mwSametimeList_put(struct mwPutBuffer *b, struct mwSametimeList *l);
97 
98 
100 struct mwSametimeList *mwSametimeList_load(const char *str);
101 
102 
104 char *mwSametimeList_store(struct mwSametimeList *l);
105 
106 
107 void mwSametimeList_setMajor(struct mwSametimeList *l, guint v);
108 
109 
110 guint mwSametimeList_getMajor(struct mwSametimeList *l);
111 
112 
113 void mwSametimeList_setMinor(struct mwSametimeList *l, guint v);
114 
115 
116 guint mwSametimeList_getMinor(struct mwSametimeList *l);
117 
118 
119 void mwSametimeList_setMicro(struct mwSametimeList *l, guint v);
120 
121 
122 guint mwSametimeList_getMicro(struct mwSametimeList *l);
123 
124 
126 GList *mwSametimeList_getGroups(struct mwSametimeList *l);
127 
128 
129 struct mwSametimeGroup *
131  const char *name);
132 
133 
135 struct mwSametimeGroup *
137  enum mwSametimeGroupType type,
138  const char *name);
139 
140 
143 void mwSametimeGroup_free(struct mwSametimeGroup *g);
144 
145 
147 
148 
149 const char *mwSametimeGroup_getName(struct mwSametimeGroup *g);
150 
151 
153  const char *alias);
154 
155 
156 const char *mwSametimeGroup_getAlias(struct mwSametimeGroup *g);
157 
158 
159 void mwSametimeGroup_setOpen(struct mwSametimeGroup *g, gboolean open);
160 
161 
162 gboolean mwSametimeGroup_isOpen(struct mwSametimeGroup *g);
163 
164 
166 
167 
169 GList *mwSametimeGroup_getUsers(struct mwSametimeGroup *g);
170 
171 
172 struct mwSametimeUser *
174  struct mwIdBlock *user);
175 
176 
178 struct mwSametimeUser *
180  enum mwSametimeUserType type,
181  struct mwIdBlock *user);
182 
183 
185 void mwSametimeUser_free(struct mwSametimeUser *u);
186 
187 
189 
190 
192 
193 
194 const char *mwSametimeUser_getUser(struct mwSametimeUser *u);
195 
196 
197 const char *mwSametimeUser_getCommunity(struct mwSametimeUser *u);
198 
199 
200 void mwSametimeUser_setShortName(struct mwSametimeUser *u, const char *name);
201 
202 
203 const char *mwSametimeUser_getShortName(struct mwSametimeUser *u);
204 
205 
206 void mwSametimeUser_setAlias(struct mwSametimeUser *u, const char *alias);
207 
208 
209 const char *mwSametimeUser_getAlias(struct mwSametimeUser *u);
210 
211 
212 
213 #ifdef __cplusplus
214 }
215 #endif
216 
217 
218 #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:56
a server-side group
Definition: mw_st_list.h:49
Represents a group in a buddy list.
Definition: mw_st_list.h:64
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:70
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:55
gboolean mwSametimeGroup_isOpen(struct mwSametimeGroup *g)
const char * mwSametimeUser_getAlias(struct mwSametimeUser *u)
error determining group type
Definition: mw_st_list.h:50
Definition: mw_common.h:174
Common data types and functions for handling those types.
mwSametimeGroupType
Definition: mw_st_list.h:47
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:54
error determining user type
Definition: mw_st_list.h:57
void mwSametimeList_free(struct mwSametimeList *l)
Free the list, all of its groups, and all of the groups' 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:48
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.