diff options
author | Luca Beldi <v.ronin@yahoo.it> | 2018-08-17 09:04:17 +0100 |
---|---|---|
committer | Luca Beldi <v.ronin@yahoo.it> | 2018-08-17 08:10:11 +0000 |
commit | 70ba75519d66243b6fef6d452e9e158f7d3ea438 (patch) | |
tree | d7642203bd3e14c4ad74e9cb3bc38738b293c83c /src/corelib/itemmodels | |
parent | 29778037f8a7b2c86bc4044409b37d5a51a15432 (diff) |
QSortFilterProxyModel inserting at bottom of source model
Before this change, if you try to insert a row at the bottom of QSortFilterProxyModel
the row will be inserted in the source model at position proxy->rowCount rather
than at the bottom. This causes insert at apparently random positions in the source.
[ChangeLog][QtCore][QSortFilterProxyModel]
QSortFilterProxyModel::insertRows(row,count,parent) with
row == QSortFilterProxyModel::rowCount will insert at the bottom of the source model
rather than at the row QSortFilterProxyModel::rowCount of the source model
Task-number: QTBUG-58499
Task-number: QTBUG-69158
Change-Id: Ie78416c8fbc429303b8c9c98375630e3e4d85f6d
Reviewed-by: David Faure <david.faure@kdab.com>
Diffstat (limited to 'src/corelib/itemmodels')
-rw-r--r-- | src/corelib/itemmodels/qsortfilterproxymodel.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/corelib/itemmodels/qsortfilterproxymodel.cpp b/src/corelib/itemmodels/qsortfilterproxymodel.cpp index 08279cb244..6728f0106b 100644 --- a/src/corelib/itemmodels/qsortfilterproxymodel.cpp +++ b/src/corelib/itemmodels/qsortfilterproxymodel.cpp @@ -2191,7 +2191,7 @@ bool QSortFilterProxyModel::insertRows(int row, int count, const QModelIndex &pa if (row > m->source_rows.count()) return false; int source_row = (row >= m->source_rows.count() - ? m->source_rows.count() + ? m->proxy_rows.count() : m->source_rows.at(row)); return d->model->insertRows(source_row, count, source_parent); } @@ -2211,7 +2211,7 @@ bool QSortFilterProxyModel::insertColumns(int column, int count, const QModelInd if (column > m->source_columns.count()) return false; int source_column = (column >= m->source_columns.count() - ? m->source_columns.count() + ? m->proxy_columns.count() : m->source_columns.at(column)); return d->model->insertColumns(source_column, count, source_parent); } |