QGIS API Documentation  3.16.0-Hannover (43b64b13f3)
Public Member Functions | Protected Attributes | List of all members
QgsLayoutItemGuiMetadata Class Reference

Convenience metadata class that uses static functions to handle layout item GUI behavior. More...

#include <qgslayoutitemguiregistry.h>

Inheritance diagram for QgsLayoutItemGuiMetadata:
Inheritance graph
[legend]

Public Member Functions

 QgsLayoutItemGuiMetadata (int type, const QString &visibleName, const QIcon &creationIcon, const QgsLayoutItemWidgetFunc &pfWidget=nullptr, const QgsLayoutItemRubberBandFunc &pfRubberBand=nullptr, const QString &groupId=QString(), bool isNodeBased=false, QgsLayoutItemAbstractGuiMetadata::Flags flags=QgsLayoutItemAbstractGuiMetadata::Flags(), const QgsLayoutItemCreateFunc &pfCreateFunc=nullptr)
 Constructor for QgsLayoutItemGuiMetadata with the specified class type and creationIcon, and function pointers for the various configuration widget creation functions. More...
 
QgsLayoutItemcreateItem (QgsLayout *layout) override
 Creates an instance of the corresponding item type. More...
 
QgsLayoutItemBaseWidgetcreateItemWidget (QgsLayoutItem *item) override
 Creates a configuration widget for an item of this type. More...
 
QAbstractGraphicsShapeItem * createNodeRubberBand (QgsLayoutView *view) override
 Creates a rubber band for use when creating layout node based items of this type. More...
 
QgsLayoutViewRubberBandcreateRubberBand (QgsLayoutView *view) override
 Creates a rubber band for use when creating layout items of this type. More...
 
QIcon creationIcon () const override
 Returns an icon representing creation of the layout item type. More...
 
QgsLayoutItemAddedToLayoutFunc itemAddToLayoutFunction () const
 Returns the classes' item added to layout function. More...
 
QgsLayoutItemCreateFunc itemCreationFunction () const
 Returns the classes' item creation function. More...
 
void newItemAddedToLayout (QgsLayoutItem *item) override
 Called when a newly created item of the associated type has been added to a layout. More...
 
QgsLayoutNodeItemRubberBandFunc nodeRubberBandCreationFunction () const
 Returns the classes' node based rubber band creation function. More...
 
QgsLayoutItemRubberBandFunc rubberBandCreationFunction () const
 Returns the classes' rubber band creation function. More...
 
void setItemAddedToLayoutFunction (const QgsLayoutItemAddedToLayoutFunc &function)
 Sets the classes' item creation function. More...
 
void setItemCreationFunction (const QgsLayoutItemCreateFunc &function)
 Sets the classes' item creation function. More...
 
void setNodeRubberBandCreationFunction (const QgsLayoutNodeItemRubberBandFunc &function)
 Sets the classes' node based rubber band creation function. More...
 
void setRubberBandCreationFunction (const QgsLayoutItemRubberBandFunc &function)
 Sets the classes' rubber band creation function. More...
 
void setWidgetFunction (const QgsLayoutItemWidgetFunc &function)
 Sets the classes' configuration widget creation function. More...
 
QgsLayoutItemWidgetFunc widgetFunction () const
 Returns the classes' configuration widget creation function. More...
 

Protected Attributes

QgsLayoutItemAddedToLayoutFunc mAddedToLayoutFunc = nullptr
 
QgsLayoutItemCreateFunc mCreateFunc = nullptr
 
QIcon mIcon
 
QgsLayoutNodeItemRubberBandFunc mNodeRubberBandFunc = nullptr
 
QgsLayoutItemRubberBandFunc mRubberBandFunc = nullptr
 
QgsLayoutItemWidgetFunc mWidgetFunc = nullptr
 

Additional Inherited Members

 Flags for controlling how a items behave in the GUI. More...

Detailed Description

Convenience metadata class that uses static functions to handle layout item GUI behavior.

Note
not available in Python bindings
Since
QGIS 3.0

Definition at line 168 of file qgslayoutitemguiregistry.h.

Constructor & Destructor Documentation

