2 Kopete Groupwise Protocol
3 gwchatrooms.h - Data types for groupchat
5 Copyright (c) 2005 SUSE Linux AG http://www.suse.com
7 Kopete (c) 2002-2005 by the Kopete developers <kopete-devel@kde.org>
9 *************************************************************************
11 * This library is free software; you can redistribute it and/or *
12 * modify it under the terms of the GNU Lesser General Public *
13 * License as published by the Free Software Foundation; either *
14 * version 2 of the License, or (at your option) any later version. *
16 *************************************************************************
35 typedef QList
<GroupWise::ChatContact
> ChatContactList
;
37 struct ChatroomSearchResult
48 enum UserStatus
{ Participating
, NotParticipating
};
49 enum Rights
{ Read
= 1, Write
= 2, Modify
= 4, Moderator
= 8, Owner
= 16 };
61 UserStatus userStatus
;
63 uint participantsCount
;
64 // haveParticipants, Acl, Invites indicate if we have obtained these lists from the server, so we can tell 'not fetched list' and 'fetched empty list' apart.
65 bool haveParticipants
;
66 ChatContactList participants
;
70 ChatContactList invites
;
72 Chatroom() { archive
= false; maxUsers
= 0; chatRights
= 0; participantsCount
= 0; haveParticipants
= false; haveAcl
= false; haveInvites
= false; }
73 Chatroom( ChatroomSearchResult csr
) { archive
= false; maxUsers
= 0; chatRights
= 0; participantsCount
= csr
.participants
; haveParticipants
= false; haveAcl
= false; haveInvites
= false; ownerDN
= csr
.ownerDN
; displayName
= csr
.name
; }
76 typedef QList
<Chatroom
> ChatroomList
;
77 typedef QMap
<QString
, Chatroom
> ChatroomMap
;
80 #endif // GWCHATROOMS_H