From 3eb8e393a93285506787404a35723ebfd19c7d75 Mon Sep 17 00:00:00 2001 From: Manuel Nickschas Date: Fri, 27 Jun 2008 00:41:31 +0200 Subject: [PATCH] Change Message flags type from quint8 to Message::Flags, fixing #192 Backported from ex-trunk to 0.2. --- src/common/message.cpp | 8 ++++---- src/common/message.h | 16 ++++++++-------- src/core/basichandler.cpp | 6 +++--- src/core/basichandler.h | 4 ++-- src/core/coresession.cpp | 9 +++++---- src/core/coresession.h | 2 +- src/core/ctcphandler.cpp | 2 +- src/core/networkconnection.h | 2 +- src/core/sqlitestorage.cpp | 8 ++++---- 9 files changed, 29 insertions(+), 28 deletions(-) diff --git a/src/common/message.cpp b/src/common/message.cpp index 8c0ebb31..15708b37 100644 --- a/src/common/message.cpp +++ b/src/common/message.cpp @@ -24,7 +24,7 @@ #include -Message::Message(BufferInfo bufferInfo, Type type, QString text, QString sender, quint8 flags) +Message::Message(BufferInfo bufferInfo, Type type, QString text, QString sender, Flags flags) : _timestamp(QDateTime::currentDateTime().toUTC()), _bufferInfo(bufferInfo), _text(text), @@ -34,7 +34,7 @@ Message::Message(BufferInfo bufferInfo, Type type, QString text, QString sender, { } -Message::Message(QDateTime ts,BufferInfo bufferInfo, Type type, QString text, QString sender, quint8 flags) +Message::Message(QDateTime ts,BufferInfo bufferInfo, Type type, QString text, QString sender, Flags flags) : _timestamp(ts), _bufferInfo(bufferInfo), _text(text), @@ -44,7 +44,7 @@ Message::Message(QDateTime ts,BufferInfo bufferInfo, Type type, QString text, QS { } -void Message::setFlags(quint8 flags) { +void Message::setFlags(Flags flags) { _flags = flags; } @@ -191,7 +191,7 @@ QDataStream &operator>>(QDataStream &in, Message &msg) { BufferInfo buf; in >> msg._msgId >> ts >> t >> f >> buf >> s >> m; msg._type = (Message::Type)t; - msg._flags = (quint8)f; + msg._flags = (Message::Flags)f; msg._bufferInfo = buf; msg._timestamp = QDateTime::fromTime_t(ts); msg._sender = QString::fromUtf8(s); diff --git a/src/common/message.h b/src/common/message.h index 08c70c6f..9070b05e 100644 --- a/src/common/message.h +++ b/src/common/message.h @@ -48,18 +48,18 @@ public: Error = 0x1000 }; - enum Flags { + enum Flag { None = 0, Self = 1, Highlight = 2, Redirected = 4 }; - Q_DECLARE_FLAGS(MessageFlags, Flags) + Q_DECLARE_FLAGS(Flags, Flag) - Message(BufferInfo bufferInfo = BufferInfo(), Type type = Plain, QString text = "", QString sender = "", quint8 flags = None); + Message(BufferInfo bufferInfo = BufferInfo(), Type type = Plain, QString text = "", QString sender = "", Flags flags = None); - Message(QDateTime ts, BufferInfo buffer = BufferInfo(), Type type = Plain, QString text = "", QString sender = "", quint8 flags = None); + Message(QDateTime ts, BufferInfo buffer = BufferInfo(), Type type = Plain, QString text = "", QString sender = "", Flags flags = None); inline MsgId msgId() const { return _msgId; } inline void setMsgId(MsgId id) { _msgId = id; } @@ -68,10 +68,10 @@ public: inline QString text() const { return _text; } inline QString sender() const { return _sender; } inline Type type() const { return _type; } - inline quint8 flags() const { return _flags; } + inline Flags flags() const { return _flags; } inline QDateTime timestamp() const { return _timestamp; } - void setFlags(quint8 flags); + void setFlags(Flags flags); QString formattedTimestamp(); QString formattedSender(); @@ -91,7 +91,7 @@ private: QString _text; QString _sender; Type _type; - quint8 _flags; + Flags _flags; QString _formattedTimestamp, _formattedSender, _formattedText; // cache @@ -103,6 +103,6 @@ QDataStream &operator<<(QDataStream &out, const Message &msg); QDataStream &operator>>(QDataStream &in, Message &msg); Q_DECLARE_METATYPE(Message); -Q_DECLARE_OPERATORS_FOR_FLAGS(Message::MessageFlags) +Q_DECLARE_OPERATORS_FOR_FLAGS(Message::Flags) #endif diff --git a/src/core/basichandler.cpp b/src/core/basichandler.cpp index 8385f062..a6af5373 100644 --- a/src/core/basichandler.cpp +++ b/src/core/basichandler.cpp @@ -29,8 +29,8 @@ BasicHandler::BasicHandler(NetworkConnection *parent) _networkConnection(parent), initDone(false) { - connect(this, SIGNAL(displayMsg(Message::Type, BufferInfo::Type, QString, QString, QString, quint8)), - networkConnection(), SIGNAL(displayMsg(Message::Type, BufferInfo::Type, QString, QString, QString, quint8))); + connect(this, SIGNAL(displayMsg(Message::Type, BufferInfo::Type, QString, QString, QString, Message::Flags)), + networkConnection(), SIGNAL(displayMsg(Message::Type, BufferInfo::Type, QString, QString, QString, Message::Flags))); connect(this, SIGNAL(putCmd(QString, const QList &, const QByteArray &)), networkConnection(), SLOT(putCmd(QString, const QList &, const QByteArray &))); @@ -173,7 +173,7 @@ void BasicHandler::putCmd(const QString &cmd, const QByteArray ¶m, const QBy emit putCmd(cmd, list, prefix); } -void BasicHandler::displayMsg(Message::Type msgType, QString target, QString text, QString sender, quint8 flags) { +void BasicHandler::displayMsg(Message::Type msgType, QString target, QString text, QString sender, Message::Flags flags) { IrcChannel *channel = network()->ircChannel(target); if(!channel && (target.startsWith('$') || target.startsWith('#'))) target = nickFromMask(sender); diff --git a/src/core/basichandler.h b/src/core/basichandler.h index cca93790..47003478 100644 --- a/src/core/basichandler.h +++ b/src/core/basichandler.h @@ -54,12 +54,12 @@ public: QList userEncode(const QString &userNick, const QStringList &stringlist); signals: - void displayMsg(Message::Type, BufferInfo::Type, QString target, QString text, QString sender = "", quint8 flags = Message::None); + void displayMsg(Message::Type, BufferInfo::Type, QString target, QString text, QString sender = "", Message::Flags flags = Message::None); void putCmd(const QString &cmd, const QList ¶ms, const QByteArray &prefix = QByteArray()); void putRawLine(const QByteArray &msg); protected: - void displayMsg(Message::Type, QString target, QString text, QString sender = "", quint8 flags = Message::None); + void displayMsg(Message::Type, QString target, QString text, QString sender = "", Message::Flags flags = Message::None); void putCmd(const QString &cmd, const QByteArray ¶m, const QByteArray &prefix = QByteArray()); virtual void handle(const QString &member, QGenericArgument val0 = QGenericArgument(0), diff --git a/src/core/coresession.cpp b/src/core/coresession.cpp index fbdcfa6c..07ba5a16 100644 --- a/src/core/coresession.cpp +++ b/src/core/coresession.cpp @@ -198,8 +198,8 @@ void CoreSession::attachNetworkConnection(NetworkConnection *conn) { //signalProxy()->attachSignal(conn, SIGNAL(connected(NetworkId)), SIGNAL(networkConnected(NetworkId))); //signalProxy()->attachSignal(conn, SIGNAL(disconnected(NetworkId)), SIGNAL(networkDisconnected(NetworkId))); - connect(conn, SIGNAL(displayMsg(Message::Type, BufferInfo::Type, QString, QString, QString, quint8)), - this, SLOT(recvMessageFromServer(Message::Type, BufferInfo::Type, QString, QString, QString, quint8))); + connect(conn, SIGNAL(displayMsg(Message::Type, BufferInfo::Type, QString, QString, QString, Message::Flags)), + this, SLOT(recvMessageFromServer(Message::Type, BufferInfo::Type, QString, QString, QString, Message::Flags))); connect(conn, SIGNAL(displayStatusMsg(QString)), this, SLOT(recvStatusMsgFromServer(QString))); connect(conn, SIGNAL(nickChanged(const NetworkId &, const QString &, const QString &)), @@ -291,10 +291,11 @@ void CoreSession::msgFromClient(BufferInfo bufinfo, QString msg) { // ALL messages coming pass through these functions before going to the GUI. // So this is the perfect place for storing the backlog and log stuff. -void CoreSession::recvMessageFromServer(Message::Type type, BufferInfo::Type bufferType, QString target, QString text, QString sender, quint8 flags) { +void CoreSession::recvMessageFromServer(Message::Type type, BufferInfo::Type bufferType, + QString target, QString text, QString sender, Message::Flags flags) { NetworkConnection *netCon = qobject_cast(this->sender()); Q_ASSERT(netCon); - + BufferInfo bufferInfo = Core::bufferInfo(user(), netCon->networkId(), bufferType, target); Message msg(bufferInfo, type, text, sender, flags); msg.setMsgId(Core::storeMessage(msg)); diff --git a/src/core/coresession.h b/src/core/coresession.h index 71eddd2f..737e15c3 100644 --- a/src/core/coresession.h +++ b/src/core/coresession.h @@ -156,7 +156,7 @@ private slots: void removeClient(QIODevice *dev); void recvStatusMsgFromServer(QString msg); - void recvMessageFromServer(Message::Type, BufferInfo::Type, QString target, QString text, QString sender = "", quint8 flags = Message::None); + void recvMessageFromServer(Message::Type, BufferInfo::Type, QString target, QString text, QString sender = "", Message::Flags flags = Message::None); void networkConnected(NetworkId networkid); void networkDisconnected(NetworkId networkid); diff --git a/src/core/ctcphandler.cpp b/src/core/ctcphandler.cpp index d8857b2b..a864fe64 100644 --- a/src/core/ctcphandler.cpp +++ b/src/core/ctcphandler.cpp @@ -94,7 +94,7 @@ void CtcpHandler::parse(Message::Type messageType, const QString &prefix, const ? CtcpReply : CtcpQuery; - quint8 flags = (messageType == Message::Notice && !network()->isChannelName(target)) + Message::Flags flags = (messageType == Message::Notice && !network()->isChannelName(target)) ? Message::Redirected : Message::None; diff --git a/src/core/networkconnection.h b/src/core/networkconnection.h index 39a5d14a..c28da180 100644 --- a/src/core/networkconnection.h +++ b/src/core/networkconnection.h @@ -110,7 +110,7 @@ signals: void recvRawServerMsg(QString); void displayStatusMsg(QString); //void displayMsg(Message msg); - void displayMsg(Message::Type, BufferInfo::Type, QString target, QString text, QString sender = "", quint8 flags = Message::None); + void displayMsg(Message::Type, BufferInfo::Type, QString target, QString text, QString sender = "", Message::Flags flags = Message::None); void connected(NetworkId networkId); ///< Emitted after receipt of 001 to indicate that we can now send data to the IRC server void disconnected(NetworkId networkId); void connectionStateChanged(Network::ConnectionState); diff --git a/src/core/sqlitestorage.cpp b/src/core/sqlitestorage.cpp index 2a84b483..349f9ad9 100644 --- a/src/core/sqlitestorage.cpp +++ b/src/core/sqlitestorage.cpp @@ -644,7 +644,7 @@ MsgId SqliteStorage::logMessage(Message msg) { logMessageQuery->bindValue(":time", msg.timestamp().toTime_t()); logMessageQuery->bindValue(":bufferid", msg.bufferInfo().bufferId().toInt()); logMessageQuery->bindValue(":type", msg.type()); - logMessageQuery->bindValue(":flags", msg.flags()); + logMessageQuery->bindValue(":flags", (int)msg.flags()); logMessageQuery->bindValue(":sender", msg.sender()); logMessageQuery->bindValue(":message", msg.text()); logMessageQuery->exec(); @@ -703,7 +703,7 @@ QList SqliteStorage::requestMsgs(UserId user, BufferId bufferId, int la (Message::Type)msgQuery->value(2).toUInt(), msgQuery->value(5).toString(), msgQuery->value(4).toString(), - msgQuery->value(3).toUInt()); + (Message::Flags)msgQuery->value(3).toUInt()); msg.setMsgId(msgQuery->value(0).toInt()); messagelist << msg; } @@ -741,7 +741,7 @@ QList SqliteStorage::requestMsgs(UserId user, BufferId bufferId, QDateT (Message::Type)msgQuery->value(2).toUInt(), msgQuery->value(5).toString(), msgQuery->value(4).toString(), - msgQuery->value(3).toUInt()); + (Message::Flags)msgQuery->value(3).toUInt()); msg.setMsgId(msgQuery->value(0).toInt()); messagelist << msg; } @@ -771,7 +771,7 @@ QList SqliteStorage::requestMsgRange(UserId user, BufferId bufferId, in (Message::Type)rangeQuery->value(2).toUInt(), rangeQuery->value(5).toString(), rangeQuery->value(4).toString(), - rangeQuery->value(3).toUInt()); + (Message::Flags)rangeQuery->value(3).toUInt()); msg.setMsgId(rangeQuery->value(0).toInt()); messagelist << msg; } -- 2.20.1