Class: QgsMapLayerAction

class qgis.gui.QgsMapLayerAction(name: str, parent: QObject, targets: Union[QgsMapLayerAction.Targets, QgsMapLayerAction.Target] = QgsMapLayerAction.AllActions, icon: QIcon = QIcon(), flags: Union[QgsMapLayerAction.Flags, QgsMapLayerAction.Flag] = 0)

Bases: PyQt5.QtWidgets.QAction

Creates a map layer action which can run on any layer

Note

using AllActions as a target probably does not make a lot of sense. This default action was settled for API compatibility reasons.

QgsMapLayerAction(name: str, parent: QObject, layer: QgsMapLayer, targets: Union[QgsMapLayerAction.Targets, QgsMapLayerAction.Target] = QgsMapLayerAction.AllActions, icon: QIcon = QIcon(), flags: Union[QgsMapLayerAction.Flags, QgsMapLayerAction.Flag] = 0) Creates a map layer action which can run only on a specific layer

QgsMapLayerAction(name: str, parent: QObject, layerType: QgsMapLayerType, targets: Union[QgsMapLayerAction.Targets, QgsMapLayerAction.Target] = QgsMapLayerAction.AllActions, icon: QIcon = QIcon(), flags: Union[QgsMapLayerAction.Flags, QgsMapLayerAction.Flag] = 0) Creates a map layer action which can run on a specific type of layer

An action which can run on map layers

Parameters
AllActions = 7
EnabledOnlyWhenEditable = 2
class Flag

Bases: int

class Flags

Bases: sip.wrapper

QgsMapLayerAction.Flags(Union[QgsMapLayerAction.Flags, QgsMapLayerAction.Flag]) QgsMapLayerAction.Flags(QgsMapLayerAction.Flags)

baseClass

alias of QgsMapLayerAction

Layer = 1
MultipleFeatures = 4
SingleFeature = 2
class Target

Bases: int

class Targets

Bases: sip.wrapper

QgsMapLayerAction.Targets(Union[QgsMapLayerAction.Targets, QgsMapLayerAction.Target]) QgsMapLayerAction.Targets(QgsMapLayerAction.Targets)

baseClass

alias of QgsMapLayerAction

canRunUsingLayer(self, layer: QgsMapLayer) → bool

True if action can run using the specified layer

Parameters

layer (QgsMapLayer) –

Return type

bool

childEvent(self, QChildEvent)
connectNotify(self, QMetaMethod)
customEvent(self, QEvent)
disconnectNotify(self, QMetaMethod)
event(self, QEvent) → bool
flags(self) → QgsMapLayerAction.Flags

Layer behavior flags.

New in version 3.0.

Return type

QgsMapLayerAction.Flags

isEnabledOnlyWhenEditable(self) → bool

Returns True if the action is only enabled for layers in editable mode.

New in version 3.0.

Return type

bool

isSignalConnected(self, QMetaMethod) → bool
receivers(self, PYQT_SIGNAL) → int
sender(self) → QObject
senderSignalIndex(self) → int
setTargets(self, targets: Union[QgsMapLayerAction.Targets, QgsMapLayerAction.Target])

Define the targets of the action

Parameters

targets (Union[QgsMapLayerAction.Targets) –

targets(self) → QgsMapLayerAction.Targets

Returns availibity of action

Return type

QgsMapLayerAction.Targets

timerEvent(self, QTimerEvent)
triggerForFeature(self, layer: QgsMapLayer, feature: QgsFeature)

Triggers the action with the specified layer and feature.

Parameters
triggerForFeatures(self, layer: QgsMapLayer, featureList: Iterable[QgsFeature])

Triggers the action with the specified layer and list of feature.

Parameters
triggerForLayer(self, layer: QgsMapLayer)

Triggers the action with the specified layer.

Parameters

layer (QgsMapLayer) –

triggeredForFeature

Triggered when action has been run for a specific feature [signal]

Parameters
triggeredForFeatures

Triggered when action has been run for a specific list of features [signal]

Parameters
triggeredForLayer

Triggered when action has been run for a specific layer [signal]

Parameters

layer (QgsMapLayer) –