X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fnetworkmodel.h;h=c678bae327b9a3d0c22e66d71d519aeb481a78f6;hp=e765252bd9a7a039808f265b5b1675d8445a75a4;hb=e1d4e2bf7c368d84d853f33e5f55a72945cc7f6a;hpb=7897b8623a42967511e31c68d5c102033a1dcdb9 diff --git a/src/client/networkmodel.h b/src/client/networkmodel.h index e765252b..c678bae3 100644 --- a/src/client/networkmodel.h +++ b/src/client/networkmodel.h @@ -89,7 +89,7 @@ public: inline BufferId bufferId() const { return _bufferInfo.bufferId(); } inline BufferInfo::Type bufferType() const { return _bufferInfo.type(); } - void setBufferName(const QString &name); + virtual void setBufferName(const QString &name); virtual inline QString bufferName() const { return _bufferInfo.bufferName(); } virtual inline QString topic() const { return QString(); } virtual inline int nickCount() const { return 0; } @@ -141,12 +141,15 @@ public: virtual QVariant data(int column, int role) const; virtual bool setData(int column, const QVariant &value, int role); + virtual inline bool isActive() const { return (bool)_ircUser; } virtual QString toolTip(int column) const; + virtual void setBufferName(const QString &name); + public slots: - void attachIrcUser(IrcUser *ircUser); - void ircUserQuited(); + void setIrcUser(IrcUser *ircUser); + void removeIrcUser(); private: IrcUser *_ircUser; @@ -277,7 +280,6 @@ public: virtual QStringList mimeTypes() const; virtual QMimeData *mimeData(const QModelIndexList &) const; - virtual bool dropMimeData(const QMimeData *, Qt::DropAction, int, int, const QModelIndex &); void attachNetwork(Network *network); @@ -307,6 +309,8 @@ public: QString networkName(BufferId bufferId) const; inline QList allBufferIds() const { return _bufferItemCache.keys(); } + QList allBufferIdsSorted() const; + void sortBufferIds(QList &bufferIds) const; public slots: void bufferUpdated(BufferInfo bufferInfo); @@ -332,6 +336,8 @@ private: BufferItem *findBufferItem(BufferId bufferId) const; BufferItem *bufferItem(const BufferInfo &bufferInfo); + static bool bufferItemLessThan(const BufferItem *left, const BufferItem *right); + QHash _bufferItemCache; }; Q_DECLARE_OPERATORS_FOR_FLAGS(NetworkModel::ItemTypes)