QXmpp  Version: 1.5.3
QXmppMixIq.h
1 // SPDX-FileCopyrightText: 2019 Linus Jahn <lnj@kaidan.im>
2 //
3 // SPDX-License-Identifier: LGPL-2.1-or-later
4 
5 #ifndef QXMPPMIXIQ_H
6 #define QXMPPMIXIQ_H
7 
8 #include "QXmppIq.h"
9 
10 #include <QSharedDataPointer>
11 
12 class QXmppMixIqPrivate;
13 
24 class QXMPP_EXPORT QXmppMixIq : public QXmppIq
25 {
26 public:
28  enum Type {
29  None,
30  ClientJoin,
31  ClientLeave,
32  Join,
33  Leave,
34  UpdateSubscription,
35  SetNick,
36  Create,
37  Destroy
38  };
39 
40  QXmppMixIq();
41  QXmppMixIq(const QXmppMixIq &);
43  ~QXmppMixIq() override;
44 
47 
48  QXmppMixIq::Type actionType() const;
49  void setActionType(QXmppMixIq::Type);
50 
51  QString jid() const;
52  void setJid(const QString &);
53 
54  QString channelName() const;
55  void setChannelName(const QString &);
56 
57  QStringList nodes() const;
58  void setNodes(const QStringList &);
59 
60  QString nick() const;
61  void setNick(const QString &);
62 
64  static bool isMixIq(const QDomElement &);
66 
67 protected:
69  void parseElementFromChild(const QDomElement &) override;
70  void toXmlElementFromChild(QXmlStreamWriter *) const override;
72 
73 private:
74  QSharedDataPointer<QXmppMixIqPrivate> d;
75 };
76 
77 #endif // QXMPPMIXIQ_H
The QXmppMixIq class represents an IQ used to do actions on a MIX channel as defined by XEP-0369: Med...
Definition: QXmppMixIq.h:24
Type
The action type of the MIX query IQ.
Definition: QXmppMixIq.h:28
Type
This enum describes the type of IQ.
Definition: QXmppIq.h:26
The QXmppIq class is the base class for all IQs.
Definition: QXmppIq.h:22
QXmppIq & operator=(const QXmppIq &other)
Assigns other to this IQ.