X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fclient%2Fnetworkmodel.h;h=370e6de3b6f512ca932f5774dbb829ef5d65907b;hb=42ab7cc22c4702716db2b8bfa1d4545169f772e6;hp=cc06938c34f6a052eb2164eb2b3eaaa4567c3a7e;hpb=68878dc8366f2f4a0afe132847aad9a51a80cdbf;p=quassel.git diff --git a/src/client/networkmodel.h b/src/client/networkmodel.h index cc06938c..370e6de3 100644 --- a/src/client/networkmodel.h +++ b/src/client/networkmodel.h @@ -18,8 +18,9 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ -#ifndef NETWORKMODEL_H -#define NETWORKMODEL_H +#pragma once + +#include "client-export.h" #include "bufferinfo.h" #include "clientsettings.h" @@ -41,9 +42,11 @@ class NetworkItem : public PropertyMapItem Q_PROPERTY(int nickCount READ nickCount) public : - NetworkItem(const NetworkId &netid, AbstractTreeItem *parent = 0); + NetworkItem(const NetworkId &netid, AbstractTreeItem *parent = nullptr); + + QStringList propertyOrder() const override; - virtual QVariant data(int column, int row) const; + QVariant data(int column, int row) const override; /** * Escapes a string as HTML, ready for Qt markup. @@ -65,7 +68,7 @@ public : inline QString currentServer() const { return (bool)_network ? _network->currentServer() : QString(); } inline int nickCount() const { return (bool)_network ? _network->ircUsers().count() : 0; } - virtual QString toolTip(int column) const; + QString toolTip(int column) const override; BufferItem *findBufferItem(BufferId bufferId); inline BufferItem *findBufferItem(const BufferInfo &bufferInfo) { return findBufferItem(bufferInfo.bufferId()); } @@ -106,11 +109,13 @@ class BufferItem : public PropertyMapItem Q_PROPERTY(int nickCount READ nickCount) public : - BufferItem(const BufferInfo &bufferInfo, AbstractTreeItem *parent = 0); + BufferItem(BufferInfo bufferInfo, AbstractTreeItem *parent = nullptr); + + QStringList propertyOrder() const override; inline const BufferInfo &bufferInfo() const { return _bufferInfo; } - virtual QVariant data(int column, int role) const; - virtual bool setData(int column, const QVariant &value, int role); + QVariant data(int column, int role) const override; + bool setData(int column, const QVariant &value, int role) override; inline BufferId bufferId() const { return _bufferInfo.bufferId(); } inline BufferInfo::Type bufferType() const { return _bufferInfo.type(); } @@ -137,7 +142,7 @@ public : inline const MsgId &firstUnreadMsgId() const { return _firstUnreadMsgId; } bool isCurrentBuffer() const; - virtual QString toolTip(int column) const; + QString toolTip(int column) const override; public slots: virtual inline void setTopic(const QString &) { emit dataChanged(1); } @@ -162,8 +167,8 @@ class StatusBufferItem : public BufferItem public: StatusBufferItem(const BufferInfo &bufferInfo, NetworkItem *parent); - virtual QString toolTip(int column) const; - virtual inline QString bufferName() const { return tr("Status Buffer"); } + QString toolTip(int column) const override; + inline QString bufferName() const override { return tr("Status Buffer"); } }; @@ -177,13 +182,13 @@ class QueryBufferItem : public BufferItem public: QueryBufferItem(const BufferInfo &bufferInfo, NetworkItem *parent); - virtual QVariant data(int column, int role) const; - virtual bool setData(int column, const QVariant &value, int role); + QVariant data(int column, int role) const override; + bool setData(int column, const QVariant &value, int role) override; - virtual inline bool isActive() const { return (bool)_ircUser; } - virtual QString toolTip(int column) const; + inline bool isActive() const override { return (bool)_ircUser; } + QString toolTip(int column) const override; - virtual void setBufferName(const QString &name); + void setBufferName(const QString &name) override; public slots: void setIrcUser(IrcUser *ircUser); @@ -206,12 +211,12 @@ class ChannelBufferItem : public BufferItem public: ChannelBufferItem(const BufferInfo &bufferInfo, AbstractTreeItem *parent); - virtual QVariant data(int column, int role) const; - virtual inline bool isActive() const { return (bool)_ircChannel; } - virtual QString toolTip(int column) const; + QVariant data(int column, int role) const override; + inline bool isActive() const override { return (bool)_ircChannel; } + QString toolTip(int column) const override; - virtual inline QString topic() const { return (bool)_ircChannel ? _ircChannel->topic() : QString(); } - virtual inline int nickCount() const { return (bool)_ircChannel ? _ircChannel->ircUsers().count() : 0; } + inline QString topic() const override { return (bool)_ircChannel ? _ircChannel->topic() : QString(); } + inline int nickCount() const override { return (bool)_ircChannel ? _ircChannel->ircUsers().count() : 0; } void attachIrcChannel(IrcChannel *ircChannel); @@ -246,17 +251,20 @@ private: * User Category Items (like @vh etc.) *****************************************/ class IrcUserItem; -class UserCategoryItem : public PropertyMapItem + +class CLIENT_EXPORT UserCategoryItem : public PropertyMapItem { Q_OBJECT Q_PROPERTY(QString categoryName READ categoryName) public : - UserCategoryItem(int category, AbstractTreeItem *parent); + UserCategoryItem(int category, AbstractTreeItem *parent); + + QStringList propertyOrder() const override; QString categoryName() const; inline int categoryId() const { return _category; } - virtual QVariant data(int column, int role) const; + QVariant data(int column, int role) const override; IrcUserItem *findIrcUser(IrcUser *ircUser); void addUsers(const QList &ircUser); @@ -280,14 +288,16 @@ class IrcUserItem : public PropertyMapItem Q_PROPERTY(QString nickName READ nickName) public : - IrcUserItem(IrcUser *ircUser, AbstractTreeItem *parent); + IrcUserItem(IrcUser *ircUser, AbstractTreeItem *parent); + + QStringList propertyOrder() const override; inline QString nickName() const { return _ircUser ? _ircUser->nick() : QString(); } inline bool isActive() const { return _ircUser ? !_ircUser->isAway() : false; } inline IrcUser *ircUser() { return _ircUser; } - virtual QVariant data(int column, int role) const; - virtual QString toolTip(int column) const; + QVariant data(int column, int role) const override; + QString toolTip(int column) const override; /** * Gets the list of channel modes for this nick if parented to channel. @@ -307,7 +317,7 @@ private: /***************************************** * NetworkModel *****************************************/ -class NetworkModel : public TreeModel +class CLIENT_EXPORT NetworkModel : public TreeModel { Q_OBJECT @@ -335,14 +345,14 @@ public: }; Q_DECLARE_FLAGS(ItemTypes, ItemType) - NetworkModel(QObject *parent = 0); + NetworkModel(QObject *parent = nullptr); static QList defaultHeader(); static bool mimeContainsBufferList(const QMimeData *mimeData); static QList > mimeDataToBufferList(const QMimeData *mimeData); - virtual QStringList mimeTypes() const; - virtual QMimeData *mimeData(const QModelIndexList &) const; + QStringList mimeTypes() const override; + QMimeData *mimeData(const QModelIndexList &) const override; void attachNetwork(Network *network); @@ -386,6 +396,7 @@ public slots: void updateBufferActivity(Message &msg); void networkRemoved(const NetworkId &networkId); void bufferActivityChanged(BufferId, Message::Types); + void highlightCountChanged(BufferId, int); signals: void requestSetLastSeenMsg(BufferId buffer, MsgId msg); @@ -418,5 +429,3 @@ private: Q_DECLARE_OPERATORS_FOR_FLAGS(NetworkModel::ItemTypes) - -#endif // NETWORKMODEL_H