| 1601 | |
| 1602 | protected: |
| 1603 | virtual bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const override |
| 1604 | { |
| 1605 | // manually implement recursive filtering since older Qt versions don't support it |
| 1606 | if(filterAcceptsSingleRow(source_row, source_parent)) |
| 1607 | return true; |
| 1608 | |
| 1609 | QModelIndex idx = sourceModel()->index(source_row, 0, source_parent); |
| 1610 | for(int i = 0, row_count = sourceModel()->rowCount(idx); i < row_count; i++) |
| 1611 | if(filterAcceptsRow(i, idx)) |
| 1612 | return true; |
| 1613 | |
| 1614 | return false; |
| 1615 | } |
| 1616 | |
| 1617 | virtual bool filterAcceptsSingleRow(int source_row, const QModelIndex &source_parent) const |
| 1618 | { |