diff options
author | Thomas Zander <thomas.zander@trolltech.com> | 2009-05-28 17:06:58 +0200 |
---|---|---|
committer | Thomas Zander <thomas.zander@trolltech.com> | 2009-05-28 17:06:58 +0200 |
commit | 38f5fa499acdb08d5650192a2f468140e25bb9be (patch) | |
tree | 4e62ec6c32c6ea16ad051371278ac73c835d2f2a | |
parent | 527cf63e98fac923b50628f561062659053c5c47 (diff) |
The creators API flushed out a bit more;
* we should not make the methods const as the creators might want to do pooling of items.
* rename the methods to clarify their purpose
-rw-r--r-- | src/experimental/qgraphicsgridview.cpp | 2 | ||||
-rw-r--r-- | src/qgraphicslistview.cpp | 10 | ||||
-rw-r--r-- | src/qgraphicslistview.h | 8 | ||||
-rw-r--r-- | src/qgraphicstableview.cpp | 8 | ||||
-rw-r--r-- | src/qgraphicstableview.h | 8 |
5 files changed, 18 insertions, 18 deletions
diff --git a/src/experimental/qgraphicsgridview.cpp b/src/experimental/qgraphicsgridview.cpp index 6cbce50..815fbe4 100644 --- a/src/experimental/qgraphicsgridview.cpp +++ b/src/experimental/qgraphicsgridview.cpp @@ -366,7 +366,7 @@ void QtGraphicsGridView::doLayout() // remove unused items const int from = index - firstVisibleIndex; while (from < d->items.count()) - d->creator->destroy(d->items.takeLast()); + d->creator->recycle(d->items.takeLast()); } /*! diff --git a/src/qgraphicslistview.cpp b/src/qgraphicslistview.cpp index ce06591..18ff5c8 100644 --- a/src/qgraphicslistview.cpp +++ b/src/qgraphicslistview.cpp @@ -190,14 +190,14 @@ QtGraphicsListViewItemCreatorBase::~QtGraphicsListViewItemCreatorBase() { } -QtGraphicsListViewItem *QtGraphicsListViewItemCreatorBase::recycle(int index, QtGraphicsListViewItem *item) const +QtGraphicsListViewItem *QtGraphicsListViewItemCreatorBase::reassign(int index, QtGraphicsListViewItem *item) { Q_ASSERT(item); item->setIndex(index); return item; } -void QtGraphicsListViewItemCreatorBase::destroy(QtGraphicsListViewItem *item) const +void QtGraphicsListViewItemCreatorBase::recycle(QtGraphicsListViewItem *item) { delete item; } @@ -404,13 +404,13 @@ void QtGraphicsListViewPrivate::scrollItems(int firstVisibleIndex) // scrolling down or right - move from first to last while (items.first()->index() < firstVisibleIndex) { const int index = items.last()->index() + 1; - items.append(creator->recycle(index, items.takeFirst())); + items.append(creator->reassign(index, items.takeFirst())); } // scrolling up or left - move from last to first const int firstNonVisibleIndex = firstVisibleIndex + items.count(); while (items.last()->index() >= firstNonVisibleIndex) { const int index = items.first()->index() - 1; - items.prepend(creator->recycle(index, items.takeLast())); + items.prepend(creator->reassign(index, items.takeLast())); } } } @@ -741,7 +741,7 @@ void QtGraphicsListView::doLayout() // remove unused items const int visibleCount = index - firstVisibleIndex; while (visibleCount < d->items.count()) - d->creator->destroy(d->items.takeLast()); + d->creator->recycle(d->items.takeLast()); } diff --git a/src/qgraphicslistview.h b/src/qgraphicslistview.h index 8554c3c..f0d3b40 100644 --- a/src/qgraphicslistview.h +++ b/src/qgraphicslistview.h @@ -74,16 +74,16 @@ class QtGraphicsListViewItemCreatorBase { public: virtual ~QtGraphicsListViewItemCreatorBase(); - virtual QtGraphicsListViewItem *create(int index, QtGraphicsListView *view) const = 0; - virtual QtGraphicsListViewItem *recycle(int index, QtGraphicsListViewItem *item) const; - virtual void destroy(QtGraphicsListViewItem *item) const; + virtual QtGraphicsListViewItem *create(int index, QtGraphicsListView *view) = 0; + virtual QtGraphicsListViewItem *reassign(int index, QtGraphicsListViewItem *item); + virtual void recycle(QtGraphicsListViewItem *item); }; template <class T> class Q_ITEMVIEWSNG_EXPORT QtGraphicsListViewItemCreator : public QtGraphicsListViewItemCreatorBase { public: - inline QtGraphicsListViewItem *create(int index, QtGraphicsListView *view) const { return new T(index, view); } + inline QtGraphicsListViewItem *create(int index, QtGraphicsListView *view) { return new T(index, view); } }; class Q_ITEMVIEWSNG_EXPORT QtGraphicsListView : public QGraphicsWidget diff --git a/src/qgraphicstableview.cpp b/src/qgraphicstableview.cpp index 1460fef..643b83a 100644 --- a/src/qgraphicstableview.cpp +++ b/src/qgraphicstableview.cpp @@ -162,14 +162,14 @@ QtGraphicsTableViewItemCreatorBase::~QtGraphicsTableViewItemCreatorBase() { } -QtGraphicsTableViewItem *QtGraphicsTableViewItemCreatorBase::recycle(int row, int column, QtGraphicsTableViewItem *item) const +QtGraphicsTableViewItem *QtGraphicsTableViewItemCreatorBase::reassign(int row, int column, QtGraphicsTableViewItem *item) { Q_ASSERT(item); item->setCell(row, column); return item; } -void QtGraphicsTableViewItemCreatorBase::destroy(QtGraphicsTableViewItem *item) const +void QtGraphicsTableViewItemCreatorBase::recycle(QtGraphicsTableViewItem *item) { delete item; } @@ -990,7 +990,7 @@ void QtGraphicsTableView::doLayout() QtGraphicsTableViewItem *item = d->items.value(index, 0); // ### FIXME: scroll the items properly if (item) { - item = d->creator->recycle(row, column, item); + item = d->creator->reassign(row, column, item); } else if (index >= d->items.count()) { item = d->creator->create(row, column, this); d->items.append(item); @@ -1004,7 +1004,7 @@ void QtGraphicsTableView::doLayout() const int lastIndex = (lastRow * horizontalCount) + lastColumn; const int removeCount = d->items.count() - (lastIndex - firstIndex) - 1; for (int i = 0; i < removeCount; ++i) - d->creator->destroy(d->items.takeLast()); + d->creator->recycle(d->items.takeLast()); } /*! diff --git a/src/qgraphicstableview.h b/src/qgraphicstableview.h index eb03e86..ee3950f 100644 --- a/src/qgraphicstableview.h +++ b/src/qgraphicstableview.h @@ -80,16 +80,16 @@ class QtGraphicsTableViewItemCreatorBase { public: virtual ~QtGraphicsTableViewItemCreatorBase(); - virtual QtGraphicsTableViewItem *create(int row, int column, QtGraphicsTableView *view) const = 0; - virtual QtGraphicsTableViewItem *recycle(int row, int column, QtGraphicsTableViewItem *item) const; - virtual void destroy(QtGraphicsTableViewItem *item) const; + virtual QtGraphicsTableViewItem *create(int row, int column, QtGraphicsTableView *view) = 0; + virtual QtGraphicsTableViewItem *reassign(int row, int column, QtGraphicsTableViewItem *item); + virtual void recycle(QtGraphicsTableViewItem *item); }; template <class T> class Q_ITEMVIEWSNG_EXPORT QtGraphicsTableViewItemCreator : public QtGraphicsTableViewItemCreatorBase { public: - inline QtGraphicsTableViewItem *create(int row, int column, QtGraphicsTableView *view) const { return new T(row, column, view); } + inline QtGraphicsTableViewItem *create(int row, int column, QtGraphicsTableView *view) { return new T(row, column, view); } }; class Q_ITEMVIEWSNG_EXPORT QtGraphicsTableView : public QGraphicsWidget |