Class: QgsBrowserProxyModel

class qgis.core.QgsBrowserProxyModel

Bases: PyQt5.QtCore.QSortFilterProxyModel

A QSortFilterProxyModel subclass for filtering and sorting browser model items.

New in version 3.4.

QgsBrowserProxyModel(parent: QObject = None) Constructor for QgsBrowserProxyModel, with the specified parent object.

Methods

beginInsertColumns

beginInsertRows

beginMoveColumns

beginMoveRows

beginRemoveColumns

beginRemoveRows

beginResetModel

browserModel

Returns the underlying browser model.

caseSensitivity

Returns whether item filtering is case sensitive.

changePersistentIndex

changePersistentIndexList

childEvent

connectNotify

createIndex

customEvent

dataItem

Returns the data item at the specified proxy index, or None if no item exists at the index.

decodeData

disconnectNotify

encodeData

endInsertColumns

endInsertRows

endMoveColumns

endMoveRows

endRemoveColumns

endRemoveRows

endResetModel

filterAcceptsColumn

filterAcceptsRow

param sourceRow:

filterByLayerType

Returns True if the model is filtered by map layer type.

filterString

Returns the filter string used when filtering items in the model.

filterSyntax

Returns the filter syntax.

hasChildren

param parent:

invalidateFilter

isSignalConnected

layerType

Returns the layer type to filter the model by.

lessThan

persistentIndexList

receivers

resetInternalData

sender

senderSignalIndex

setBrowserModel

Sets the underlying browser model.

setFilterByLayerType

Sets whether the model is filtered by map layer type.

setFilterCaseSensitivity

Sets whether item filtering should be case sensitive.

setFilterString

Sets the filter string to use when filtering items in the model.

setFilterSyntax

Sets the filter syntax.

setHiddenDataItemProviderKeyFilter

Sets a filter to hide data items based on QgsDataItem.providerKey() associated with the item.

setLayerType

Sets the layer type to filter the model by.

setShowLayers

Sets show layers to showLayers

setShownDataItemProviderKeyFilter

Sets a filter to show data items based on QgsDataItem.providerKey() associated with the item.

showLayers

Returns True if layers must be shown, this flag is True by default.

timerEvent

Attributes

Normal

RegularExpression

Wildcards

class FilterSyntax

Bases: int

Normal = 0
RegularExpression = 2
Wildcards = 1
beginInsertColumns(self, QModelIndex, int, int)
beginInsertRows(self, QModelIndex, int, int)
beginMoveColumns(self, QModelIndex, int, int, QModelIndex, int) bool
beginMoveRows(self, QModelIndex, int, int, QModelIndex, int) bool
beginRemoveColumns(self, QModelIndex, int, int)
beginRemoveRows(self, QModelIndex, int, int)
beginResetModel(self)
browserModel(self) QgsBrowserModel

Returns the underlying browser model.

Return type:

QgsBrowserModel

caseSensitivity(self) Qt.CaseSensitivity

Returns whether item filtering is case sensitive.

Return type:

Qt.CaseSensitivity

changePersistentIndex(self, QModelIndex, QModelIndex)
changePersistentIndexList(self, Iterable[QModelIndex], Iterable[QModelIndex])
childEvent(self, QChildEvent)
connectNotify(self, QMetaMethod)
createIndex(self, int, int, object: object = 0) QModelIndex
customEvent(self, QEvent)
dataItem(self, index: QModelIndex) QgsDataItem

Returns the data item at the specified proxy index, or None if no item exists at the index.

Parameters:

index (QModelIndex) –

Return type:

QgsDataItem

decodeData(self, int, int, QModelIndex, QDataStream) bool
disconnectNotify(self, QMetaMethod)
encodeData(self, Iterable[QModelIndex], QDataStream)
endInsertColumns(self)
endInsertRows(self)
endMoveColumns(self)
endMoveRows(self)
endRemoveColumns(self)
endRemoveRows(self)
endResetModel(self)
filterAcceptsColumn(self, int, QModelIndex) bool
filterAcceptsRow(self, sourceRow: int, sourceParent: QModelIndex) bool
Parameters:
  • sourceRow (int) –

  • sourceParent (QModelIndex) –

Return type:

bool

filterByLayerType(self) bool

Returns True if the model is filtered by map layer type.

See also

layerType()

Return type:

bool

filterString(self) str

Returns the filter string used when filtering items in the model.

Return type:

str

filterSyntax(self) QgsBrowserProxyModel.FilterSyntax

Returns the filter syntax.

Return type:

QgsBrowserProxyModel.FilterSyntax

hasChildren(self, parent: QModelIndex = QModelIndex()) bool
Parameters:

parent (QModelIndex = QModelIndex()) –

Return type:

bool

invalidateFilter(self)
isSignalConnected(self, QMetaMethod) bool
layerType(self) QgsMapLayerType

Returns the layer type to filter the model by. This is only used if filterByLayerType() is True.

See also

setLayerType()

Return type:

QgsMapLayerType

lessThan(self, QModelIndex, QModelIndex) bool
persistentIndexList(self) List[QModelIndex]
receivers(self, PYQT_SIGNAL) int
resetInternalData(self)
sender(self) QObject
senderSignalIndex(self) int
setBrowserModel(self, model: QgsBrowserModel)

Sets the underlying browser model.

See also

browserModel()

Parameters:

model (QgsBrowserModel) –

setFilterByLayerType(self, enabled: bool)

Sets whether the model is filtered by map layer type.

See also

setLayerType()

Parameters:

enabled (bool) –

setFilterCaseSensitivity(self, sensitivity: Qt.CaseSensitivity)

Sets whether item filtering should be case sensitive.

Parameters:

sensitivity (Qt.CaseSensitivity) –

setFilterString(self, filter: str)

Sets the filter string to use when filtering items in the model.

See also

filterString()

Parameters:

filter (str) –

setFilterSyntax(self, syntax: QgsBrowserProxyModel.FilterSyntax)

Sets the filter syntax.

See also

filterSyntax()

Parameters:

syntax (QgsBrowserProxyModel.FilterSyntax) –

setHiddenDataItemProviderKeyFilter(self, hiddenItemsFilter: Iterable[str])

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.

Parameters:

hiddenItemsFilter (Iterable[str]) – a list of data provider prefixes that will be hidden.

New in version 3.12.

setLayerType(self, type: QgsMapLayerType)

Sets the layer type to filter the model by. This is only used if filterByLayerType() is True.

See also

layerType()

Parameters:

type (QgsMapLayerType) –

setShowLayers(self, showLayers: bool)

Sets show layers to showLayers

See also

showLayers()

New in version 3.14.

Parameters:

showLayers (bool) –

setShownDataItemProviderKeyFilter(self, shownItemsFilter: Iterable[str])

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.

Parameters:

shownItemsFilter (Iterable[str]) – a list of data provider prefixes that will be hidden.

New in version 3.14.

showLayers(self) bool

Returns True if layers must be shown, this flag is True by default.

See also

setShowLayers()

New in version 3.14.

Return type:

bool

timerEvent(self, QTimerEvent)