reimplement lessThan to return
{
// assuing apples (and only apples) are on the 3rd level
return idx.parent().parent().isValid();
}
{
if (on_apple_level(left))
return left.row() < right.row();
// other comparisons
}
static bool on_apple_level(const QModelIndex &idx)
{
// assuing apples (and only apples) are on the 3rd level
return idx.parent().parent().isValid();
}
bool yourModel::lessThan(const QModelIndex &left, const QModelIndex &right) const
{
if (on_apple_level(left))
return left.row() < right.row();
// other comparisons
}
To copy to clipboard, switch view to plain text mode
HTH
Bookmarks