24 #ifndef QXMPPMUCMANAGER_H
25 #define QXMPPMUCMANAGER_H
27 #include "QXmppClientExtension.h"
28 #include "QXmppMucIq.h"
29 #include "QXmppPresence.h"
33 class QXmppMucManagerPrivate;
35 class QXmppMucRoomPrivate;
61 Q_PROPERTY(QList<QXmppMucRoom*> rooms READ rooms NOTIFY roomAdded)
68 QList<QXmppMucRoom*> rooms()
const;
77 void invitationReceived(
const QString &roomJid,
const QString &inviter,
const QString &reason);
89 void _q_roomDestroyed(QObject *
object);
92 QXmppMucManagerPrivate *d;
104 Q_PROPERTY(
QXmppMucRoom::Actions allowedActions READ allowedActions NOTIFY allowedActionsChanged)
105 Q_PROPERTY(
bool isJoined READ isJoined NOTIFY isJoinedChanged)
106 Q_PROPERTY(QString jid READ jid CONSTANT)
107 Q_PROPERTY(QString nickName READ nickName WRITE setNickName NOTIFY nickNameChanged)
108 Q_PROPERTY(QStringList participants READ participants NOTIFY participantsChanged)
109 Q_PROPERTY(QString password READ password WRITE setPassword)
110 Q_PROPERTY(QString subject READ subject WRITE setSubject NOTIFY subjectChanged)
118 ConfigurationAction = 2,
119 PermissionsAction = 4,
122 Q_DECLARE_FLAGS(Actions, Action)
126 Actions allowedActions()
const;
127 bool isJoined()
const;
130 QString nickName()
const;
131 void setNickName(
const QString &nickName);
134 QStringList participants()
const;
136 QString password()
const;
137 void setPassword(
const QString &password);
139 QString subject()
const;
140 void setSubject(
const QString &subject);
144 void allowedActionsChanged(QXmppMucRoom::Actions actions)
const;
147 void configurationReceived(
const QXmppDataForm &configuration);
150 void error(
const QXmppStanza::Error &error);
156 void kicked(
const QString &jid,
const QString &reason);
159 void isJoinedChanged();
169 void nickNameChanged(
const QString &nickName);
172 void participantAdded(
const QString &jid);
175 void participantChanged(
const QString &jid);
178 void participantRemoved(
const QString &jid);
181 void participantsChanged();
185 void permissionsReceived(
const QList<QXmppMucItem> &permissions);
188 void subjectChanged(
const QString &subject);
192 bool kick(
const QString &jid,
const QString &reason);
193 bool leave(
const QString &message = QString());
194 bool requestConfiguration();
195 bool requestPermissions();
197 bool setPermissions(
const QList<QXmppMucItem> &permissions);
198 bool sendInvitation(
const QString &jid,
const QString &reason);
199 bool sendMessage(
const QString &text);
202 void _q_disconnected();
208 QXmppMucRoomPrivate *d;
212 Q_DECLARE_OPERATORS_FOR_FLAGS(QXmppMucRoom::Actions)