QgsSymbolLayerMetadata class

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

Base classes

class QgsSymbolLayerAbstractMetadata
Stores metadata about one symbol layer class.

Constructors, destructors, conversion operators

QgsSymbolLayerMetadata(const QString& name, const QString& visibleName, QgsSymbol::SymbolType type, QgsSymbolLayerCreateFunc pfCreate, QgsSymbolLayerCreateFromSldFunc pfCreateFromSld = nullptr, QgsSymbolLayerPathResolverFunc pfPathResolver = nullptr, QgsSymbolLayerWidgetFunc pfWidget = nullptr)

Public functions

auto createFromSldFunction() const -> QgsSymbolLayerCreateFromSldFunc
auto createFunction() const -> QgsSymbolLayerCreateFunc
auto createSymbolLayer(const QgsStringMap& map) -> QgsSymbolLayer* override
Create a symbol layer of this type given the map of properties.
auto createSymbolLayerFromSld(QDomElement&) -> QgsSymbolLayer* override
Create a symbol layer of this type given the map of properties.
auto createSymbolLayerWidget(QgsVectorLayer*) -> QgsSymbolLayerWidget* override
Create widget for symbol layer of this type. Can return NULL if there's no GUI.
auto pathResolverFunction() const -> QgsSymbolLayerPathResolverFunc
void resolvePaths(QgsStringMap& properties, const QgsPathResolver& pathResolver, bool saving) override
Resolve paths in symbol layer's properties (if there are any paths).
void setWidgetFunction(QgsSymbolLayerWidgetFunc f)
auto widgetFunction() const -> QgsSymbolLayerWidgetFunc

Function documentation

QgsSymbolLayerMetadata::QgsSymbolLayerMetadata(const QString& name, const QString& visibleName, QgsSymbol::SymbolType type, QgsSymbolLayerCreateFunc pfCreate, QgsSymbolLayerCreateFromSldFunc pfCreateFromSld = nullptr, QgsSymbolLayerPathResolverFunc pfPathResolver = nullptr, QgsSymbolLayerWidgetFunc pfWidget = nullptr)

QgsSymbolLayerCreateFromSldFunc QgsSymbolLayerMetadata::createFromSldFunction() const

QgsSymbolLayerCreateFunc QgsSymbolLayerMetadata::createFunction() const

QgsSymbolLayerPathResolverFunc QgsSymbolLayerMetadata::pathResolverFunction() const

void QgsSymbolLayerMetadata::resolvePaths(QgsStringMap& properties, const QgsPathResolver& pathResolver, bool saving) override

Resolve paths in symbol layer's properties (if there are any paths).

When saving is true, paths are converted from absolute to relative, when saving is false, paths are converted from relative to absolute. This ensures that paths in project files can be relative, but in symbol layer instances the paths are always absolute

void QgsSymbolLayerMetadata::setWidgetFunction(QgsSymbolLayerWidgetFunc f)

QgsSymbolLayerWidgetFunc QgsSymbolLayerMetadata::widgetFunction() const