QgsRendererMetadata class

Convenience metadata class that uses static functions to create renderer and its widget.

Base classes

class QgsRendererAbstractMetadata
Stores metadata about one renderer class.

Constructors, destructors, conversion operators

QgsRendererMetadata(const QString& name, const QString& visibleName, QgsRendererCreateFunc pfCreate, const QIcon& icon = QIcon(), QgsRendererWidgetFunc pfWidget = nullptr, QgsRendererAbstractMetadata::LayerTypes layerTypes = QgsRendererAbstractMetadata::All)
Construct metadata.
QgsRendererMetadata(const QString& name, const QString& visibleName, QgsRendererCreateFunc pfCreate, QgsRendererCreateFromSldFunc pfCreateFromSld, const QIcon& icon = QIcon(), QgsRendererWidgetFunc pfWidget = nullptr, QgsRendererAbstractMetadata::LayerTypes layerTypes = QgsRendererAbstractMetadata::All)

Public functions

auto compatibleLayerTypes() const -> QgsRendererAbstractMetadata::LayerTypes override
Returns flags indicating the types of layer the renderer is compatible with.
auto createFromSldFunction() const -> QgsRendererCreateFromSldFunc
auto createFunction() const -> QgsRendererCreateFunc
auto createRenderer(QDomElement& elem, const QgsReadWriteContext& context) -> QgsFeatureRenderer* override
Returns new instance of the renderer given the DOM element.
auto createRendererWidget(QgsVectorLayer* layer, QgsStyle* style, QgsFeatureRenderer* oldRenderer) -> QgsRendererWidget* override
Returns new instance of settings widget for the renderer.
void setWidgetFunction(QgsRendererWidgetFunc f)
auto widgetFunction() const -> QgsRendererWidgetFunc

Protected variables

QgsRendererCreateFromSldFunc mCreateFromSldFunc
pointer to function that creates an instance of the renderer from SLD
QgsRendererCreateFunc mCreateFunc
pointer to function that creates an instance of the renderer when loading project / style
QgsRendererWidgetFunc mWidgetFunc
pointer to function that creates a widget for configuration of renderer's params

Function documentation

QgsRendererMetadata::QgsRendererMetadata(const QString& name, const QString& visibleName, QgsRendererCreateFunc pfCreate, const QIcon& icon = QIcon(), QgsRendererWidgetFunc pfWidget = nullptr, QgsRendererAbstractMetadata::LayerTypes layerTypes = QgsRendererAbstractMetadata::All)

Construct metadata.

QgsRendererMetadata::QgsRendererMetadata(const QString& name, const QString& visibleName, QgsRendererCreateFunc pfCreate, QgsRendererCreateFromSldFunc pfCreateFromSld, const QIcon& icon = QIcon(), QgsRendererWidgetFunc pfWidget = nullptr, QgsRendererAbstractMetadata::LayerTypes layerTypes = QgsRendererAbstractMetadata::All)

QgsRendererAbstractMetadata::LayerTypes QgsRendererMetadata::compatibleLayerTypes() const override

Returns flags indicating the types of layer the renderer is compatible with.

QgsRendererCreateFromSldFunc QgsRendererMetadata::createFromSldFunction() const

QgsRendererCreateFunc QgsRendererMetadata::createFunction() const

QgsFeatureRenderer* QgsRendererMetadata::createRenderer(QDomElement& elem, const QgsReadWriteContext& context) override

Returns new instance of the renderer given the DOM element.

Returns NULL on error. Pure virtual function: must be implemented in derived classes.

QgsRendererWidget* QgsRendererMetadata::createRendererWidget(QgsVectorLayer* layer, QgsStyle* style, QgsFeatureRenderer* oldRenderer) override

Returns new instance of settings widget for the renderer.

Returns NULL on error.

The oldRenderer argument may refer to previously used renderer (or it is null). If not null, it may be used to initialize GUI of the widget from the previous settings. The old renderer does not have to be of the same type as returned by createRenderer(). When using oldRenderer make sure to make a copy of it - it will be deleted afterwards.

void QgsRendererMetadata::setWidgetFunction(QgsRendererWidgetFunc f)

QgsRendererWidgetFunc QgsRendererMetadata::widgetFunction() const