summaryrefslogtreecommitdiffstats
path: root/src/widgets/itemviews
diff options
context:
space:
mode:
authorJarek Kobus <jaroslaw.kobus@qt.io>2020-06-22 14:52:01 +0200
committerJarek Kobus <jaroslaw.kobus@qt.io>2020-07-02 21:57:06 +0200
commit2a6cdec718934ca2cc7f6f9c616ebe62f6912123 (patch)
treec8b9ed8db47912dccd2e8d125d23760936820c29 /src/widgets/itemviews
parentd4c04acc65657d29df5b790281a8d1ba896dd868 (diff)
Use QList instead of QVector in widgets
Task-number: QTBUG-84469 Change-Id: I3007734f8e4f164ece9dd8850ef007cbef9e12ef Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Diffstat (limited to 'src/widgets/itemviews')
-rw-r--r--src/widgets/itemviews/qabstractitemdelegate.cpp4
-rw-r--r--src/widgets/itemviews/qabstractitemdelegate.h2
-rw-r--r--src/widgets/itemviews/qabstractitemview.cpp11
-rw-r--r--src/widgets/itemviews/qabstractitemview.h3
-rw-r--r--src/widgets/itemviews/qabstractitemview_p.h8
-rw-r--r--src/widgets/itemviews/qbsptree.cpp4
-rw-r--r--src/widgets/itemviews/qbsptree_p.h14
-rw-r--r--src/widgets/itemviews/qcolumnview.cpp2
-rw-r--r--src/widgets/itemviews/qcolumnview_p.h2
-rw-r--r--src/widgets/itemviews/qdatawidgetmapper.cpp14
-rw-r--r--src/widgets/itemviews/qdatawidgetmapper.h4
-rw-r--r--src/widgets/itemviews/qheaderview.cpp25
-rw-r--r--src/widgets/itemviews/qheaderview.h3
-rw-r--r--src/widgets/itemviews/qheaderview_p.h8
-rw-r--r--src/widgets/itemviews/qitemdelegate.cpp6
-rw-r--r--src/widgets/itemviews/qlistview.cpp79
-rw-r--r--src/widgets/itemviews/qlistview.h3
-rw-r--r--src/widgets/itemviews/qlistview_p.h41
-rw-r--r--src/widgets/itemviews/qlistwidget.cpp14
-rw-r--r--src/widgets/itemviews/qlistwidget.h6
-rw-r--r--src/widgets/itemviews/qlistwidget_p.h4
-rw-r--r--src/widgets/itemviews/qtableview_p.h4
-rw-r--r--src/widgets/itemviews/qtablewidget.cpp48
-rw-r--r--src/widgets/itemviews/qtablewidget.h6
-rw-r--r--src/widgets/itemviews/qtablewidget_p.h18
-rw-r--r--src/widgets/itemviews/qtreeview.cpp35
-rw-r--r--src/widgets/itemviews/qtreeview.h4
-rw-r--r--src/widgets/itemviews/qtreeview_p.h14
-rw-r--r--src/widgets/itemviews/qtreewidget.cpp20
-rw-r--r--src/widgets/itemviews/qtreewidget.h6
-rw-r--r--src/widgets/itemviews/qtreewidget_p.h2
31 files changed, 220 insertions, 194 deletions
diff --git a/src/widgets/itemviews/qabstractitemdelegate.cpp b/src/widgets/itemviews/qabstractitemdelegate.cpp
index 52d7d54595..a39da69ffd 100644
--- a/src/widgets/itemviews/qabstractitemdelegate.cpp
+++ b/src/widgets/itemviews/qabstractitemdelegate.cpp
@@ -414,9 +414,9 @@ bool QAbstractItemDelegate::helpEvent(QHelpEvent *event,
This virtual method is reserved and will be used in Qt 5.1.
*/
-QVector<int> QAbstractItemDelegate::paintingRoles() const
+QList<int> QAbstractItemDelegate::paintingRoles() const
{
- return QVector<int>();
+ return QList<int>();
}
QAbstractItemDelegatePrivate::QAbstractItemDelegatePrivate()
diff --git a/src/widgets/itemviews/qabstractitemdelegate.h b/src/widgets/itemviews/qabstractitemdelegate.h
index 13c764933a..8a4d57fa22 100644
--- a/src/widgets/itemviews/qabstractitemdelegate.h
+++ b/src/widgets/itemviews/qabstractitemdelegate.h
@@ -108,7 +108,7 @@ public:
const QStyleOptionViewItem &option,
const QModelIndex &index);
- virtual QVector<int> paintingRoles() const;
+ virtual QList<int> paintingRoles() const;
Q_SIGNALS:
void commitData(QWidget *editor);
diff --git a/src/widgets/itemviews/qabstractitemview.cpp b/src/widgets/itemviews/qabstractitemview.cpp
index d531eb1607..dcc1e615a7 100644
--- a/src/widgets/itemviews/qabstractitemview.cpp
+++ b/src/widgets/itemviews/qabstractitemview.cpp
@@ -679,8 +679,8 @@ void QAbstractItemView::setModel(QAbstractItemModel *model)
if (d->model && d->model != QAbstractItemModelPrivate::staticEmptyModel()) {
disconnect(d->model, SIGNAL(destroyed()),
this, SLOT(_q_modelDestroyed()));
- disconnect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex,QVector<int>)),
- this, SLOT(dataChanged(QModelIndex,QModelIndex,QVector<int>)));
+ disconnect(d->model, SIGNAL(dataChanged(QModelIndex, QModelIndex, QList<int>)), this,
+ SLOT(dataChanged(QModelIndex, QModelIndex, QList<int>)));
disconnect(d->model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)),
this, SLOT(_q_headerDataChanged()));
disconnect(d->model, SIGNAL(rowsInserted(QModelIndex,int,int)),
@@ -710,8 +710,8 @@ void QAbstractItemView::setModel(QAbstractItemModel *model)
if (d->model != QAbstractItemModelPrivate::staticEmptyModel()) {
connect(d->model, SIGNAL(destroyed()),
this, SLOT(_q_modelDestroyed()));
- connect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex,QVector<int>)),
- this, SLOT(dataChanged(QModelIndex,QModelIndex,QVector<int>)));
+ connect(d->model, SIGNAL(dataChanged(QModelIndex, QModelIndex, QList<int>)), this,
+ SLOT(dataChanged(QModelIndex, QModelIndex, QList<int>)));
connect(d->model, SIGNAL(headerDataChanged(Qt::Orientation,int,int)),
this, SLOT(_q_headerDataChanged()));
connect(d->model, SIGNAL(rowsInserted(QModelIndex,int,int)),
@@ -3265,7 +3265,8 @@ void QAbstractItemView::update(const QModelIndex &index)
\note: Qt::ToolTipRole is not honored by dataChanged() in the views provided by Qt.
*/
-void QAbstractItemView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles)
+void QAbstractItemView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight,
+ const QList<int> &roles)
{
Q_UNUSED(roles);
// Single item changed
diff --git a/src/widgets/itemviews/qabstractitemview.h b/src/widgets/itemviews/qabstractitemview.h
index 23226e0af8..7efe5e3753 100644
--- a/src/widgets/itemviews/qabstractitemview.h
+++ b/src/widgets/itemviews/qabstractitemview.h
@@ -242,7 +242,8 @@ public Q_SLOTS:
void update(const QModelIndex &index);
protected Q_SLOTS:
- virtual void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles = QVector<int>());
+ virtual void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight,
+ const QList<int> &roles = QList<int>());
virtual void rowsInserted(const QModelIndex &parent, int start, int end);
virtual void rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end);
virtual void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected);
diff --git a/src/widgets/itemviews/qabstractitemview_p.h b/src/widgets/itemviews/qabstractitemview_p.h
index 6fb4a252b9..73af80730d 100644
--- a/src/widgets/itemviews/qabstractitemview_p.h
+++ b/src/widgets/itemviews/qabstractitemview_p.h
@@ -87,7 +87,7 @@ struct QItemViewPaintPair {
template <>
class QTypeInfo<QItemViewPaintPair> : public QTypeInfoMerger<QItemViewPaintPair, QRect, QModelIndex> {};
-typedef QVector<QItemViewPaintPair> QItemViewPaintPairs;
+typedef QList<QItemViewPaintPair> QItemViewPaintPairs;
class Q_AUTOTEST_EXPORT QAbstractItemViewPrivate : public QAbstractScrollAreaPrivate
{
@@ -459,11 +459,11 @@ private:
};
QT_BEGIN_INCLUDE_NAMESPACE
-#include <qvector.h>
+#include <qlist.h>
QT_END_INCLUDE_NAMESPACE
-template <typename T>
-inline int qBinarySearch(const QVector<T> &vec, const T &item, int start, int end)
+template<typename T>
+inline int qBinarySearch(const QList<T> &vec, const T &item, int start, int end)
{
int i = (start + end + 1) >> 1;
while (end - start > 0) {
diff --git a/src/widgets/itemviews/qbsptree.cpp b/src/widgets/itemviews/qbsptree.cpp
index 0e896317d0..6df1d14f2f 100644
--- a/src/widgets/itemviews/qbsptree.cpp
+++ b/src/widgets/itemviews/qbsptree.cpp
@@ -128,12 +128,12 @@ void QBspTree::init(const QRect &area, int depth, NodeType type, int index)
}
}
-void QBspTree::insert(QVector<int> &leaf, const QRect &, uint, QBspTreeData data)
+void QBspTree::insert(QList<int> &leaf, const QRect &, uint, QBspTreeData data)
{
leaf.append(data.i);
}
-void QBspTree::remove(QVector<int> &leaf, const QRect &, uint, QBspTreeData data)
+void QBspTree::remove(QList<int> &leaf, const QRect &, uint, QBspTreeData data)
{
int i = leaf.indexOf(data.i);
if (i != -1)
diff --git a/src/widgets/itemviews/qbsptree_p.h b/src/widgets/itemviews/qbsptree_p.h
index 5fd7a5c45f..58481491f1 100644
--- a/src/widgets/itemviews/qbsptree_p.h
+++ b/src/widgets/itemviews/qbsptree_p.h
@@ -52,7 +52,7 @@
//
#include <QtWidgets/private/qtwidgetsglobal_p.h>
-#include <qvector.h>
+#include <qlist.h>
#include <qrect.h>
QT_BEGIN_NAMESPACE
@@ -80,7 +80,7 @@ public:
};
};
typedef QBspTree::Data QBspTreeData;
- typedef void callback(QVector<int> &leaf, const QRect &area, uint visited, QBspTreeData data);
+ typedef void callback(QList<int> &leaf, const QRect &area, uint visited, QBspTreeData data);
QBspTree();
@@ -92,7 +92,7 @@ public:
void climbTree(const QRect &rect, callback *function, QBspTreeData data);
inline int leafCount() const { return leaves.count(); }
- inline QVector<int> &leaf(int i) { return leaves[i]; }
+ inline QList<int> &leaf(int i) { return leaves[i]; }
inline void insertLeaf(const QRect &r, int i) { climbTree(r, &insert, i, 0); }
inline void removeLeaf(const QRect &r, int i) { climbTree(r, &remove, i, 0); }
@@ -103,14 +103,14 @@ protected:
inline int parentIndex(int i) const { return (i & 1) ? ((i - 1) / 2) : ((i - 2) / 2); }
inline int firstChildIndex(int i) const { return ((i * 2) + 1); }
- static void insert(QVector<int> &leaf, const QRect &area, uint visited, QBspTreeData data);
- static void remove(QVector<int> &leaf, const QRect &area, uint visited, QBspTreeData data);
+ static void insert(QList<int> &leaf, const QRect &area, uint visited, QBspTreeData data);
+ static void remove(QList<int> &leaf, const QRect &area, uint visited, QBspTreeData data);
private:
uint depth;
mutable uint visited;
- QVector<Node> nodes;
- mutable QVector< QVector<int> > leaves; // the leaves are just indices into the items
+ QList<Node> nodes;
+ mutable QList<QList<int>> leaves; // the leaves are just indices into the items
};
QT_END_NAMESPACE
diff --git a/src/widgets/itemviews/qcolumnview.cpp b/src/widgets/itemviews/qcolumnview.cpp
index 4d0161025c..5ad7b5d78c 100644
--- a/src/widgets/itemviews/qcolumnview.cpp
+++ b/src/widgets/itemviews/qcolumnview.cpp
@@ -566,7 +566,7 @@ void QColumnViewPrivate::closeColumns(const QModelIndex &parent, bool build)
bool clearAll = !parent.isValid();
bool passThroughRoot = false;
- QVector<QModelIndex> dirsToAppend;
+ QList<QModelIndex> dirsToAppend;
// Find the last column that matches the parent's tree
int currentColumn = -1;
diff --git a/src/widgets/itemviews/qcolumnview_p.h b/src/widgets/itemviews/qcolumnview_p.h
index c60579255e..4fa523fd67 100644
--- a/src/widgets/itemviews/qcolumnview_p.h
+++ b/src/widgets/itemviews/qcolumnview_p.h
@@ -168,7 +168,7 @@ public:
void _q_columnsInserted(const QModelIndex &parent, int start, int end) override;
QList<QAbstractItemView*> columns;
- QVector<int> columnSizes; // used during init and corner moving
+ QList<int> columnSizes; // used during init and corner moving
bool showResizeGrips;
int offset;
#if QT_CONFIG(animation)
diff --git a/src/widgets/itemviews/qdatawidgetmapper.cpp b/src/widgets/itemviews/qdatawidgetmapper.cpp
index 74100c077e..403ea33c0b 100644
--- a/src/widgets/itemviews/qdatawidgetmapper.cpp
+++ b/src/widgets/itemviews/qdatawidgetmapper.cpp
@@ -102,7 +102,8 @@ public:
void populate();
// private slots
- void _q_dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &);
+ void _q_dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight,
+ const QList<int> &);
void _q_commitData(QWidget *);
void _q_closeEditor(QWidget *, QAbstractItemDelegate::EndEditHint);
void _q_modelDestroyed();
@@ -176,7 +177,8 @@ static bool qContainsIndex(const QModelIndex &idx, const QModelIndex &topLeft,
&& idx.column() >= topLeft.column() && idx.column() <= bottomRight.column();
}
-void QDataWidgetMapperPrivate::_q_dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &)
+void QDataWidgetMapperPrivate::_q_dataChanged(const QModelIndex &topLeft,
+ const QModelIndex &bottomRight, const QList<int> &)
{
if (topLeft.parent() != rootIndex)
return; // not in our hierarchy
@@ -349,8 +351,8 @@ void QDataWidgetMapper::setModel(QAbstractItemModel *model)
return;
if (d->model) {
- disconnect(d->model, SIGNAL(dataChanged(QModelIndex,QModelIndex,QVector<int>)), this,
- SLOT(_q_dataChanged(QModelIndex,QModelIndex,QVector<int>)));
+ disconnect(d->model, SIGNAL(dataChanged(QModelIndex, QModelIndex, QList<int>)), this,
+ SLOT(_q_dataChanged(QModelIndex, QModelIndex, QList<int>)));
disconnect(d->model, SIGNAL(destroyed()), this,
SLOT(_q_modelDestroyed()));
}
@@ -360,8 +362,8 @@ void QDataWidgetMapper::setModel(QAbstractItemModel *model)
d->model = model;
- connect(model, SIGNAL(dataChanged(QModelIndex,QModelIndex,QVector<int>)),
- SLOT(_q_dataChanged(QModelIndex,QModelIndex,QVector<int>)));
+ connect(model, SIGNAL(dataChanged(QModelIndex, QModelIndex, QList<int>)),
+ SLOT(_q_dataChanged(QModelIndex, QModelIndex, QList<int>)));
connect(model, SIGNAL(destroyed()), SLOT(_q_modelDestroyed()));
}
diff --git a/src/widgets/itemviews/qdatawidgetmapper.h b/src/widgets/itemviews/qdatawidgetmapper.h
index 2d75b63a5e..c8406f82fb 100644
--- a/src/widgets/itemviews/qdatawidgetmapper.h
+++ b/src/widgets/itemviews/qdatawidgetmapper.h
@@ -108,7 +108,9 @@ Q_SIGNALS:
private:
Q_DECLARE_PRIVATE(QDataWidgetMapper)
Q_DISABLE_COPY(QDataWidgetMapper)
- Q_PRIVATE_SLOT(d_func(), void _q_dataChanged(const QModelIndex &, const QModelIndex &, const QVector<int> &))
+ Q_PRIVATE_SLOT(d_func(),
+ void _q_dataChanged(const QModelIndex &, const QModelIndex &,
+ const QList<int> &))
Q_PRIVATE_SLOT(d_func(), void _q_commitData(QWidget *))
Q_PRIVATE_SLOT(d_func(), void _q_closeEditor(QWidget *, QAbstractItemDelegate::EndEditHint))
Q_PRIVATE_SLOT(d_func(), void _q_modelDestroyed())
diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp
index 60020e2072..7751c756fe 100644
--- a/src/widgets/itemviews/qheaderview.cpp
+++ b/src/widgets/itemviews/qheaderview.cpp
@@ -39,25 +39,25 @@
#include "qheaderview.h"
+#include <qabstractitemdelegate.h>
+#include <qapplication.h>
#include <qbitarray.h>
#include <qbrush.h>
#include <qdebug.h>
#include <qevent.h>
+#include <qlist.h>
#include <qpainter.h>
#include <qscrollbar.h>
+#include <qstyle.h>
+#include <qstyleoption.h>
#if QT_CONFIG(tooltip)
#include <qtooltip.h>
#endif
+#include <qvarlengtharray.h>
+#include <qvariant.h>
#if QT_CONFIG(whatsthis)
#include <qwhatsthis.h>
#endif
-#include <qstyle.h>
-#include <qstyleoption.h>
-#include <qvector.h>
-#include <qapplication.h>
-#include <qvarlengtharray.h>
-#include <qabstractitemdelegate.h>
-#include <qvariant.h>
#include <private/qheaderview_p.h>
#include <private/qabstractitemmodel_p.h>
@@ -3050,7 +3050,8 @@ void QHeaderView::scrollContentsBy(int dx, int dy)
\reimp
\internal
*/
-void QHeaderView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles)
+void QHeaderView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight,
+ const QList<int> &roles)
{
Q_D(QHeaderView);
if (!roles.isEmpty()) {
@@ -3979,8 +3980,8 @@ bool QHeaderViewPrivate::read(QDataStream &in)
int sortIndicatorSectionIn;
bool sortIndicatorShownIn;
int lengthIn;
- QVector<int> visualIndicesIn;
- QVector<int> logicalIndicesIn;
+ QList<int> visualIndicesIn;
+ QList<int> logicalIndicesIn;
QHash<int, int> hiddenSectionSizeIn;
bool movableSectionsIn;
bool clickableSectionsIn;
@@ -3991,7 +3992,7 @@ bool QHeaderViewPrivate::read(QDataStream &in)
int contentsSectionsIn;
int defaultSectionSizeIn;
int minimumSectionSizeIn;
- QVector<SectionItem> sectionItemsIn;
+ QList<SectionItem> sectionItemsIn;
in >> orient;
in >> order;
@@ -4031,7 +4032,7 @@ bool QHeaderViewPrivate::read(QDataStream &in)
// In Qt4 we had a vector of spans where one span could hold information on more sections.
// Now we have an itemvector where one items contains information about one section
// For backward compatibility with Qt4 we do the following
- QVector<SectionItem> newSectionItems;
+ QList<SectionItem> newSectionItems;
for (int u = 0; u < sectionItemsIn.count(); ++u) {
int count = sectionItemsIn.at(u).tmpDataStreamSectionCount;
if (count > 1)
diff --git a/src/widgets/itemviews/qheaderview.h b/src/widgets/itemviews/qheaderview.h
index a376662763..6cfa9a8bf0 100644
--- a/src/widgets/itemviews/qheaderview.h
+++ b/src/widgets/itemviews/qheaderview.h
@@ -217,7 +217,8 @@ protected:
void updateGeometries() override;
void scrollContentsBy(int dx, int dy) override;
- void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles = QVector<int>()) override;
+ void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight,
+ const QList<int> &roles = QList<int>()) override;
void rowsInserted(const QModelIndex &parent, int start, int end) override;
QRect visualRect(const QModelIndex &index) const override;
diff --git a/src/widgets/itemviews/qheaderview_p.h b/src/widgets/itemviews/qheaderview_p.h
index 766adef36d..59879e0838 100644
--- a/src/widgets/itemviews/qheaderview_p.h
+++ b/src/widgets/itemviews/qheaderview_p.h
@@ -258,8 +258,8 @@ public:
int sortIndicatorSection;
bool sortIndicatorShown;
- mutable QVector<int> visualIndices; // visualIndex = visualIndices.at(logicalIndex)
- mutable QVector<int> logicalIndices; // logicalIndex = row or column in the model
+ mutable QList<int> visualIndices; // visualIndex = visualIndices.at(logicalIndex)
+ mutable QList<int> logicalIndices; // logicalIndex = row or column in the model
mutable QBitArray sectionSelected; // from logical index to bit
mutable QHash<int, int> hiddenSectionSize; // from logical index to section size
mutable QHash<int, int> cascadingSectionSize; // from visual index to section size
@@ -329,12 +329,12 @@ public:
#endif
};
- QVector<SectionItem> sectionItems;
+ QList<SectionItem> sectionItems;
struct LayoutChangeItem {
QPersistentModelIndex index;
SectionItem section;
};
- QVector<LayoutChangeItem> layoutChangePersistentSections;
+ QList<LayoutChangeItem> layoutChangePersistentSections;
void createSectionItems(int start, int end, int size, QHeaderView::ResizeMode mode);
void removeSectionsFromSectionItems(int start, int end);
diff --git a/src/widgets/itemviews/qitemdelegate.cpp b/src/widgets/itemviews/qitemdelegate.cpp
index e6a68bcadd..522f1cc876 100644
--- a/src/widgets/itemviews/qitemdelegate.cpp
+++ b/src/widgets/itemviews/qitemdelegate.cpp
@@ -695,10 +695,12 @@ void QItemDelegate::drawDisplay(QPainter *painter, const QStyleOptionViewItem &o
|| textRect.height() < textLayoutSize.height())) {
painter->save();
painter->setClipRect(layoutRect);
- d->textLayout.draw(painter, layoutRect.topLeft(), QVector<QTextLayout::FormatRange>(), layoutRect);
+ d->textLayout.draw(painter, layoutRect.topLeft(), QList<QTextLayout::FormatRange>(),
+ layoutRect);
painter->restore();
} else {
- d->textLayout.draw(painter, layoutRect.topLeft(), QVector<QTextLayout::FormatRange>(), layoutRect);
+ d->textLayout.draw(painter, layoutRect.topLeft(), QList<QTextLayout::FormatRange>(),
+ layoutRect);
}
}
diff --git a/src/widgets/itemviews/qlistview.cpp b/src/widgets/itemviews/qlistview.cpp
index 053b2dd959..d86f6fece4 100644
--- a/src/widgets/itemviews/qlistview.cpp
+++ b/src/widgets/itemviews/qlistview.cpp
@@ -41,26 +41,26 @@
#include "qlistview.h"
#include <qabstractitemdelegate.h>
+#ifndef QT_NO_ACCESSIBILITY
+#include <qaccessible.h>
+#endif
#include <qapplication.h>
#include <qpainter.h>
#include <qbitmap.h>
+#include <qdebug.h>
#if QT_CONFIG(draganddrop)
#include <qdrag.h>
#endif
-#include <qvector.h>
-#include <qstyle.h>
#include <qevent.h>
-#include <qscrollbar.h>
+#include <qlist.h>
#if QT_CONFIG(rubberband)
#include <qrubberband.h>
#endif
+#include <qscrollbar.h>
+#include <qstyle.h>
#include <private/qapplication_p.h>
#include <private/qlistview_p.h>
#include <private/qscrollbar_p.h>
-#include <qdebug.h>
-#ifndef QT_NO_ACCESSIBILITY
-#include <qaccessible.h>
-#endif
#include <algorithm>
@@ -655,7 +655,8 @@ QItemViewPaintPairs QListViewPrivate::draggablePaintPairs(const QModelIndexList
QRect &rect = *r;
const QRect viewportRect = viewport->rect();
QItemViewPaintPairs ret;
- QVector<QModelIndex> visibleIndexes = intersectingSet(viewportRect.translated(q->horizontalOffset(), q->verticalOffset()));
+ QList<QModelIndex> visibleIndexes =
+ intersectingSet(viewportRect.translated(q->horizontalOffset(), q->verticalOffset()));
std::sort(visibleIndexes.begin(), visibleIndexes.end());
for (const auto &index : indexes) {
if (std::binary_search(visibleIndexes.cbegin(), visibleIndexes.cend(), index)) {
@@ -731,7 +732,8 @@ QSize QListView::contentsSize() const
/*!
\reimp
*/
-void QListView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles)
+void QListView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight,
+ const QList<int> &roles)
{
d_func()->commonListView->dataChanged(topLeft, bottomRight);
QAbstractItemView::dataChanged(topLeft, bottomRight, roles);
@@ -920,8 +922,8 @@ void QListView::dropEvent(QDropEvent *event)
int col = -1;
int row = -1;
if (d->dropOn(event, &row, &col, &topIndex)) {
- const QVector<QModelIndex> selIndexes = selectedIndexes();
- QVector<QPersistentModelIndex> persIndexes;
+ const QList<QModelIndex> selIndexes = selectedIndexes();
+ QList<QPersistentModelIndex> persIndexes;
persIndexes.reserve(selIndexes.count());
for (const auto &index : selIndexes) {
@@ -1006,7 +1008,8 @@ void QListView::paintEvent(QPaintEvent *e)
QStyleOptionViewItem option = d->viewOptionsV1();
QPainter painter(d->viewport);
- const QVector<QModelIndex> toBeRendered = d->intersectingSet(e->rect().translated(horizontalOffset(), verticalOffset()), false);
+ const QList<QModelIndex> toBeRendered =
+ d->intersectingSet(e->rect().translated(horizontalOffset(), verticalOffset()), false);
const QModelIndex current = currentIndex();
const QModelIndex hover = d->hover;
@@ -1025,8 +1028,8 @@ void QListView::paintEvent(QPaintEvent *e)
? qMax(viewport()->size().width(), d->contentsSize().width()) - 2 * d->spacing()
: qMax(viewport()->size().height(), d->contentsSize().height()) - 2 * d->spacing();
- QVector<QModelIndex>::const_iterator end = toBeRendered.constEnd();
- for (QVector<QModelIndex>::const_iterator it = toBeRendered.constBegin(); it != end; ++it) {
+ QList<QModelIndex>::const_iterator end = toBeRendered.constEnd();
+ for (QList<QModelIndex>::const_iterator it = toBeRendered.constBegin(); it != end; ++it) {
Q_ASSERT((*it).isValid());
option.rect = visualRect(*it);
@@ -1111,7 +1114,7 @@ QModelIndex QListView::indexAt(const QPoint &p) const
{
Q_D(const QListView);
QRect rect(p.x() + horizontalOffset(), p.y() + verticalOffset(), 1, 1);
- const QVector<QModelIndex> intersectVector = d->intersectingSet(rect);
+ const QList<QModelIndex> intersectVector = d->intersectingSet(rect);
QModelIndex index = intersectVector.count() > 0
? intersectVector.last() : QModelIndex();
if (index.isValid() && visualRect(index).contains(p))
@@ -1190,7 +1193,7 @@ QModelIndex QListView::moveCursor(CursorAction cursorAction, Qt::KeyboardModifie
if (d->gridSize().isValid()) rect.setSize(d->gridSize());
QSize contents = d->contentsSize();
- QVector<QModelIndex> intersectVector;
+ QList<QModelIndex> intersectVector;
switch (cursorAction) {
case MoveLeft:
@@ -1332,7 +1335,8 @@ void QListView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFl
QItemSelection selection;
if (rect.width() == 1 && rect.height() == 1) {
- const QVector<QModelIndex> intersectVector = d->intersectingSet(rect.translated(horizontalOffset(), verticalOffset()));
+ const QList<QModelIndex> intersectVector =
+ d->intersectingSet(rect.translated(horizontalOffset(), verticalOffset()));
QModelIndex tl;
if (!intersectVector.isEmpty())
tl = intersectVector.last(); // special case for mouse press; only select the top item
@@ -1345,7 +1349,7 @@ void QListView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFl
QModelIndex tl, br;
// get the first item
const QRect topLeft(rect.left() + horizontalOffset(), rect.top() + verticalOffset(), 1, 1);
- QVector<QModelIndex> intersectVector = d->intersectingSet(topLeft);
+ QList<QModelIndex> intersectVector = d->intersectingSet(topLeft);
if (!intersectVector.isEmpty())
tl = intersectVector.last();
// get the last item
@@ -1842,12 +1846,12 @@ QRect QListViewPrivate::mapToViewport(const QRect &rect, bool extend) const
}
QModelIndex QListViewPrivate::closestIndex(const QRect &target,
- const QVector<QModelIndex> &candidates) const
+ const QList<QModelIndex> &candidates) const
{
int distance = 0;
int shortest = INT_MAX;
QModelIndex closest;
- QVector<QModelIndex>::const_iterator it = candidates.begin();
+ QList<QModelIndex>::const_iterator it = candidates.begin();
for (; it != candidates.end(); ++it) {
if (!(*it).isValid())
@@ -1896,8 +1900,8 @@ QItemSelection QListViewPrivate::selection(const QRect &rect) const
{
QItemSelection selection;
QModelIndex tl, br;
- const QVector<QModelIndex> intersectVector = intersectingSet(rect);
- QVector<QModelIndex>::const_iterator it = intersectVector.begin();
+ const QList<QModelIndex> intersectVector = intersectingSet(rect);
+ QList<QModelIndex>::const_iterator it = intersectVector.begin();
for (; it != intersectVector.end(); ++it) {
if (!tl.isValid() && !br.isValid()) {
tl = br = *it;
@@ -1939,7 +1943,8 @@ bool QListViewPrivate::dropOn(QDropEvent *event, int *dropRow, int *dropCol, QMo
}
#endif
-void QListViewPrivate::removeCurrentAndDisabled(QVector<QModelIndex> *indexes, const QModelIndex &current) const
+void QListViewPrivate::removeCurrentAndDisabled(QList<QModelIndex> *indexes,
+ const QModelIndex &current) const
{
auto isCurrentOrDisabled = [this, current](const QModelIndex &index) {
return !isIndexEnabled(index) || index == current;
@@ -2138,7 +2143,7 @@ void QListModeViewBase::dragMoveEvent(QDragMoveEvent *event)
QPoint p = event->position().toPoint();
QRect rect(p.x() + horizontalOffset(), p.y() + verticalOffset(), 1, 1);
rect.adjust(-dd->spacing(), -dd->spacing(), dd->spacing(), dd->spacing());
- const QVector<QModelIndex> intersectVector = dd->intersectingSet(rect);
+ const QList<QModelIndex> intersectVector = dd->intersectingSet(rect);
QModelIndex index = intersectVector.count() > 0
? intersectVector.last() : QModelIndex();
dd->hover = index;
@@ -2217,7 +2222,7 @@ bool QListModeViewBase::dropOn(QDropEvent *event, int *dropRow, int *dropCol, QM
QPoint p = event->position().toPoint();
QRect rect(p.x() + horizontalOffset(), p.y() + verticalOffset(), 1, 1);
rect.adjust(-dd->spacing(), -dd->spacing(), dd->spacing(), dd->spacing());
- const QVector<QModelIndex> intersectVector = dd->intersectingSet(rect);
+ const QList<QModelIndex> intersectVector = dd->intersectingSet(rect);
index = intersectVector.count() > 0
? intersectVector.last() : QModelIndex();
if (!index.isValid())
@@ -2630,9 +2635,9 @@ void QListModeViewBase::doStaticLayout(const QListViewLayoutInfo &info)
Finds the set of items intersecting with \a area.
In this function, itemsize is counted from topleft to the start of the next item.
*/
-QVector<QModelIndex> QListModeViewBase::intersectingSet(const QRect &area) const
+QList<QModelIndex> QListModeViewBase::intersectingSet(const QRect &area) const
{
- QVector<QModelIndex> ret;
+ QList<QModelIndex> ret;
int segStartPosition;
int segEndPosition;
int flowStartPosition;
@@ -2709,7 +2714,7 @@ QRect QListModeViewBase::mapToViewport(const QRect &rect) const
int QListModeViewBase::perItemScrollingPageSteps(int length, int bounds, bool wrap) const
{
- QVector<int> positions;
+ QList<int> positions;
if (wrap)
positions = segmentPositions;
else if (!flowPositions.isEmpty()) {
@@ -2750,7 +2755,7 @@ int QListModeViewBase::perItemScrollToValue(int index, int scrollValue, int view
return scrollValue;
itemExtent += spacing();
- QVector<int> hiddenRows = dd->hiddenRowIds();
+ QList<int> hiddenRows = dd->hiddenRowIds();
std::sort(hiddenRows.begin(), hiddenRows.end());
int hiddenRowsBefore = 0;
for (int i = 0; i < hiddenRows.size() - 1; ++i)
@@ -2899,7 +2904,7 @@ bool QIconModeViewBase::filterDropEvent(QDropEvent *e)
QPoint end = e->position().toPoint() + offset;
if (qq->acceptDrops()) {
const Qt::ItemFlags dropableFlags = Qt::ItemIsDropEnabled|Qt::ItemIsEnabled;
- const QVector<QModelIndex> &dropIndices = intersectingSet(QRect(end, QSize(1, 1)));
+ const QList<QModelIndex> &dropIndices = intersectingSet(QRect(end, QSize(1, 1)));
for (const QModelIndex &index : dropIndices)
if ((index.flags() & dropableFlags) == dropableFlags)
return false;
@@ -2964,7 +2969,7 @@ bool QIconModeViewBase::filterDragMoveEvent(QDragMoveEvent *e)
QModelIndex index;
if (movement() == QListView::Snap) {
QRect rect(snapToGrid(e->position().toPoint() + offset()), gridSize());
- const QVector<QModelIndex> intersectVector = intersectingSet(rect);
+ const QList<QModelIndex> intersectVector = intersectingSet(rect);
index = intersectVector.count() > 0 ? intersectVector.last() : QModelIndex();
} else {
index = qq->indexAt(e->position().toPoint());
@@ -3216,20 +3221,20 @@ void QIconModeViewBase::doDynamicLayout(const QListViewLayoutInfo &info)
viewport()->update();
}
-QVector<QModelIndex> QIconModeViewBase::intersectingSet(const QRect &area) const
+QList<QModelIndex> QIconModeViewBase::intersectingSet(const QRect &area) const
{
QIconModeViewBase *that = const_cast<QIconModeViewBase*>(this);
QBspTree::Data data(static_cast<void*>(that));
- QVector<QModelIndex> res;
+ QList<QModelIndex> res;
that->interSectingVector = &res;
that->tree.climbTree(area, &QIconModeViewBase::addLeaf, data);
that->interSectingVector = nullptr;
return res;
}
-QRect QIconModeViewBase::itemsRect(const QVector<QModelIndex> &indexes) const
+QRect QIconModeViewBase::itemsRect(const QList<QModelIndex> &indexes) const
{
- QVector<QModelIndex>::const_iterator it = indexes.begin();
+ QList<QModelIndex>::const_iterator it = indexes.begin();
QListViewItem item = indexToListViewItem(*it);
QRect rect(item.x, item.y, item.w, item.h);
for (; it != indexes.end(); ++it) {
@@ -3275,8 +3280,8 @@ int QIconModeViewBase::itemIndex(const QListViewItem &item) const
return -1;
}
-void QIconModeViewBase::addLeaf(QVector<int> &leaf, const QRect &area,
- uint visited, QBspTree::Data data)
+void QIconModeViewBase::addLeaf(QList<int> &leaf, const QRect &area, uint visited,
+ QBspTree::Data data)
{
QListViewItem *vi;
QIconModeViewBase *_this = static_cast<QIconModeViewBase *>(data.ptr);
diff --git a/src/widgets/itemviews/qlistview.h b/src/widgets/itemviews/qlistview.h
index 8a5d5e02ae..dc66cb943a 100644
--- a/src/widgets/itemviews/qlistview.h
+++ b/src/widgets/itemviews/qlistview.h
@@ -150,7 +150,8 @@ protected:
void resizeContents(int width, int height);
QSize contentsSize() const;
- void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles = QVector<int>()) override;
+ void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight,
+ const QList<int> &roles = QList<int>()) override;
void rowsInserted(const QModelIndex &parent, int start, int end) override;
void rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end) override;
diff --git a/src/widgets/itemviews/qlistview_p.h b/src/widgets/itemviews/qlistview_p.h
index 86331bb862..07f4ae4a90 100644
--- a/src/widgets/itemviews/qlistview_p.h
+++ b/src/widgets/itemviews/qlistview_p.h
@@ -126,7 +126,7 @@ public:
virtual bool doBatchedItemLayout(const QListViewLayoutInfo &info, int max) = 0;
virtual void clear() = 0;
virtual void setRowCount(int) = 0;
- virtual QVector<QModelIndex> intersectingSet(const QRect &area) const = 0;
+ virtual QList<QModelIndex> intersectingSet(const QRect &area) const = 0;
virtual void dataChanged(const QModelIndex &, const QModelIndex &) = 0;
virtual int horizontalScrollToValue(int index, QListView::ScrollHint hint,
@@ -198,11 +198,11 @@ class QListModeViewBase : public QCommonListViewBase
public:
QListModeViewBase(QListView *q, QListViewPrivate *d);
- QVector<int> flowPositions;
- QVector<int> segmentPositions;
- QVector<int> segmentStartRows;
- QVector<int> segmentExtents;
- QVector<int> scrollValueMap;
+ QList<int> flowPositions;
+ QList<int> segmentPositions;
+ QList<int> segmentStartRows;
+ QList<int> segmentExtents;
+ QList<int> scrollValueMap;
// used when laying out in batches
int batchSavedPosition;
@@ -213,7 +213,7 @@ public:
bool doBatchedItemLayout(const QListViewLayoutInfo &info, int max) override;
void clear() override;
void setRowCount(int rowCount) override { flowPositions.resize(rowCount); }
- QVector<QModelIndex> intersectingSet(const QRect &area) const override;
+ QList<QModelIndex> intersectingSet(const QRect &area) const override;
void dataChanged(const QModelIndex &, const QModelIndex &) override;
int horizontalScrollToValue(int index, QListView::ScrollHint hint,
@@ -251,14 +251,14 @@ public:
QIconModeViewBase(QListView *q, QListViewPrivate *d) : QCommonListViewBase(q, d), interSectingVector(nullptr) {}
QBspTree tree;
- QVector<QListViewItem> items;
+ QList<QListViewItem> items;
QBitArray moved;
- QVector<QModelIndex> draggedItems; // indices to the tree.itemVector
+ QList<QModelIndex> draggedItems; // indices to the tree.itemVector
mutable QPoint draggedItemsPos;
// used when laying out in batches
- QVector<QModelIndex> *interSectingVector; //used from within intersectingSet
+ QList<QModelIndex> *interSectingVector; // used from within intersectingSet
//reimplementations
int itemIndex(const QListViewItem &item) const override;
@@ -266,7 +266,7 @@ public:
bool doBatchedItemLayout(const QListViewLayoutInfo &info, int max) override;
void clear() override;
void setRowCount(int rowCount) override;
- QVector<QModelIndex> intersectingSet(const QRect &area) const override;
+ QList<QModelIndex> intersectingSet(const QRect &area) const override;
void scrollContentsBy(int dx, int dy, bool scrollElasticBand) override;
void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight) override;
@@ -285,14 +285,13 @@ private:
void initBspTree(const QSize &contents);
QPoint initDynamicLayout(const QListViewLayoutInfo &info);
void doDynamicLayout(const QListViewLayoutInfo &info);
- static void addLeaf(QVector<int> &leaf, const QRect &area,
- uint visited, QBspTree::Data data);
- QRect itemsRect(const QVector<QModelIndex> &indexes) const;
+ static void addLeaf(QList<int> &leaf, const QRect &area, uint visited, QBspTree::Data data);
+ QRect itemsRect(const QList<QModelIndex> &indexes) const;
QRect draggedItemsRect() const;
QPoint snapToGrid(const QPoint &pos) const;
void updateContentsSize();
QPoint draggedItemsDelta() const;
- void drawItems(QPainter *painter, const QVector<QModelIndex> &indexes) const;
+ void drawItems(QPainter *painter, const QList<QModelIndex> &indexes) const;
void moveItem(int index, const QPoint &dest);
};
@@ -309,7 +308,8 @@ public:
bool doItemsLayout(int num);
- inline QVector<QModelIndex> intersectingSet(const QRect &area, bool doLayout = true) const {
+ inline QList<QModelIndex> intersectingSet(const QRect &area, bool doLayout = true) const
+ {
if (doLayout) executePostedLayout();
QRect a = (q_func()->isRightToLeft() ? flipX(area.normalized()) : area.normalized());
return commonListView->intersectingSet(a);
@@ -363,7 +363,7 @@ public:
QRect mapToViewport(const QRect &rect, bool extend = true) const;
- QModelIndex closestIndex(const QRect &target, const QVector<QModelIndex> &candidates) const;
+ QModelIndex closestIndex(const QRect &target, const QList<QModelIndex> &candidates) const;
QSize itemSize(const QStyleOptionViewItem &option, const QModelIndex &index) const;
bool selectionAllowed(const QModelIndex &index) const override
@@ -395,8 +395,9 @@ public:
return isPersistent(idx) && hiddenRows.contains(idx);
}
// helper to avoid checking for isPersistent and creating persistent indexes as above in isHidden
- QVector<int> hiddenRowIds() const {
- QVector<int> rowIds;
+ QList<int> hiddenRowIds() const
+ {
+ QList<int> rowIds;
rowIds.reserve(hiddenRows.size());
for (const auto &idx : hiddenRows)
rowIds += idx.row();
@@ -404,7 +405,7 @@ public:
}
inline bool isHiddenOrDisabled(int row) const { return isHidden(row) || !isIndexEnabled(modelIndex(row)); }
- void removeCurrentAndDisabled(QVector<QModelIndex> *indexes, const QModelIndex &current) const;
+ void removeCurrentAndDisabled(QList<QModelIndex> *indexes, const QModelIndex &current) const;
void scrollElasticBandBy(int dx, int dy);
diff --git a/src/widgets/itemviews/qlistwidget.cpp b/src/widgets/itemviews/qlistwidget.cpp
index 2a0a1d683f..176f72a471 100644
--- a/src/widgets/itemviews/qlistwidget.cpp
+++ b/src/widgets/itemviews/qlistwidget.cpp
@@ -237,7 +237,7 @@ bool QListModel::clearItemData(const QModelIndex &index)
if (std::all_of(beginIter, endIter, [](const QWidgetItemData& data) -> bool { return !data.value.isValid(); }))
return true; //it's already cleared
item->d->values.clear();
- emit dataChanged(index, index, QVector<int>{});
+ emit dataChanged(index, index, QList<int> {});
return true;
}
@@ -336,7 +336,7 @@ void QListModel::sort(int column, Qt::SortOrder order)
emit layoutAboutToBeChanged({}, QAbstractItemModel::VerticalSortHint);
- QVector < QPair<QListWidgetItem*,int> > sorting(items.count());
+ QList<QPair<QListWidgetItem *, int>> sorting(items.count());
for (int i = 0; i < items.count(); ++i) {
QListWidgetItem *item = items.at(i);
sorting[i].first = item;
@@ -374,7 +374,7 @@ void QListModel::ensureSorted(int column, Qt::SortOrder order, int start, int en
return;
int count = end - start + 1;
- QVector < QPair<QListWidgetItem*,int> > sorting(count);
+ QList<QPair<QListWidgetItem *, int>> sorting(count);
for (int i = 0; i < count; ++i) {
sorting[i].first = items.at(start + i);
sorting[i].second = start + i;
@@ -454,7 +454,7 @@ QList<QListWidgetItem*>::iterator QListModel::sortedInsertionIterator(
return std::lower_bound(begin, end, item, QListModelGreaterThan());
}
-void QListModel::itemChanged(QListWidgetItem *item, const QVector<int> &roles)
+void QListModel::itemChanged(QListWidgetItem *item, const QList<int> &roles)
{
const QModelIndex idx = index(item);
emit dataChanged(idx, idx, roles);
@@ -744,9 +744,9 @@ void QListWidgetItem::setData(int role, const QVariant &value)
if (!found)
d->values.append(QWidgetItemData(role, value));
if (QListModel *model = listModel()) {
- const QVector<int> roles((role == Qt::DisplayRole) ?
- QVector<int>({Qt::DisplayRole, Qt::EditRole}) :
- QVector<int>({role}));
+ const QList<int> roles((role == Qt::DisplayRole)
+ ? QList<int>({ Qt::DisplayRole, Qt::EditRole })
+ : QList<int>({ role }));
model->itemChanged(this, roles);
}
}
diff --git a/src/widgets/itemviews/qlistwidget.h b/src/widgets/itemviews/qlistwidget.h
index cda8b277dd..d57d769aec 100644
--- a/src/widgets/itemviews/qlistwidget.h
+++ b/src/widgets/itemviews/qlistwidget.h
@@ -40,11 +40,11 @@
#ifndef QLISTWIDGET_H
#define QLISTWIDGET_H
-#include <QtWidgets/qtwidgetsglobal.h>
#include <QtWidgets/qlistview.h>
-#include <QtCore/qvariant.h>
-#include <QtCore/qvector.h>
+#include <QtWidgets/qtwidgetsglobal.h>
+#include <QtCore/qlist.h>
#include <QtCore/qitemselectionmodel.h>
+#include <QtCore/qvariant.h>
QT_REQUIRE_CONFIG(listwidget);
diff --git a/src/widgets/itemviews/qlistwidget_p.h b/src/widgets/itemviews/qlistwidget_p.h
index c37bb48416..ec5afa7f8d 100644
--- a/src/widgets/itemviews/qlistwidget_p.h
+++ b/src/widgets/itemviews/qlistwidget_p.h
@@ -121,7 +121,7 @@ public:
const QList<QListWidgetItem*>::iterator &end,
Qt::SortOrder order, QListWidgetItem *item);
- void itemChanged(QListWidgetItem *item, const QVector<int> &roles = QVector<int>());
+ void itemChanged(QListWidgetItem *item, const QList<int> &roles = QList<int>());
// dnd
QStringList mimeTypes() const override;
@@ -167,7 +167,7 @@ class QListWidgetItemPrivate
public:
QListWidgetItemPrivate(QListWidgetItem *item) : q(item), theid(-1) {}
QListWidgetItem *q;
- QVector<QWidgetItemData> values;
+ QList<QWidgetItemData> values;
int theid;
};
diff --git a/src/widgets/itemviews/qtableview_p.h b/src/widgets/itemviews/qtableview_p.h
index e17773c4bd..2514ee7c33 100644
--- a/src/widgets/itemviews/qtableview_p.h
+++ b/src/widgets/itemviews/qtableview_p.h
@@ -190,8 +190,8 @@ public:
int columnSectionAnchor;
int columnResizeTimerID;
int rowResizeTimerID;
- QVector<int> columnsToUpdate;
- QVector<int> rowsToUpdate;
+ QList<int> columnsToUpdate;
+ QList<int> rowsToUpdate;
QHeaderView *horizontalHeader;
QHeaderView *verticalHeader;
#if QT_CONFIG(abstractbutton)
diff --git a/src/widgets/itemviews/qtablewidget.cpp b/src/widgets/itemviews/qtablewidget.cpp
index c051039cb0..f0c138e9ce 100644
--- a/src/widgets/itemviews/qtablewidget.cpp
+++ b/src/widgets/itemviews/qtablewidget.cpp
@@ -176,7 +176,7 @@ void QTableModel::setItem(int row, int column, QTableWidgetItem *item)
&& view->horizontalHeader()->sortIndicatorSection() == column) {
// sorted insertion
Qt::SortOrder order = view->horizontalHeader()->sortIndicatorOrder();
- QVector<QTableWidgetItem*> colItems = columnItems(column);
+ QList<QTableWidgetItem *> colItems = columnItems(column);
if (row < colItems.count())
colItems.remove(row);
int sortedRow;
@@ -184,7 +184,7 @@ void QTableModel::setItem(int row, int column, QTableWidgetItem *item)
// move to after all non-0 (sortable) items
sortedRow = colItems.count();
} else {
- QVector<QTableWidgetItem*>::iterator it;
+ QList<QTableWidgetItem *>::iterator it;
it = sortedInsertionIterator(colItems.begin(), colItems.end(), order, item);
sortedRow = qMax((int)(it - colItems.begin()), 0);
}
@@ -192,7 +192,7 @@ void QTableModel::setItem(int row, int column, QTableWidgetItem *item)
emit layoutAboutToBeChanged({}, QAbstractItemModel::VerticalSortHint);
// move the items @ row to sortedRow
int cc = columnCount();
- QVector<QTableWidgetItem*> rowItems(cc);
+ QList<QTableWidgetItem *> rowItems(cc);
for (int j = 0; j < cc; ++j)
rowItems[j] = tableItems.at(tableIndex(row, j));
tableItems.remove(tableIndex(row, 0), cc);
@@ -454,7 +454,7 @@ bool QTableModel::setItemData(const QModelIndex &index, const QMap<int, QVariant
QTableWidgetItem *itm = item(index);
if (itm) {
itm->view = nullptr; // prohibits item from calling itemChanged()
- QVector<int> rolesVec;
+ QList<int> rolesVec;
for (QMap<int, QVariant>::ConstIterator it = roles.constBegin(); it != roles.constEnd(); ++it) {
const int role = (it.key() == Qt::EditRole ? Qt::DisplayRole : it.key());
if (itm->data(role) != it.value()) {
@@ -492,7 +492,7 @@ bool QTableModel::clearItemData(const QModelIndex &index)
if (std::all_of(beginIter, endIter, [](const QWidgetItemData& data) -> bool { return !data.value.isValid(); }))
return true; //it's already cleared
itm->values.clear();
- emit dataChanged(index, index, QVector<int>{});
+ emit dataChanged(index, index, QList<int> {});
return true;
}
@@ -512,8 +512,8 @@ Qt::ItemFlags QTableModel::flags(const QModelIndex &index) const
void QTableModel::sort(int column, Qt::SortOrder order)
{
- QVector<QPair<QTableWidgetItem*, int> > sortable;
- QVector<int> unsortable;
+ QList<QPair<QTableWidgetItem *, int>> sortable;
+ QList<int> unsortable;
sortable.reserve(rowCount());
unsortable.reserve(rowCount());
@@ -528,7 +528,7 @@ void QTableModel::sort(int column, Qt::SortOrder order)
const auto compare = (order == Qt::AscendingOrder ? &itemLessThan : &itemGreaterThan);
std::stable_sort(sortable.begin(), sortable.end(), compare);
- QVector<QTableWidgetItem*> sorted_table(tableItems.count());
+ QList<QTableWidgetItem *> sorted_table(tableItems.count());
QModelIndexList from;
QModelIndexList to;
const int numRows = rowCount();
@@ -565,7 +565,7 @@ void QTableModel::ensureSorted(int column, Qt::SortOrder order,
int start, int end)
{
int count = end - start + 1;
- QVector < QPair<QTableWidgetItem*,int> > sorting;
+ QList<QPair<QTableWidgetItem *, int>> sorting;
sorting.reserve(count);
for (int row = start; row <= end; ++row) {
QTableWidgetItem *itm = item(row, column);
@@ -580,10 +580,10 @@ void QTableModel::ensureSorted(int column, Qt::SortOrder order,
const auto compare = (order == Qt::AscendingOrder ? &itemLessThan : &itemGreaterThan);
std::stable_sort(sorting.begin(), sorting.end(), compare);
QModelIndexList oldPersistentIndexes, newPersistentIndexes;
- QVector<QTableWidgetItem*> newTable = tableItems;
- QVector<QTableWidgetItem*> newVertical = verticalHeaderItems;
- QVector<QTableWidgetItem*> colItems = columnItems(column);
- QVector<QTableWidgetItem*>::iterator vit = colItems.begin();
+ QList<QTableWidgetItem *> newTable = tableItems;
+ QList<QTableWidgetItem *> newVertical = verticalHeaderItems;
+ QList<QTableWidgetItem *> colItems = columnItems(column);
+ QList<QTableWidgetItem *>::iterator vit = colItems.begin();
bool changed = false;
for (int i = 0; i < sorting.count(); ++i) {
int oldRow = sorting.at(i).second;
@@ -603,7 +603,7 @@ void QTableModel::ensureSorted(int column, Qt::SortOrder order,
}
// move the items @ oldRow to newRow
int cc = columnCount();
- QVector<QTableWidgetItem*> rowItems(cc);
+ QList<QTableWidgetItem *> rowItems(cc);
for (int j = 0; j < cc; ++j)
rowItems[j] = newTable.at(tableIndex(oldRow, j));
newTable.remove(tableIndex(oldRow, 0), cc);
@@ -640,9 +640,9 @@ void QTableModel::ensureSorted(int column, Qt::SortOrder order,
Returns the non-0 items in column \a column.
*/
-QVector<QTableWidgetItem*> QTableModel::columnItems(int column) const
+QList<QTableWidgetItem *> QTableModel::columnItems(int column) const
{
- QVector<QTableWidgetItem*> items;
+ QList<QTableWidgetItem *> items;
int rc = rowCount();
items.reserve(rc);
for (int row = 0; row < rc; ++row) {
@@ -689,10 +689,10 @@ void QTableModel::updateRowIndexes(QModelIndexList &indexes,
inserted in the interval (\a begin, \a end) according to
the given sort \a order.
*/
-QVector<QTableWidgetItem*>::iterator QTableModel::sortedInsertionIterator(
- const QVector<QTableWidgetItem*>::iterator &begin,
- const QVector<QTableWidgetItem*>::iterator &end,
- Qt::SortOrder order, QTableWidgetItem *item)
+QList<QTableWidgetItem *>::iterator
+QTableModel::sortedInsertionIterator(const QList<QTableWidgetItem *>::iterator &begin,
+ const QList<QTableWidgetItem *>::iterator &end,
+ Qt::SortOrder order, QTableWidgetItem *item)
{
if (order == Qt::AscendingOrder)
return std::lower_bound(begin, end, item, QTableModelLessThan());
@@ -790,7 +790,7 @@ void QTableModel::clearContents()
endResetModel();
}
-void QTableModel::itemChanged(QTableWidgetItem *item, const QVector<int> &roles)
+void QTableModel::itemChanged(QTableWidgetItem *item, const QList<int> &roles)
{
if (!item)
return;
@@ -1374,9 +1374,9 @@ void QTableWidgetItem::setData(int role, const QVariant &value)
values.append(QWidgetItemData(role, value));
if (QTableModel *model = tableModel())
{
- const QVector<int> roles((role == Qt::DisplayRole) ?
- QVector<int>({Qt::DisplayRole, Qt::EditRole}) :
- QVector<int>({role}));
+ const QList<int> roles((role == Qt::DisplayRole)
+ ? QList<int>({ Qt::DisplayRole, Qt::EditRole })
+ : QList<int>({ role }));
model->itemChanged(this, roles);
}
}
diff --git a/src/widgets/itemviews/qtablewidget.h b/src/widgets/itemviews/qtablewidget.h
index 65f9f60b37..6ef0601dd3 100644
--- a/src/widgets/itemviews/qtablewidget.h
+++ b/src/widgets/itemviews/qtablewidget.h
@@ -40,10 +40,10 @@
#ifndef QTABLEWIDGET_H
#define QTABLEWIDGET_H
-#include <QtWidgets/qtwidgetsglobal.h>
#include <QtWidgets/qtableview.h>
+#include <QtWidgets/qtwidgetsglobal.h>
+#include <QtCore/qlist.h>
#include <QtCore/qvariant.h>
-#include <QtCore/qvector.h>
QT_REQUIRE_CONFIG(tablewidget);
@@ -168,7 +168,7 @@ private:
private:
int rtti;
- QVector<QWidgetItemData> values;
+ QList<QWidgetItemData> values;
QTableWidget *view;
QTableWidgetItemPrivate *d;
Qt::ItemFlags itemFlags;
diff --git a/src/widgets/itemviews/qtablewidget_p.h b/src/widgets/itemviews/qtablewidget_p.h
index 670b58ef6a..0117247635 100644
--- a/src/widgets/itemviews/qtablewidget_p.h
+++ b/src/widgets/itemviews/qtablewidget_p.h
@@ -145,12 +145,12 @@ public:
const QPair<QTableWidgetItem*,int> &right);
void ensureSorted(int column, Qt::SortOrder order, int start, int end);
- QVector<QTableWidgetItem*> columnItems(int column) const;
+ QList<QTableWidgetItem *> columnItems(int column) const;
void updateRowIndexes(QModelIndexList &indexes, int movedFromRow, int movedToRow);
- static QVector<QTableWidgetItem*>::iterator sortedInsertionIterator(
- const QVector<QTableWidgetItem*>::iterator &begin,
- const QVector<QTableWidgetItem*>::iterator &end,
- Qt::SortOrder order, QTableWidgetItem *item);
+ static QList<QTableWidgetItem *>::iterator
+ sortedInsertionIterator(const QList<QTableWidgetItem *>::iterator &begin,
+ const QList<QTableWidgetItem *>::iterator &end, Qt::SortOrder order,
+ QTableWidgetItem *item);
bool isValid(const QModelIndex &index) const;
inline long tableIndex(int row, int column) const
@@ -158,7 +158,7 @@ public:
void clear();
void clearContents();
- void itemChanged(QTableWidgetItem *item, const QVector<int> &roles = QVector<int>());
+ void itemChanged(QTableWidgetItem *item, const QList<int> &roles = QList<int>());
QTableWidgetItem *createItem() const;
const QTableWidgetItem *itemPrototype() const;
@@ -175,9 +175,9 @@ public:
private:
const QTableWidgetItem *prototype;
- QVector<QTableWidgetItem*> tableItems;
- QVector<QTableWidgetItem*> verticalHeaderItems;
- QVector<QTableWidgetItem*> horizontalHeaderItems;
+ QList<QTableWidgetItem *> tableItems;
+ QList<QTableWidgetItem *> verticalHeaderItems;
+ QList<QTableWidgetItem *> horizontalHeaderItems;
// A cache must be mutable if get-functions should have const modifiers
mutable QModelIndexList cachedIndexes;
diff --git a/src/widgets/itemviews/qtreeview.cpp b/src/widgets/itemviews/qtreeview.cpp
index 41928ddf1e..c4a2a31dde 100644
--- a/src/widgets/itemviews/qtreeview.cpp
+++ b/src/widgets/itemviews/qtreeview.cpp
@@ -674,7 +674,8 @@ void QTreeView::setFirstColumnSpanned(int row, const QModelIndex &parent, bool s
/*!
\reimp
*/
-void QTreeView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles)
+void QTreeView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight,
+ const QList<int> &roles)
{
Q_D(QTreeView);
@@ -1444,8 +1445,11 @@ void QTreeViewPrivate::adjustViewOptionsForIndex(QStyleOptionViewItem *option, c
option->showDecorationSelected = (selectionBehavior & QTreeView::SelectRows)
|| option->showDecorationSelected;
- QVector<int> logicalIndices; // index = visual index of visible columns only. data = logical index.
- QVector<QStyleOptionViewItem::ViewItemPosition> viewItemPosList; // vector of left/middle/end for each logicalIndex, visible columns only.
+ QList<int>
+ logicalIndices; // index = visual index of visible columns only. data = logical index.
+ QList<QStyleOptionViewItem::ViewItemPosition>
+ viewItemPosList; // vector of left/middle/end for each logicalIndex, visible columns
+ // only.
const bool spanning = viewItems.at(row).spanning;
const int left = (spanning ? header->visualIndex(0) : 0);
const int right = (spanning ? header->visualIndex(0) : header->count() - 1 );
@@ -1466,7 +1470,7 @@ void QTreeViewPrivate::adjustViewOptionsForIndex(QStyleOptionViewItem *option, c
void QTreeView::drawTree(QPainter *painter, const QRegion &region) const
{
Q_D(const QTreeView);
- const QVector<QTreeViewItem> viewItems = d->viewItems;
+ const QList<QTreeViewItem> viewItems = d->viewItems;
QStyleOptionViewItem option = d->viewOptionsV1();
const QStyle::State state = option.state;
@@ -1489,7 +1493,7 @@ void QTreeView::drawTree(QPainter *painter, const QRegion &region) const
QPoint hoverPos = d->viewport->mapFromGlobal(QCursor::pos());
d->hoverBranch = d->itemDecorationAt(hoverPos);
- QVector<int> drawn;
+ QList<int> drawn;
bool multipleRects = (region.rectCount() > 1);
for (const QRect &a : region) {
const QRect area = (multipleRects
@@ -1542,7 +1546,9 @@ static inline bool ancestorOf(QObject *widget, QObject *other)
return false;
}
-void QTreeViewPrivate::calcLogicalIndices(QVector<int> *logicalIndices, QVector<QStyleOptionViewItem::ViewItemPosition> *itemPositions, int left, int right) const
+void QTreeViewPrivate::calcLogicalIndices(
+ QList<int> *logicalIndices, QList<QStyleOptionViewItem::ViewItemPosition> *itemPositions,
+ int left, int right) const
{
const int columnCount = header->count();
/* 'left' and 'right' are the left-most and right-most visible visual indices.
@@ -1682,8 +1688,9 @@ void QTreeView::drawRow(QPainter *painter, const QStyleOptionViewItem &option,
&& index.parent() == hover.parent()
&& index.row() == hover.row();
- QVector<int> logicalIndices;
- QVector<QStyleOptionViewItem::ViewItemPosition> viewItemPosList; // vector of left/middle/end for each logicalIndex
+ QList<int> logicalIndices;
+ QList<QStyleOptionViewItem::ViewItemPosition>
+ viewItemPosList; // vector of left/middle/end for each logicalIndex
d->calcLogicalIndices(&logicalIndices, &viewItemPosList, left, right);
for (int currentLogicalSection = 0; currentLogicalSection < logicalIndices.count(); ++currentLogicalSection) {
@@ -2862,7 +2869,7 @@ int QTreeView::sizeHintForColumn(int column) const
ensurePolished();
int w = 0;
QStyleOptionViewItem option = d->viewOptionsV1();
- const QVector<QTreeViewItem> viewItems = d->viewItems;
+ const QList<QTreeViewItem> viewItems = d->viewItems;
const int maximumProcessRows = d->header->resizeContentsPrecision(); // To avoid this to take forever.
@@ -3799,8 +3806,8 @@ QRect QTreeViewPrivate::itemDecorationRect(const QModelIndex &index) const
return q->style()->subElementRect(QStyle::SE_TreeViewDisclosureItem, &opt, q);
}
-QVector<QPair<int, int> > QTreeViewPrivate::columnRanges(const QModelIndex &topIndex,
- const QModelIndex &bottomIndex) const
+QList<QPair<int, int>> QTreeViewPrivate::columnRanges(const QModelIndex &topIndex,
+ const QModelIndex &bottomIndex) const
{
const int topVisual = header->visualIndex(topIndex.column()),
bottomVisual = header->visualIndex(bottomIndex.column());
@@ -3820,7 +3827,7 @@ QVector<QPair<int, int> > QTreeViewPrivate::columnRanges(const QModelIndex &topI
//let's sort the list
std::sort(logicalIndexes.begin(), logicalIndexes.end());
- QVector<QPair<int, int> > ret;
+ QList<QPair<int, int>> ret;
QPair<int, int> current;
current.first = -2; // -1 is not enough because -1+1 = 0
current.second = -2;
@@ -3854,8 +3861,8 @@ void QTreeViewPrivate::select(const QModelIndex &topIndex, const QModelIndex &bo
const int top = viewIndex(topIndex),
bottom = viewIndex(bottomIndex);
- const QVector<QPair<int, int> > colRanges = columnRanges(topIndex, bottomIndex);
- QVector<QPair<int, int> >::const_iterator it;
+ const QList<QPair<int, int>> colRanges = columnRanges(topIndex, bottomIndex);
+ QList<QPair<int, int>>::const_iterator it;
for (it = colRanges.begin(); it != colRanges.end(); ++it) {
const int left = (*it).first,
right = (*it).second;
diff --git a/src/widgets/itemviews/qtreeview.h b/src/widgets/itemviews/qtreeview.h
index bc29accedd..be09aae59b 100644
--- a/src/widgets/itemviews/qtreeview.h
+++ b/src/widgets/itemviews/qtreeview.h
@@ -143,8 +143,8 @@ public:
void doItemsLayout() override;
void reset() override;
-
- void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles = QVector<int>()) override;
+ void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight,
+ const QList<int> &roles = QList<int>()) override;
void selectAll() override;
Q_SIGNALS:
diff --git a/src/widgets/itemviews/qtreeview_p.h b/src/widgets/itemviews/qtreeview_p.h
index 1206850b71..e9c64d4054 100644
--- a/src/widgets/itemviews/qtreeview_p.h
+++ b/src/widgets/itemviews/qtreeview_p.h
@@ -53,11 +53,11 @@
#include <QtWidgets/private/qtwidgetsglobal_p.h>
#include "private/qabstractitemview_p.h"
+#include <QtCore/qabstractitemmodel.h>
+#include <QtCore/qlist.h>
#if QT_CONFIG(animation)
#include <QtCore/qvariantanimation.h>
#endif
-#include <QtCore/qabstractitemmodel.h>
-#include <QtCore/qvector.h>
QT_REQUIRE_CONFIG(treeview);
@@ -170,8 +170,8 @@ public:
int itemDecorationAt(const QPoint &pos) const;
QRect itemDecorationRect(const QModelIndex &index) const;
-
- QVector<QPair<int, int> > columnRanges(const QModelIndex &topIndex, const QModelIndex &bottomIndex) const;
+ QList<QPair<int, int>> columnRanges(const QModelIndex &topIndex,
+ const QModelIndex &bottomIndex) const;
void select(const QModelIndex &start, const QModelIndex &stop, QItemSelectionModel::SelectionFlags command);
QPair<int,int> startAndEndColumns(const QRect &rect) const;
@@ -182,12 +182,14 @@ public:
// logicalIndices: vector of currently visibly logical indices
// itemPositions: vector of view item positions (beginning/middle/end/onlyone)
- void calcLogicalIndices(QVector<int> *logicalIndices, QVector<QStyleOptionViewItem::ViewItemPosition> *itemPositions, int left, int right) const;
+ void calcLogicalIndices(QList<int> *logicalIndices,
+ QList<QStyleOptionViewItem::ViewItemPosition> *itemPositions, int left,
+ int right) const;
int widthHintForIndex(const QModelIndex &index, int hint, const QStyleOptionViewItem &option, int i) const;
QHeaderView *header;
int indent;
- mutable QVector<QTreeViewItem> viewItems;
+ mutable QList<QTreeViewItem> viewItems;
mutable int lastViewedItem;
int defaultItemHeight; // this is just a number; contentsHeight() / numItems
bool uniformRowHeights; // used when all rows have the same height
diff --git a/src/widgets/itemviews/qtreewidget.cpp b/src/widgets/itemviews/qtreewidget.cpp
index 5bcd6c8b3a..a186a243fd 100644
--- a/src/widgets/itemviews/qtreewidget.cpp
+++ b/src/widgets/itemviews/qtreewidget.cpp
@@ -407,7 +407,7 @@ bool QTreeModel::clearItemData(const QModelIndex &index)
}
itm->d->display[index.column()] = QVariant();
itm->values[index.column()].clear();
- emit dataChanged(index, index, QVector<int>{});
+ emit dataChanged(index, index, QList<int> {});
return true;
}
@@ -491,7 +491,7 @@ bool QTreeModel::insertColumns(int column, int count, const QModelIndex &parent)
QTreeWidgetItem *child = children.at(row);
if (child->children.count())
itemstack.push(child);
- child->values.insert(column, count, QVector<QWidgetItemData>());
+ child->values.insert(column, count, QList<QWidgetItemData>());
}
}
@@ -622,7 +622,7 @@ void QTreeModel::ensureSorted(int column, Qt::SortOrder order,
QList<QTreeWidgetItem*> lst = itm->children;
int count = end - start + 1;
- QVector < QPair<QTreeWidgetItem*,int> > sorting(count);
+ QList<QPair<QTreeWidgetItem *, int>> sorting(count);
for (int i = 0; i < count; ++i) {
sorting[i].first = lst.at(start + i);
sorting[i].second = start + i;
@@ -798,7 +798,7 @@ bool QTreeModel::isChanging() const
if column is -1 then all columns have changed
*/
-void QTreeModel::emitDataChanged(QTreeWidgetItem *item, int column, const QVector<int> &roles)
+void QTreeModel::emitDataChanged(QTreeWidgetItem *item, int column, const QList<int> &roles)
{
if (signalsBlocked())
return;
@@ -864,7 +864,7 @@ void QTreeModel::sortItems(QList<QTreeWidgetItem*> *items, int column, Qt::SortO
return;
// store the original order of indexes
- QVector< QPair<QTreeWidgetItem*,int> > sorting(items->count());
+ QList<QPair<QTreeWidgetItem *, int>> sorting(items->count());
for (int i = 0; i < sorting.count(); ++i) {
sorting[i].first = items->at(i);
sorting[i].second = i;
@@ -1836,7 +1836,7 @@ void QTreeWidgetItem::setData(int column, int role, const QVariant &value)
default:
if (column < values.count()) {
bool found = false;
- const QVector<QWidgetItemData> column_values = values.at(column);
+ const QList<QWidgetItemData> column_values = values.at(column);
for (int i = 0; i < column_values.count(); ++i) {
if (column_values.at(i).role == role) {
if (column_values.at(i).value == value)
@@ -1858,9 +1858,9 @@ void QTreeWidgetItem::setData(int column, int role, const QVariant &value)
}
if (model) {
- const QVector<int> roles((role == Qt::DisplayRole || role == Qt::EditRole) ?
- QVector<int>({Qt::DisplayRole, Qt::EditRole}) :
- QVector<int>({role}));
+ const QList<int> roles((role == Qt::DisplayRole || role == Qt::EditRole)
+ ? QList<int>({ Qt::DisplayRole, Qt::EditRole })
+ : QList<int>({ role }));
model->emitDataChanged(this, column, roles);
if (role == Qt::CheckStateRole) {
QTreeWidgetItem *p;
@@ -1888,7 +1888,7 @@ QVariant QTreeWidgetItem::data(int column, int role) const
Q_FALLTHROUGH();
default:
if (column >= 0 && column < values.size()) {
- const QVector<QWidgetItemData> &column_values = values.at(column);
+ const QList<QWidgetItemData> &column_values = values.at(column);
for (const auto &column_value : column_values) {
if (column_value.role == role)
return column_value.value;
diff --git a/src/widgets/itemviews/qtreewidget.h b/src/widgets/itemviews/qtreewidget.h
index 259bdec52b..72e4661028 100644
--- a/src/widgets/itemviews/qtreewidget.h
+++ b/src/widgets/itemviews/qtreewidget.h
@@ -40,11 +40,11 @@
#ifndef QTREEWIDGET_H
#define QTREEWIDGET_H
-#include <QtWidgets/qtwidgetsglobal.h>
#include <QtWidgets/qtreeview.h>
#include <QtWidgets/qtreewidgetitemiterator.h>
+#include <QtWidgets/qtwidgetsglobal.h>
+#include <QtCore/qlist.h>
#include <QtCore/qvariant.h>
-#include <QtCore/qvector.h>
QT_REQUIRE_CONFIG(treewidget);
@@ -201,7 +201,7 @@ private:
int rtti;
// One item has a vector of column entries. Each column has a vector of (role, value) pairs.
- QVector< QVector<QWidgetItemData> > values;
+ QList<QList<QWidgetItemData>> values;
QTreeWidget *view;
QTreeWidgetItemPrivate *d;
QTreeWidgetItem *par;
diff --git a/src/widgets/itemviews/qtreewidget_p.h b/src/widgets/itemviews/qtreewidget_p.h
index f4c754789f..be9ee1cfbd 100644
--- a/src/widgets/itemviews/qtreewidget_p.h
+++ b/src/widgets/itemviews/qtreewidget_p.h
@@ -139,7 +139,7 @@ public:
protected:
QTreeModel(QTreeModelPrivate &, QTreeWidget *parent = nullptr);
- void emitDataChanged(QTreeWidgetItem *item, int column, const QVector<int> &roles);
+ void emitDataChanged(QTreeWidgetItem *item, int column, const QList<int> &roles);
void beginInsertItems(QTreeWidgetItem *parent, int row, int count);
void endInsertItems();
void beginRemoveItems(QTreeWidgetItem *parent, int row, int count);