X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Ftreemodel.h;h=3a1c144e08462b1601f74c658564c5083a1d3424;hp=2b77c5b274bfba66dcbd77bd9920c9db321baee8;hb=464a20552a20ff976ef4d696f69bc73b389886ad;hpb=bf9530ddf0b227b6737e9cc672d40a703516c7ea diff --git a/src/client/treemodel.h b/src/client/treemodel.h index 2b77c5b2..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,24 +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; }; @@ -153,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; @@ -165,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: @@ -186,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