X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fbuffertreemodel.h;h=602cf57de690ea49eef44e1e07d92a9616e5013c;hp=0848c8ff44075c06c032957ecc18517802579007;hb=8a618fb4514d83a76cec8e7cd1319b935366a616;hpb=13b2affbdccd1d52479e49affdb81a77258392a6 diff --git a/src/client/buffertreemodel.h b/src/client/buffertreemodel.h index 0848c8ff..602cf57d 100644 --- a/src/client/buffertreemodel.h +++ b/src/client/buffertreemodel.h @@ -24,22 +24,26 @@ #include #include "treemodel.h" +class BufferInfo; #include "buffer.h" -#include "clientproxy.h" /***************************************** * Fancy Buffer Items *****************************************/ -class BufferTreeItem : public TreeItem{ +class BufferTreeItem : public TreeItem { Q_OBJECT public: BufferTreeItem(Buffer *, TreeItem *parent = 0); + + virtual uint id() const; QVariant data(int column, int role) const; + virtual Qt::ItemFlags flags() const; + Buffer *buffer() const { return buf; } void setActivity(const Buffer::ActivityLevel &); -protected: +private: QString text(int column) const; QColor foreground(int column) const; @@ -47,6 +51,22 @@ protected: Buffer::ActivityLevel activity; }; +/***************************************** + * Network Items + *****************************************/ +class NetworkTreeItem : public TreeItem { + Q_OBJECT + +public: + NetworkTreeItem(const QString &, TreeItem *parent = 0); + + virtual uint id() const; + virtual Qt::ItemFlags flags() const; + +private: + QString net; + +}; /***************************************** * BufferTreeModel @@ -55,31 +75,27 @@ class BufferTreeModel : public TreeModel { Q_OBJECT public: - enum myRoles { + enum myRoles { BufferTypeRole = Qt::UserRole, - BufferActiveRole + BufferActiveRole, + BufferNameRole, + BufferUidRole }; - //BufferTreeModel(const QList &, QObject *parent = 0); BufferTreeModel(QObject *parent = 0); static QList defaultHeader(); - - virtual Qt::ItemFlags flags(const QModelIndex &index) const; - -// void clearActivity(Buffer *buffer); public slots: void bufferUpdated(Buffer *); void changeCurrent(const QModelIndex &, const QModelIndex &); void selectBuffer(Buffer *buffer); - void doubleClickReceived(const QModelIndex &); void bufferActivity(Buffer::ActivityLevel, Buffer *buffer); signals: void bufferSelected(Buffer *); void invalidateFilter(); - void fakeUserInput(BufferId, QString); - void updateSelection(const QModelIndex &, QItemSelectionModel::SelectionFlags); + void fakeUserInput(BufferInfo, QString); + void selectionChanged(const QModelIndex &); private: bool isBufferIndex(const QModelIndex &) const; @@ -91,8 +107,6 @@ private: QMimeData *mimeData(const QModelIndexList &) const; bool dropMimeData(const QMimeData *, Qt::DropAction, int, int, const QModelIndex &); - QHash networkItem; - QHash bufferItem; Buffer *currentBuffer; };