QGIS API Documentation 3.36.0-Maidenhead (09951dc0acf)
|
Registry of available layout item GUI behavior. More...
#include <qgslayoutitemguiregistry.h>
Signals | |
void | typeAdded (int metadataId) |
Emitted whenever a new item type is added to the registry, with the specified metadataId. | |
Public Member Functions | |
QgsLayoutItemGuiRegistry (const QgsLayoutItemGuiRegistry &rh)=delete | |
QgsLayoutItemGuiRegistry cannot be copied. | |
QgsLayoutItemGuiRegistry (QObject *parent=nullptr) | |
Creates a new empty item GUI registry. | |
~QgsLayoutItemGuiRegistry () override | |
bool | addItemGroup (const QgsLayoutItemGuiGroup &group) |
Registers a new item group with the registry. | |
bool | addLayoutItemGuiMetadata (QgsLayoutItemAbstractGuiMetadata *metadata) |
Registers the gui metadata for a new layout item type. | |
QgsLayoutItem * | createItem (int metadataId, QgsLayout *layout) const |
Creates a new instance of a layout item given the item metadata metadataId, target layout. | |
QgsLayoutViewRubberBand * | createItemRubberBand (int metadataId, QgsLayoutView *view) const |
Creates a new rubber band item for the specified item metadataId and destination view. | |
QgsLayoutItemBaseWidget * | createItemWidget (QgsLayoutItem *item) const |
Creates a new instance of a layout item configuration widget for the specified item. | |
QAbstractGraphicsShapeItem * | createNodeItemRubberBand (int metadataId, QgsLayoutView *view) |
Creates a rubber band for the specified item metadataId and destination view. | |
const QgsLayoutItemGuiGroup & | itemGroup (const QString &id) |
Returns a reference to the item group with matching id. | |
QgsLayoutItemAbstractGuiMetadata * | itemMetadata (int metadataId) const |
Returns the metadata for the specified item metadataId. | |
QList< int > | itemMetadataIds () const |
Returns a list of available item metadata ids handled by the registry. | |
int | metadataIdForItemType (int type) const |
Returns the GUI item metadata ID which corresponds to the specified layout item type. | |
void | newItemAddedToLayout (int metadataId, QgsLayoutItem *item, const QVariantMap &properties=QVariantMap()) |
Called when a newly created item of the associated metadata metadataId has been added to a layout. | |
QgsLayoutItemGuiRegistry & | operator= (const QgsLayoutItemGuiRegistry &rh)=delete |
QgsLayoutItemGuiRegistry cannot be copied. | |
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.
Definition at line 356 of file qgslayoutitemguiregistry.h.
QgsLayoutItemGuiRegistry::QgsLayoutItemGuiRegistry | ( | QObject * | parent = nullptr | ) |
Creates a new empty item GUI registry.
QgsLayoutItemGuiRegistry is not usually directly created, but rather accessed through QgsGui::layoutItemGuiRegistry().
Definition at line 45 of file qgslayoutitemguiregistry.cpp.
|
override |
Definition at line 50 of file qgslayoutitemguiregistry.cpp.
|
delete |
QgsLayoutItemGuiRegistry cannot be copied.
bool QgsLayoutItemGuiRegistry::addItemGroup | ( | const QgsLayoutItemGuiGroup & | group | ) |
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, or false
if group could not be added (e.g. due to duplicate id value).
Definition at line 81 of file qgslayoutitemguiregistry.cpp.
bool QgsLayoutItemGuiRegistry::addLayoutItemGuiMetadata | ( | QgsLayoutItemAbstractGuiMetadata * | metadata | ) |
Registers the gui metadata for a new layout item type.
Takes ownership of the metadata instance.
Definition at line 70 of file qgslayoutitemguiregistry.cpp.
QgsLayoutItem * QgsLayoutItemGuiRegistry::createItem | ( | int | metadataId, |
QgsLayout * | layout | ||
) | const |
Creates a new instance of a layout item given the item metadata metadataId, target layout.
Definition at line 95 of file qgslayoutitemguiregistry.cpp.
QgsLayoutViewRubberBand * QgsLayoutItemGuiRegistry::createItemRubberBand | ( | int | metadataId, |
QgsLayoutView * | view | ||
) | const |
Creates a new rubber band item for the specified item metadataId and destination view.
Definition at line 144 of file qgslayoutitemguiregistry.cpp.
QgsLayoutItemBaseWidget * QgsLayoutItemGuiRegistry::createItemWidget | ( | QgsLayoutItem * | item | ) | const |
Creates a new instance of a layout item configuration widget for the specified item.
Definition at line 123 of file qgslayoutitemguiregistry.cpp.
QAbstractGraphicsShapeItem * QgsLayoutItemGuiRegistry::createNodeItemRubberBand | ( | int | metadataId, |
QgsLayoutView * | view | ||
) |
Creates a rubber band for the specified item metadataId and destination view.
Can return nullptr
if no node based rubber band should be created or is applicable for the item.
Definition at line 152 of file qgslayoutitemguiregistry.cpp.
const QgsLayoutItemGuiGroup & QgsLayoutItemGuiRegistry::itemGroup | ( | const QString & | id | ) |
Returns a reference to the item group with matching id.
Definition at line 90 of file qgslayoutitemguiregistry.cpp.
QgsLayoutItemAbstractGuiMetadata * QgsLayoutItemGuiRegistry::itemMetadata | ( | int | metadataId | ) | const |
Returns the metadata for the specified item metadataId.
Returns nullptr
if a corresponding metadataId was not found in the registry.
Definition at line 55 of file qgslayoutitemguiregistry.cpp.
QList< int > QgsLayoutItemGuiRegistry::itemMetadataIds | ( | ) | const |
Returns a list of available item metadata ids handled by the registry.
Definition at line 160 of file qgslayoutitemguiregistry.cpp.
int QgsLayoutItemGuiRegistry::metadataIdForItemType | ( | int | type | ) | const |
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.
Definition at line 60 of file qgslayoutitemguiregistry.cpp.
void QgsLayoutItemGuiRegistry::newItemAddedToLayout | ( | int | metadataId, |
QgsLayoutItem * | item, | ||
const QVariantMap & | properties = QVariantMap() |
||
) |
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 the QgsLayoutItemGuiMetadata::newItemAddedToLayout() function.
Definition at line 108 of file qgslayoutitemguiregistry.cpp.
|
delete |
QgsLayoutItemGuiRegistry cannot be copied.
|
signal |
Emitted whenever a new item type is added to the registry, with the specified metadataId.