19 #include <QtCore/qobject.h>
20 #include <QtCore/qscopedpointer.h>
21 #include <QtNetwork/qabstractsocket.h>
25 class IrcSessionPrivate;
31 Q_PROPERTY(QString host READ host WRITE setHost NOTIFY hostChanged)
32 Q_PROPERTY(
int port READ port WRITE setPort NOTIFY portChanged)
33 Q_PROPERTY(QString userName READ userName WRITE setUserName NOTIFY userNameChanged)
34 Q_PROPERTY(QString nickName READ nickName WRITE setNickName NOTIFY nickNameChanged)
35 Q_PROPERTY(QString realName READ realName WRITE setRealName NOTIFY realNameChanged)
36 Q_PROPERTY(QByteArray encoding READ encoding WRITE setEncoding)
37 Q_PROPERTY(
bool active READ isActive NOTIFY activeChanged)
38 Q_PROPERTY(
bool connected READ isConnected NOTIFY connectedChanged)
39 Q_PROPERTY(QAbstractSocket* socket READ socket WRITE setSocket)
46 void setHost(const QString& host);
49 void setPort(
int port);
51 QString userName() const;
52 void setUserName(const QString& name);
54 QString nickName() const;
55 void setNickName(const QString& name);
57 QString realName() const;
58 void setRealName(const QString& name);
60 QByteArray encoding() const;
61 void setEncoding(const QByteArray& encoding);
63 bool isActive() const;
64 bool isConnected() const;
66 QAbstractSocket* socket() const;
67 void setSocket(QAbstractSocket* socket);
69 Q_INVOKABLE
bool sendCommand(
IrcCommand* command);
70 Q_INVOKABLE
bool sendData(const QByteArray& data);
71 Q_INVOKABLE
bool sendRaw(const QString& message);
79 void password(QString* password);
82 void socketError(QAbstractSocket::SocketError error);
83 void socketStateChanged(QAbstractSocket::SocketState state);
87 void hostChanged(const QString& host);
88 void portChanged(
int port);
89 void userNameChanged(const QString& name);
90 void nickNameChanged(const QString& name);
91 void realNameChanged(const QString& name);
93 void activeChanged(
bool active);
94 void connectedChanged(
bool connected);
97 QScopedPointer<IrcSessionPrivate> d_ptr;
98 Q_DECLARE_PRIVATE(IrcSession)
99 Q_DISABLE_COPY(IrcSession)
101 Q_PRIVATE_SLOT(d_func(),
void _q_connected())
102 Q_PRIVATE_SLOT(d_func(),
void _q_disconnected())
103 Q_PRIVATE_SLOT(d_func(),
void _q_reconnect())
104 Q_PRIVATE_SLOT(d_func(),
void _q_error(QAbstractSocket::SocketError))
105 Q_PRIVATE_SLOT(d_func(),
void _q_state(QAbstractSocket::SocketState))
106 Q_PRIVATE_SLOT(d_func(),
void _q_readData())
109 #ifndef QT_NO_DEBUG_STREAM
110 COMMUNI_EXPORT QDebug operator<<(QDebug debug,
const IrcSession* session);
111 #endif // QT_NO_DEBUG_STREAM
113 #endif // IRCSESSION_H