diff options
Diffstat (limited to 'src/qgraphicslistview.cpp')
-rw-r--r-- | src/qgraphicslistview.cpp | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/src/qgraphicslistview.cpp b/src/qgraphicslistview.cpp index 431aa94..85dd752 100644 --- a/src/qgraphicslistview.cpp +++ b/src/qgraphicslistview.cpp @@ -38,6 +38,7 @@ #include <qdebug.h> #include <limits.h> +QT_BEGIN_NAMESPACE /*! \class QtGraphicsListViewItem @@ -874,7 +875,7 @@ int QtGraphicsListView::maximumFirstIndex() const break; } } - // the last item may be partially visible and + // the last item may be partially visible or // there may have been no items in the model if (index < last || index == -1) ++index; @@ -1181,20 +1182,22 @@ void QtGraphicsListView::copyStyleOptionState(const QStyleOptionGraphicsItem *so /*! */ +/* bool QtGraphicsListView::layoutsBlocked() const { Q_D(const QtGraphicsListView); return d->layoutsBlocked; } - +*/ /*! */ +/* void QtGraphicsListView::setLayoutsBlocked(bool block) { Q_D(QtGraphicsListView); d->layoutsBlocked = block; } - +*/ /*! \reimp */ @@ -1213,6 +1216,21 @@ bool QtGraphicsListView::event(QEvent *event) } /*! + \reimp + */ +QVariant QtGraphicsListView::itemChange(GraphicsItemChange change, const QVariant &value) +{ + Q_D(QtGraphicsListView); + if (change == QGraphicsItem::ItemChildRemovedChange) { + QGraphicsItem *item = qvariant_cast<QGraphicsItem*>(value); + int index = d->items.indexOf(static_cast<QtGraphicsListViewItem*>(item)); + if (index != -1) + d->items.removeAt(index); + } + return QGraphicsWidget::itemChange(change, value); +} + +/*! Returns the item creator for this view. */ QtGraphicsListViewItemCreatorBase *QtGraphicsListView::itemCreator() const @@ -1264,4 +1282,6 @@ void QtGraphicsListView::itemGeometryChanged(QtGraphicsListViewItem *item) } } +QT_END_NAMESPACE + #include "moc_qgraphicslistview.cpp" |