X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Ftreemodel.h;h=3a1c144e08462b1601f74c658564c5083a1d3424;hp=55dafac57ce9695b2af089c5d08ede7be8885651;hb=56607f81246f04db3a0e71c9a8757d7f75d6cfcf;hpb=d424e746952f9821cf1c015f4b0fad0e1b169680 diff --git a/src/client/treemodel.h b/src/client/treemodel.h index 55dafac5..3a1c144e 100644 --- a/src/client/treemodel.h +++ b/src/client/treemodel.h @@ -40,26 +40,18 @@ public: AbstractTreeItem(AbstractTreeItem *parent = 0); virtual ~AbstractTreeItem(); - bool newChild(int column, AbstractTreeItem *child); bool newChild(AbstractTreeItem *child); - - bool removeChild(int column, int row); - bool removeChild(int row); + bool newChilds(const QList &items); - bool removeChildById(int column, const quint64 &id); + bool removeChild(int row); bool removeChildById(const quint64 &id); - void removeAllChilds(); virtual quint64 id() const; - AbstractTreeItem *child(int column, int row) const; AbstractTreeItem *child(int row) const; - - AbstractTreeItem *childById(int column, const quint64 &id) const; AbstractTreeItem *childById(const quint64 &id) const; - int childCount(int column) const; int childCount() const; virtual int columnCount() const = 0; @@ -70,26 +62,23 @@ public: virtual Qt::ItemFlags flags() const; virtual void setFlags(Qt::ItemFlags); - int column() const; int row() const; AbstractTreeItem *parent() const; void dumpChildList(); - + signals: void dataChanged(int column = -1); - void beginAppendChilds(int column, int firstRow, int lastRow); + void beginAppendChilds(int firstRow, int lastRow); void endAppendChilds(); - void beginRemoveChilds(int column, int firstRow, int lastRow); + void beginRemoveChilds(int firstRow, int lastRow); void endRemoveChilds(); private: - QHash > _childItems; + QList _childItems; Qt::ItemFlags _flags; - - int defaultColumn() const; }; @@ -155,7 +144,7 @@ public: QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const; QModelIndex indexById(quint64 id, const QModelIndex &parent = QModelIndex()) const; - QModelIndex indexByItem(AbstractTreeItem *item, int column = 0) const; + QModelIndex indexByItem(AbstractTreeItem *item) const; QModelIndex parent(const QModelIndex &index) const; @@ -167,10 +156,10 @@ public: private slots: void itemDataChanged(int column = -1); - void beginAppendChilds(int column, int firstRow, int lastRow); + void beginAppendChilds(int firstRow, int lastRow); void endAppendChilds(); - void beginRemoveChilds(int column, int firstRow, int lastRow); + void beginRemoveChilds(int firstRow, int lastRow); void endRemoveChilds(); protected: @@ -188,8 +177,12 @@ private: }; ChildStatus _childStatus; int _aboutToRemoveOrInsert; - // QLinkedList _childStatus; +private slots: + void debug_rowsAboutToBeInserted(const QModelIndex &parent, int start, int end); + void debug_rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end); + void debug_rowsInserted(const QModelIndex &parent, int start, int end); + void debug_rowsRemoved(const QModelIndex &parent, int start, int end); }; #endif