79bool QQmlValueFilter::filterAcceptsRowInternal(
int row,
const QModelIndex& sourceParent,
const QQmlSortFilterProxyModel *proxyModel)
const
81 Q_D(
const QQmlValueFilter);
82 if (d->m_roleName.isEmpty())
84 int role = itemRole(proxyModel);
85 const bool isValidVal = (!d->m_value.isValid() || !d->m_value.isNull());
88 const QModelIndex &index = proxyModel->sourceModel()->index(row, column(), sourceParent);
89 const QVariant &value = proxyModel->sourceModel()->data(index, role);
90 return (value.isValid() && (!isValidVal || d->m_value == value));
92 const int columnCount = proxyModel->sourceModel()->columnCount(sourceParent);
93 for (
int column = 0; column < columnCount; column++) {
94 const QModelIndex &index = proxyModel->sourceModel()->index(row, column, sourceParent);
95 const QVariant &value = proxyModel->sourceModel()->data(index, role);
96 if (value.isValid() && (!isValidVal || d->m_value == value))