◆ QgsLayoutItemGuiMetadata()

QgsLayoutItemGuiMetadata::QgsLayoutItemGuiMetadata ( int  type,
const QString &  visibleName,
const QIcon &  creationIcon,
const QgsLayoutItemWidgetFunc pfWidget = nullptr,
const QgsLayoutItemRubberBandFunc pfRubberBand = nullptr,
const QString &  groupId = QString(),
bool  isNodeBased = false,
QgsLayoutItemAbstractGuiMetadata::Flags  flags = QgsLayoutItemAbstractGuiMetadata::Flags(),
const QgsLayoutItemCreateFunc pfCreateFunc = nullptr 
)
inline

Constructor for QgsLayoutItemGuiMetadata with the specified class type and creationIcon, and function pointers for the various configuration widget creation functions.

visibleName should be set to a translated, user visible name identifying the corresponding layout item.

An optional groupId can be set, which allows grouping of related layout item classes. See QgsLayoutItemGuiMetadata for details.

If isNodeBased is true, then the corresponding item is a node based item.

Definition at line 183 of file qgslayoutitemguiregistry.h.

Member Function Documentation

◆ createItem()

QgsLayoutItem * QgsLayoutItemGuiMetadata::createItem ( QgsLayout layout)
overridevirtual

Creates an instance of the corresponding item type.

Reimplemented from QgsLayoutItemAbstractGuiMetadata.

Definition at line 148 of file qgslayoutitemguiregistry.cpp.

◆ createItemWidget()

QgsLayoutItemBaseWidget* QgsLayoutItemGuiMetadata::createItemWidget ( QgsLayoutItem item)
inlineoverridevirtual

Creates a configuration widget for an item of this type.

Can return nullptr if no configuration GUI is required.

Reimplemented from QgsLayoutItemAbstractGuiMetadata.

Definition at line 257 of file qgslayoutitemguiregistry.h.

◆ createNodeRubberBand()

QAbstractGraphicsShapeItem* QgsLayoutItemGuiMetadata::createNodeRubberBand ( QgsLayoutView view)
inlineoverridevirtual

Creates a rubber band for use when creating layout node based items of this type.

Can return nullptr if no rubber band should be created. The default behavior is to return nullptr.

See also
createRubberBand()

Reimplemented from QgsLayoutItemAbstractGuiMetadata.

Definition at line 259 of file qgslayoutitemguiregistry.h.

◆ createRubberBand()

QgsLayoutViewRubberBand* QgsLayoutItemGuiMetadata::createRubberBand ( QgsLayoutView view)
inlineoverridevirtual

Creates a rubber band for use when creating layout items of this type.

Can return nullptr if no rubber band should be created. The default behavior is to create a rectangular rubber band.

See also
createNodeRubberBand()

Reimplemented from QgsLayoutItemAbstractGuiMetadata.

Definition at line 258 of file qgslayoutitemguiregistry.h.

◆ creationIcon()

QIcon QgsLayoutItemGuiMetadata::creationIcon ( ) const
inlineoverridevirtual

Returns an icon representing creation of the layout item type.

Reimplemented from QgsLayoutItemAbstractGuiMetadata.

Definition at line 256 of file qgslayoutitemguiregistry.h.

◆ itemAddToLayoutFunction()

QgsLayoutItemAddedToLayoutFunc QgsLayoutItemGuiMetadata::itemAddToLayoutFunction ( ) const
inline

Returns the classes' item added to layout function.

See also
setItemAddedToLayoutFunction()

Definition at line 248 of file qgslayoutitemguiregistry.h.

◆ itemCreationFunction()

QgsLayoutItemCreateFunc QgsLayoutItemGuiMetadata::itemCreationFunction ( ) const
inline

Returns the classes' item creation function.

See also
setItemCreationFunction()

Definition at line 236 of file qgslayoutitemguiregistry.h.

◆ newItemAddedToLayout()

void QgsLayoutItemGuiMetadata::newItemAddedToLayout ( QgsLayoutItem item)
overridevirtual

Called when a newly created item of the associated type 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.

Reimplemented from QgsLayoutItemAbstractGuiMetadata.

