blob: 4e73955a21edfa2bbc5e5e606a94c7be68514799 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
/*
Kopete Groupwise Protocol
gwchatrooms.h - Data types for group chat
Copyright (c) 2005 SUSE Linux AG http://www.suse.com
Kopete (c) 2002-2005 by the Kopete developers <kopete-devel@kde.org>
*************************************************************************
* *
* This library is free software; you can redistribute it and/or *
* modify it under the terms of the GNU Lesser General Public *
* License as published by the Free Software Foundation; either *
* version 2 of the License, or (at your option) any later version. *
* *
*************************************************************************
*/
#include <tqdatetime.h>
#include <tqvaluelist.h>
#ifndef GROUPWISE_CHATROOMS_H
#define GROUPWISE_CHATROOMS_H
namespace GroupWise
{
class ChatContact
{
public:
TQString dn;
uint chatRights;
};
typedef TQValueList<GroupWise::ChatContact> ChatContactList;
struct ChatroomSearchResult
{
TQString name;
TQString ownerDN;
uint participants;
};
class Chatroom
{
public:
enum UserStatus { Participating, NotParticipating };
enum Rights { Read = 1, Write = 2, Modify = 4, Moderator = 8, Owner = 16 };
TQString creatorDN;
TQString description;
TQString disclaimer;
TQString displayName;
TQString objectId;
TQString ownerDN;
TQString query;
TQString topic;
bool archive;
uint maxUsers;
uint chatRights;
UserStatus userStatus;
TQDateTime createdOn;
uint participantsCount;
// 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.
bool haveParticipants;
ChatContactList participants;
bool haveAcl;
ChatContactList acl;
bool haveInvites;
ChatContactList invites;
Chatroom() { archive = false; maxUsers = 0; chatRights = 0; participantsCount = 0; haveParticipants = false; haveAcl = false; haveInvites = false; }
Chatroom( ChatroomSearchResult csr ) { archive = false; maxUsers = 0; chatRights = 0; participantsCount = csr.participants; haveParticipants = false; haveAcl = false; haveInvites = false; ownerDN = csr.ownerDN; displayName = csr.name; }
};
typedef TQValueList<Chatroom> ChatroomList;
typedef TQMap<TQString, Chatroom> ChatroomMap;
}
#endif
|