KExtraColumnsProxyModel: implement buddy() to fix runtime warning.

wilder
David Faure 10 years ago
parent b26ed2cdfe
commit 22cb8c0d21
  1. 3
      autotests/kextracolumnsproxymodeltest.cpp
  2. 9
      src/kextracolumnsproxymodel.cpp
  3. 2
      src/kextracolumnsproxymodel.h

@ -175,6 +175,9 @@ private Q_SLOTS:
QCOMPARE(pm.index(0, 0).sibling(0, 4).column(), 4);
QCOMPARE(pm.index(0, 4).sibling(0, 1).column(), 1);
QCOMPARE(pm.buddy(pm.index(0, 0)), pm.index(0, 0));
QCOMPARE(pm.buddy(pm.index(0, 4)), pm.index(0, 4));
QVERIFY(!pm.canFetchMore(QModelIndex()));
}

@ -121,6 +121,15 @@ QModelIndex KExtraColumnsProxyModel::mapToSource(const QModelIndex &proxyIndex)
return QIdentityProxyModel::mapToSource(proxyIndex);
}
QModelIndex KExtraColumnsProxyModel::buddy(const QModelIndex &proxyIndex) const
{
const int column = proxyIndex.column();
if (column >= sourceModel()->columnCount()) {
return proxyIndex;
}
return QIdentityProxyModel::buddy(proxyIndex);
}
QModelIndex KExtraColumnsProxyModel::sibling(int row, int column, const QModelIndex &idx) const
{
if (row == idx.row() && column == idx.column()) {

@ -133,6 +133,8 @@ public:
/// @reimp
QModelIndex sibling(int row, int column, const QModelIndex &idx) const Q_DECL_OVERRIDE;
/// @reimp
QModelIndex buddy(const QModelIndex &index) const Q_DECL_OVERRIDE;
/// @reimp
Qt::ItemFlags flags(const QModelIndex &index) const Q_DECL_OVERRIDE;
/// @reimp
QVariant headerData(int section, Qt::Orientation orientation,

Loading…
Cancel
Save