Class: QgsMapLayerStore¶
-
class
qgis.core.
QgsMapLayerStore
(parent: QObject = None)¶ Bases:
PyQt5.QtCore.QObject
Constructor for QgsMapLayerStore.
A storage object for map layers, in which the layers are owned by the store and have their lifetime bound to the store.
New in version 3.0: Enums
Methods
Add a
layer
to the store.Add a list of
layers
to the store.Returns the number of layers contained in the store.
Retrieve a pointer to a layer by layer
id
.Returns a map of all layers by layer ID.
Retrieve a list of matching layers by layer
name
.Removes all registered layers.
Remove a layer from the store by layer
id
.Remove a set of
layers
from the store.Remove a set of layers from the store by layer ID.
Takes a
layer
from the store.Transfers all the map layers contained within another map layer store and adds them to this store.
Returns the number of valid layers contained in the store.
Returns a map of all valid layers by layer ID.
Signals
Emitted when all layers are removed, before layersWillBeRemoved() and layerWillBeRemoved() signals are emitted.
Emitted after a layer was removed from the store.
Emitted when a
layer
was added to the store.Emitted when a layer is about to be removed from the store.
Emitted when one or more layers were added to the store.
Emitted after one or more layers were removed from the store.
Emitted when one or more layers are about to be removed from the store.
Attributes
-
addMapLayer
(self, layer: QgsMapLayer) → QgsMapLayer¶ Add a
layer
to the store. Ownership of the layer is transferred to the store.The layersAdded() and layerWasAdded() signals will always be emitted. If you are adding multiple layers at once, you should use addMapLayers() instead.
- Parameters
layer – A layer to add to the store
- Returns
None if unable to add layer, otherwise pointer to newly added layer
See also
Note
Use addMapLayers() if adding more than one layer at a time.
See also
-
addMapLayers
(self, layers: Iterable[QgsMapLayer]) → List[QgsMapLayer]¶ Add a list of
layers
to the store. Ownership of the layers is transferred to the store.The layersAdded() and layerWasAdded() signals will always be emitted.
- Parameters
layers – A list of layer which should be added to the store.
- Returns
a list of the map layers that were added successfully. If a layer already exists in the store, it will not be part of the returned list.
See also
-
allLayersRemoved
¶ Emitted when all layers are removed, before layersWillBeRemoved() and layerWillBeRemoved() signals are emitted. The layersWillBeRemoved() and layerWillBeRemoved() signals will still be emitted following this signal. You can use this signal to do easy (and fast) cleanup. [signal]
-
childEvent
()¶
-
connectNotify
()¶
-
count
(self) → int¶ Returns the number of layers contained in the store.
-
customEvent
()¶
-
disconnectNotify
()¶
-
isSignalConnected
()¶
-
layerRemoved
¶ Emitted after a layer was removed from the store.
- Parameters
layerId – The ID of the layer removed.
Note
Consider using layersRemoved() instead
See also
layerWillBeRemoved()
[signal]
-
layerWasAdded
¶ Emitted when a
layer
was added to the store.Note
Consider using layersAdded() instead
See also
layersAdded()
[signal]
-
layerWillBeRemoved
¶ Emitted when a layer is about to be removed from the store.
- Parameters
layerId – The ID of the layer to be removed.
Note
Consider using layersWillBeRemoved() instead.
See also
See also
layerRemoved()
[signal]layerWillBeRemoved(self, QgsMapLayer) Emitted when a layer is about to be removed from the store.
- Parameters
layer – The layer to be removed.
Note
Consider using layersWillBeRemoved() instead.
See also
See also
layerRemoved()
[signal]
-
layersAdded
¶ Emitted when one or more layers were added to the store.
- Parameters
layers – List of layers which have been added.
See also
layerWasAdded()
[signal]
-
layersRemoved
¶ Emitted after one or more layers were removed from the store.
- Parameters
layerIds – A list of IDs of the layers which were removed.
See also
layersWillBeRemoved()
[signal]
-
layersWillBeRemoved
¶ Emitted when one or more layers are about to be removed from the store.
- Parameters
layerIds – A list of IDs for the layers which are to be removed.
See also
See also
layersRemoved()
[signal]layersWillBeRemoved(self, Iterable[QgsMapLayer]) Emitted when one or more layers are about to be removed from the store.
- Parameters
layers – A list of layers which are to be removed.
See also
See also
layersRemoved()
[signal]
-
mapLayer
(self, id: str) → QgsMapLayer¶ Retrieve a pointer to a layer by layer
id
.- Parameters
id – ID of layer to retrieve
- Returns
matching layer, or None if no matching layer found
See also
See also
-
mapLayers
(self) → object¶ Returns a map of all layers by layer ID.
See also
See also
See also
layers()
-
mapLayersByName
(self, name: str) → List[QgsMapLayer]¶ Retrieve a list of matching layers by layer
name
.- Parameters
name – name of layers to match
- Returns
list of matching layers
See also
See also
-
receivers
()¶
-
removeAllMapLayers
(self)¶ Removes all registered layers. These layers will also be deleted.
Note
Calling this method will cause the removeAll() signal to be emitted.
See also
See also
-
removeMapLayer
(self, id: str)¶ Remove a layer from the store by layer
id
.The specified layer will be removed from the store. The layer will also be deleted.
- Parameters
id – ID of the layer to remove
See also
See also
See also
removeMapLayer(self, layer: QgsMapLayer) Remove a
layer
from the store.The specified layer will be removed from the store. The layer will also be deleted.
- Parameters
layer – The layer to remove. Null pointers are ignored.
See also
See also
See also
-
removeMapLayers
(self, layers: Iterable[QgsMapLayer])¶ Remove a set of
layers
from the store.The specified layers will be removed from the store. These layers will also be deleted.
- Parameters
layers – A list of layers to remove. Null pointers are ignored.
See also
See also
See also
-
removeMapLayersById
(self, layerIds: Iterable[str])¶ Remove a set of layers from the store by layer ID.
The specified layers will be removed from the store. These layers will also be deleted.
- Parameters
layerIds – list of IDs of the layers to remove
See also
See also
See also
Note
available in Python bindings as removeMapLayersById.
-
sender
()¶
-
senderSignalIndex
()¶
-
takeMapLayer
(self, layer: QgsMapLayer) → QgsMapLayer¶ Takes a
layer
from the store. If the layer was owned by the store, the layer will be returned without deleting it. The caller takes ownership of the layer and is responsible for deleting it.See also
-
timerEvent
()¶
-
transferLayersFromStore
(self, other: QgsMapLayerStore)¶ Transfers all the map layers contained within another map layer store and adds them to this store. Note that
other
and this store must have the same thread affinity.
-
validCount
(self) → int¶ Returns the number of valid layers contained in the store.
New in version 3.6.
-
validMapLayers
(self) → object¶ Returns a map of all valid layers by layer ID.
See also
See also
See also
layers()
New in version 3.6.
-