QGIS API Documentation
3.20.0-Odense (decaadbb31)
|
A QSortFilterProxyModel subclass for filtering and sorting browser model items. More...
#include <qgsbrowserproxymodel.h>
Public Types | |
enum | FilterSyntax { Normal , Wildcards , RegularExpression } |
Filter syntax options. More... | |
Public Member Functions | |
QgsBrowserProxyModel (QObject *parent=nullptr) | |
Constructor for QgsBrowserProxyModel, with the specified parent object. More... | |
QgsBrowserModel * | browserModel () |
Returns the underlying browser model. More... | |
Qt::CaseSensitivity | caseSensitivity () const |
Returns whether item filtering is case sensitive. More... | |
QgsDataItem * | dataItem (const QModelIndex &index) const |
Returns the data item at the specified proxy index, or nullptr if no item exists at the index. More... | |
bool | filterByLayerType () const |
Returns true if the model is filtered by map layer type. More... | |
QString | filterString () const |
Returns the filter string used when filtering items in the model. More... | |
FilterSyntax | filterSyntax () const |
Returns the filter syntax. More... | |
bool | hasChildren (const QModelIndex &parent=QModelIndex()) const override |
QgsMapLayerType | layerType () const |
Returns the layer type to filter the model by. More... | |
void | setBrowserModel (QgsBrowserModel *model) |
Sets the underlying browser model. More... | |
void | setFilterByLayerType (bool enabled) |
Sets whether the model is filtered by map layer type. More... | |
void | setFilterCaseSensitivity (Qt::CaseSensitivity sensitivity) |
Sets whether item filtering should be case sensitive. More... | |
void | setFilterString (const QString &filter) |
Sets the filter string to use when filtering items in the model. More... | |
void | setFilterSyntax (FilterSyntax syntax) |
Sets the filter syntax. More... | |
void | setHiddenDataItemProviderKeyFilter (const QStringList &hiddenItemsFilter) |
Sets a filter to hide data items based on QgsDataItem::providerKey() associated with the item. More... | |
void | setLayerType (QgsMapLayerType type) |
Sets the layer type to filter the model by. More... | |
void | setShowLayers (bool showLayers) |
Sets show layers to showLayers. More... | |
void | setShownDataItemProviderKeyFilter (const QStringList &shownItemsFilter) |
Sets a filter to show data items based on QgsDataItem::providerKey() associated with the item. More... | |
bool | showLayers () const |
Returns true if layers must be shown, this flag is TRUE by default. More... | |
Protected Member Functions | |
bool | filterAcceptsRow (int sourceRow, const QModelIndex &sourceParent) const override |
Protected Attributes | |
QgsBrowserModel * | mModel = nullptr |
Reference to associated browser model. More... | |
A QSortFilterProxyModel subclass for filtering and sorting browser model items.
Definition at line 32 of file qgsbrowserproxymodel.h.
Filter syntax options.
Enumerator | |
---|---|
Normal | Standard string filtering. |
Wildcards | Wildcard filtering. |
RegularExpression | Regular expression filtering. |
Definition at line 38 of file qgsbrowserproxymodel.h.
|
explicit |
Constructor for QgsBrowserProxyModel, with the specified parent object.
Definition at line 21 of file qgsbrowserproxymodel.cpp.
|
inline |
Returns the underlying browser model.
Definition at line 62 of file qgsbrowserproxymodel.h.
Qt::CaseSensitivity QgsBrowserProxyModel::caseSensitivity | ( | ) | const |
Returns whether item filtering is case sensitive.
Definition at line 74 of file qgsbrowserproxymodel.cpp.
QgsDataItem * QgsBrowserProxyModel::dataItem | ( | const QModelIndex & | index | ) | const |
Returns the data item at the specified proxy index, or nullptr
if no item exists at the index.
Definition at line 36 of file qgsbrowserproxymodel.cpp.
|
overrideprotected |
Definition at line 149 of file qgsbrowserproxymodel.cpp.
|
inline |
Returns true
if the model is filtered by map layer type.
Definition at line 118 of file qgsbrowserproxymodel.h.
QString QgsBrowserProxyModel::filterString | ( | ) | const |
Returns the filter string used when filtering items in the model.
Definition at line 63 of file qgsbrowserproxymodel.cpp.
QgsBrowserProxyModel::FilterSyntax QgsBrowserProxyModel::filterSyntax | ( | ) | const |
Returns the filter syntax.
Definition at line 50 of file qgsbrowserproxymodel.cpp.
|
override |
Definition at line 297 of file qgsbrowserproxymodel.cpp.
QgsMapLayerType QgsBrowserProxyModel::layerType | ( | ) | const |
Returns the layer type to filter the model by.
This is only used if filterByLayerType() is true
.
Definition at line 180 of file qgsbrowserproxymodel.cpp.
void QgsBrowserProxyModel::setBrowserModel | ( | QgsBrowserModel * | model | ) |
Sets the underlying browser model.
Definition at line 30 of file qgsbrowserproxymodel.cpp.
void QgsBrowserProxyModel::setFilterByLayerType | ( | bool | enabled | ) |
Sets whether the model is filtered by map layer type.
Definition at line 191 of file qgsbrowserproxymodel.cpp.
void QgsBrowserProxyModel::setFilterCaseSensitivity | ( | Qt::CaseSensitivity | sensitivity | ) |
Sets whether item filtering should be case sensitive.
Definition at line 68 of file qgsbrowserproxymodel.cpp.
void QgsBrowserProxyModel::setFilterString | ( | const QString & | filter | ) |
Sets the filter string to use when filtering items in the model.
Definition at line 55 of file qgsbrowserproxymodel.cpp.
void QgsBrowserProxyModel::setFilterSyntax | ( | FilterSyntax | syntax | ) |
Sets the filter syntax.
Definition at line 42 of file qgsbrowserproxymodel.cpp.
void QgsBrowserProxyModel::setHiddenDataItemProviderKeyFilter | ( | const QStringList & | hiddenItemsFilter | ) |
Sets a filter to hide data items based on QgsDataItem::providerKey() associated with the item.
By default browser model shows all items from all available data item providers and few special items (e.g. Favorites). To customize the behavior, set the filter to not load certain data items. The items that are not based on data item providers have prefix "special:", for example "special:Favorites", "special:Home", "PostGIS", "MSSQL"
All items created by the providers listed in filter are hidden from the layer tree. This filter is always evaluated.
hiddenItemsFilter | a list of data provider prefixes that will be hidden. |
Definition at line 284 of file qgsbrowserproxymodel.cpp.
void QgsBrowserProxyModel::setLayerType | ( | QgsMapLayerType | type | ) |
Sets the layer type to filter the model by.
This is only used if filterByLayerType() is true
.
Definition at line 185 of file qgsbrowserproxymodel.cpp.
void QgsBrowserProxyModel::setShowLayers | ( | bool | showLayers | ) |
Sets show layers to showLayers.
Definition at line 175 of file qgsbrowserproxymodel.cpp.
void QgsBrowserProxyModel::setShownDataItemProviderKeyFilter | ( | const QStringList & | shownItemsFilter | ) |
Sets a filter to show data items based on QgsDataItem::providerKey() associated with the item.
By default browser model shows all items from all available data item providers and few special items (e.g. Favorites). To customize the behavior, set the filter to load only certain data items. The items that are not based on data item providers have prefix "special:", for example "special:Favorites", "special:Home", "PostGIS", "MSSQL"
Only the items created by the providers listed in filter are shown in the layer tree. This filter is always evaluated.
shownItemsFilter | a list of data provider prefixes that will be hidden. |
Definition at line 290 of file qgsbrowserproxymodel.cpp.
bool QgsBrowserProxyModel::showLayers | ( | ) | const |
Returns true
if layers must be shown, this flag is TRUE by default.
Definition at line 170 of file qgsbrowserproxymodel.cpp.
|
protected |
Reference to associated browser model.
Definition at line 206 of file qgsbrowserproxymodel.h.