X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fnetworkevent.h;h=a1d3a667ac4146e053e2ec16fc4bb6003b3ae783;hp=dfa492d7f0247b628bf138e549c7757dd0d1a8e0;hb=93c7fd515792062d325a0d7fd03a965997e62f10;hpb=85fb228631cfb087ce80f4b778fae5f1c3877008 diff --git a/src/common/networkevent.h b/src/common/networkevent.h index dfa492d7..a1d3a667 100644 --- a/src/common/networkevent.h +++ b/src/common/networkevent.h @@ -38,6 +38,10 @@ public: inline NetworkId networkId() const { return network()? network()->networkId() : NetworkId(); } inline Network *network() const { return _network; } +protected: + virtual inline QString className() const { return "NetworkEvent"; } + virtual inline void debugInfo(QDebug &dbg) const { dbg.nospace() << ", net = " << qPrintable(_network->networkName()); } + private: Network *_network; }; @@ -53,6 +57,13 @@ public: inline Network::ConnectionState connectionState() const { return _state; } inline void setConnectionState(Network::ConnectionState state) { _state = state; } +protected: + virtual inline QString className() const { return "NetworkConnectionEvent"; } + virtual inline void debugInfo(QDebug &dbg) const { + NetworkEvent::debugInfo(dbg); + dbg.nospace() << ", state = " << qPrintable(QString::number(_state)); + } + private: Network::ConnectionState _state; }; @@ -68,8 +79,40 @@ public: inline QByteArray data() const { return _data; } inline void setData(const QByteArray &data) { _data = data; } +protected: + virtual inline QString className() const { return "NetworkDataEvent"; } + virtual inline void debugInfo(QDebug &dbg) const { + NetworkEvent::debugInfo(dbg); + dbg.nospace() << ", data = " << data(); + } + private: QByteArray _data; }; +class NetworkSplitEvent : public NetworkEvent { + +public: + explicit NetworkSplitEvent(EventManager::EventType type, + Network *network, + const QString &channel, + const QStringList &users, + const QString &quitMsg) + : NetworkEvent(type, network), + _channel(channel), + _users(users), + _quitMsg(quitMsg) + {} + + inline QString channel() const { return _channel; } + inline QStringList users() const { return _users; } + inline QString quitMessage() const { return _quitMsg; } + +private: + QString _channel; + QStringList _users; + QString _quitMsg; +}; + + #endif