You're confusing a function of the view (hiding rows) with a function of the model (filtering).
A filtered out row isn't hidden in the view, it will not exist in your proxy model.
From the QSortFilterProxyModel docs:
The model transforms the structure of a source model by mapping the model indexes it supplies to new indexes, corresponding to different locations, for views to use.
You can check whether a row is filtered or not by using QSortFilterProxyModel::mapFromSource().
if(!mapFromSource(sourceModel()->index("source model row",0)).isValid()) //source model row is filtered;
if(!mapFromSource(sourceModel()->index("source model row",0)).isValid()) //source model row is filtered;
To copy to clipboard, switch view to plain text mode
Bookmarks