QGIS API Documentation  3.22.4-Białowieża (ce8e65e95e)
qgsdbfilterproxymodel.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  qgsdbfilterproxymodel.cpp - description
3  -------------------------
4  begin : Dec 2007
5  copyright : (C) 2007 by Marco Hugentobler
6  email : marco dot hugentobler at karto dot baug dot ethz dot ch
7  ***************************************************************************/
8 
9 /***************************************************************************
10  * *
11  * This program is free software; you can redistribute it and/or modify *
12  * it under the terms of the GNU General Public License as published by *
13  * the Free Software Foundation; either version 2 of the License, or *
14  * (at your option) any later version. *
15  * *
16  ***************************************************************************/
17 
18 #include "qgsdbfilterproxymodel.h"
19 
20 QgsDatabaseFilterProxyModel::QgsDatabaseFilterProxyModel( QObject *parent ): QSortFilterProxyModel( parent )
21 {
22 
23 }
24 
25 bool QgsDatabaseFilterProxyModel::filterAcceptsRow( int row, const QModelIndex &source_parent ) const
26 {
27  //if parent is valid, we have a toplevel item that should be always shown
28  if ( !source_parent.isValid() )
29  {
30  return true;
31  }
32 
33  //else we have a row that describes a table and that
34  //should be tested using the given wildcard/regexp
35  return QSortFilterProxyModel::filterAcceptsRow( row, source_parent );
36 }
37 
39 {
40  QSortFilterProxyModel::setFilterWildcard( pattern );
41  emit layoutChanged();
42 }
43 
44 void QgsDatabaseFilterProxyModel::_setFilterRegExp( const QString &pattern )
45 {
46 #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
47  QSortFilterProxyModel::setFilterRegExp( pattern );
48 #else
49  QSortFilterProxyModel::setFilterRegularExpression( pattern );
50 #endif
51  emit layoutChanged();
52 }
QgsDatabaseFilterProxyModel(QObject *parent=nullptr)
Constructor for QgsDatabaseFilterProxyModel.
bool filterAcceptsRow(int row, const QModelIndex &source_parent) const override
void _setFilterRegExp(const QString &pattern)
Calls QSortFilterProxyModel::setFilterRegExp and triggers update.
void _setFilterWildcard(const QString &pattern)
Calls QSortFilterProxyModel::setFilterWildcard and triggers update.