Definition at line 153 of file qgslayoutitemguiregistry.cpp.

◆ nodeRubberBandCreationFunction()

QgsLayoutNodeItemRubberBandFunc QgsLayoutItemGuiMetadata::nodeRubberBandCreationFunction ( ) const
inline

Returns the classes' node based rubber band creation function.

See also
setNodeRubberBandCreationFunction()

Definition at line 224 of file qgslayoutitemguiregistry.h.

◆ rubberBandCreationFunction()

QgsLayoutItemRubberBandFunc QgsLayoutItemGuiMetadata::rubberBandCreationFunction ( ) const
inline

Returns the classes' rubber band creation function.

See also
setRubberBandCreationFunction()

Definition at line 212 of file qgslayoutitemguiregistry.h.

◆ setItemAddedToLayoutFunction()

void QgsLayoutItemGuiMetadata::setItemAddedToLayoutFunction ( const QgsLayoutItemAddedToLayoutFunc function)
inline

Sets the classes' item creation function.

See also
itemAddToLayoutFunction()

Definition at line 254 of file qgslayoutitemguiregistry.h.

◆ setItemCreationFunction()

void QgsLayoutItemGuiMetadata::setItemCreationFunction ( const QgsLayoutItemCreateFunc function)
inline

Sets the classes' item creation function.

See also
itemCreationFunction()

Definition at line 242 of file qgslayoutitemguiregistry.h.

◆ setNodeRubberBandCreationFunction()

void QgsLayoutItemGuiMetadata::setNodeRubberBandCreationFunction ( const QgsLayoutNodeItemRubberBandFunc function)
inline

Sets the classes' node based rubber band creation function.

See also
nodeRubberBandCreationFunction()

Definition at line 230 of file qgslayoutitemguiregistry.h.

◆ setRubberBandCreationFunction()

void QgsLayoutItemGuiMetadata::setRubberBandCreationFunction ( const QgsLayoutItemRubberBandFunc function)
inline

Sets the classes' rubber band creation function.

See also
rubberBandCreationFunction()

Definition at line 218 of file qgslayoutitemguiregistry.h.

◆ setWidgetFunction()

void QgsLayoutItemGuiMetadata::setWidgetFunction ( const QgsLayoutItemWidgetFunc function)
inline

Sets the classes' configuration widget creation function.

See also
widgetFunction()

Definition at line 206 of file qgslayoutitemguiregistry.h.

◆ widgetFunction()

QgsLayoutItemWidgetFunc QgsLayoutItemGuiMetadata::widgetFunction ( ) const
inline

Returns the classes' configuration widget creation function.

See also
setWidgetFunction()

Definition at line 200 of file qgslayoutitemguiregistry.h.

Member Data Documentation

◆ mAddedToLayoutFunc

QgsLayoutItemAddedToLayoutFunc QgsLayoutItemGuiMetadata::mAddedToLayoutFunc = nullptr
protected

Definition at line 269 of file qgslayoutitemguiregistry.h.

◆ mCreateFunc

QgsLayoutItemCreateFunc QgsLayoutItemGuiMetadata::mCreateFunc = nullptr
protected

Definition at line 268 of file qgslayoutitemguiregistry.h.

◆ mIcon

QIcon QgsLayoutItemGuiMetadata::mIcon
protected

Definition at line 264 of file qgslayoutitemguiregistry.h.

◆ mNodeRubberBandFunc

QgsLayoutNodeItemRubberBandFunc QgsLayoutItemGuiMetadata::mNodeRubberBandFunc = nullptr
protected

Definition at line 267 of file qgslayoutitemguiregistry.h.

◆ mRubberBandFunc

QgsLayoutItemRubberBandFunc QgsLayoutItemGuiMetadata::mRubberBandFunc = nullptr
protected

Definition at line 266 of file qgslayoutitemguiregistry.h.

◆ mWidgetFunc

QgsLayoutItemWidgetFunc QgsLayoutItemGuiMetadata::mWidgetFunc = nullptr
protected

Definition at line 265 of file qgslayoutitemguiregistry.h.


The documentation for this class was generated from the following files: