Class: QgsLayoutItemGuiRegistry¶
Registry of available layout item GUI behavior.
QgsLayoutItemGuiRegistry
is not usually directly created,
but rather accessed through QgsGui.layoutItemGuiRegistry()
.
This acts as a companion to QgsLayoutItemRegistry
, handling
only the components related to the GUI behavior of layout items.
Class Hierarchy¶
Base classes¶
Methods
Registers a new item group with the registry. |
|
Registers the GUI metadata for a new layout item type. |
|
Creates a new instance of a layout item given the item metadata metadataId, target layout. |
|
Creates a new instance of a layout item configuration widget for the specified item. |
|
Returns a reference to the item group with matching id. |
|
Returns the metadata for the specified item metadataId. |
|
Returns a list of available item metadata ids handled by the registry. |
|
Returns the GUI item metadata ID which corresponds to the specified layout item type. |
|
Called when a newly created item of the associated metadata metadataId has been added to a layout. |
|
Unregisters an item group from the registry. |
|
Unregisters the GUI metadata for a layout item type. |
Signals
Emitted whenever an item group is removed from the registry. |
|
Emitted whenever a new item type is added to the registry, with the specified metadataId. |
|
Emitted whenever an item type is removed from the registry, with the specified metadataId. |
- class qgis.gui.QgsLayoutItemGuiRegistry[source]¶
Bases:
QObject
- __init__(parent: QObject | None = None)
Creates a new empty item GUI registry.
QgsLayoutItemGuiRegistry is not usually directly created, but rather accessed through
QgsGui.layoutItemGuiRegistry()
.- Parameters:
parent (Optional[QObject] = None)
- addItemGroup(self, group: QgsLayoutItemGuiGroup) bool [source]¶
Registers a new item group with the registry. This must be done before calling
addLayoutItemGuiMetadata()
for any item types associated with the group.Returns
True
if group was added, orFalse
if group could not be added (e.g. due to duplicate id value).See also
- Parameters:
group (QgsLayoutItemGuiGroup)
- Return type:
bool
- addLayoutItemGuiMetadata(self, metadata: QgsLayoutItemAbstractGuiMetadata | None) bool [source]¶
Registers the GUI metadata for a new layout item type. Takes ownership of the metadata instance.
- Parameters:
metadata (Optional[QgsLayoutItemAbstractGuiMetadata])
- Return type:
bool
- createItem(self, metadataId: int, layout: QgsLayout | None) QgsLayoutItem | None [source]¶
Creates a new instance of a layout item given the item metadata
metadataId
, targetlayout
.- Parameters:
metadataId (int)
layout (Optional[QgsLayout])
- Return type:
Optional[QgsLayoutItem]
- createItemWidget(self, item: QgsLayoutItem | None) QgsLayoutItemBaseWidget | None [source]¶
Creates a new instance of a layout item configuration widget for the specified
item
.- Parameters:
item (Optional[QgsLayoutItem])
- Return type:
Optional[QgsLayoutItemBaseWidget]
- signal groupRemoved(groupId: str)[source]¶
Emitted whenever an item group is removed from the registry.
Added in version 4.0.
- Parameters:
groupId (str)
- itemGroup(self, id: str | None) QgsLayoutItemGuiGroup ¶
Returns a reference to the item group with matching
id
.See also
- Parameters:
id (Optional[str])
- Return type:
- itemMetadata(self, metadataId: int) QgsLayoutItemAbstractGuiMetadata | None [source]¶
Returns the metadata for the specified item
metadataId
. ReturnsNone
if a correspondingmetadataId
was not found in the registry.- Parameters:
metadataId (int)
- Return type:
Optional[QgsLayoutItemAbstractGuiMetadata]
- itemMetadataIds(self) List[int] ¶
Returns a list of available item metadata ids handled by the registry.
- Return type:
List[int]
- metadataIdForItemType(self, type: int) int [source]¶
Returns the GUI item metadata ID which corresponds to the specified layout item
type
.In the case that multiple GUI metadata classes exist for a single layout item
type
then only the first encountered GUI metadata ID will be returned.Returns -1 if no matching metadata is found in the GUI registry.
Added in version 3.18.
- Parameters:
type (int)
- Return type:
int
- newItemAddedToLayout(self, metadataId: int, item: QgsLayoutItem | None, properties: Dict[str, Any] = {})[source]¶
Called when a newly created item of the associated metadata
metadataId
has been added to a layout.This is only called for additions which result from GUI operations - i.e. it is not called for items added from templates.
Since QGIS 3.18 the optional
properties
argument can be used to pass custom properties to theQgsLayoutItemGuiMetadata.newItemAddedToLayout()
function.- Parameters:
metadataId (int)
item (Optional[QgsLayoutItem])
properties (Dict[str, Any] = {})
- removeItemGroup(self, id: str | None) bool [source]¶
Unregisters an item group from the registry.
This must be done after calling
removeLayoutItemGuiMetadata()
for every item types associated with the group.Added in version 4.0.
- Parameters:
id (Optional[str])
- Return type:
bool
- removeLayoutItemGuiMetadata(self, type: int) bool [source]¶
Unregisters the GUI metadata for a layout item type.
Added in version 4.0.
- Parameters:
type (int)
- Return type:
bool
- removeLayoutItemGuiMetadata(self, metadata: QgsLayoutItemAbstractGuiMetadata | None) bool [source]
Unregisters the GUI metadata for a layout item type.
The
metadata
object will be deleted and should not be used after this call.Added in version 4.0.
- Parameters:
metadata (Optional[QgsLayoutItemAbstractGuiMetadata])
- Return type:
bool