QGIS API Documentation  3.1.0-Master (cd495fb)
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
QgsAbstractVectorLayerLabeling Class Referenceabstract

Abstract base class - its implementations define different approaches to the labeling of a vector layer. More...

#include <qgsvectorlayerlabeling.h>

Inheritance diagram for QgsAbstractVectorLayerLabeling:
Inheritance graph
[legend]

Public Member Functions

 QgsAbstractVectorLayerLabeling ()=default
 Default constructor. More...
 
virtual ~QgsAbstractVectorLayerLabeling ()=default
 
virtual QgsAbstractVectorLayerLabelingclone () const =0
 Returns a new copy of the object. More...
 
virtual QgsVectorLayerLabelProviderprovider (QgsVectorLayer *layer) const
 Factory for label provider implementation. More...
 
virtual bool requiresAdvancedEffects () const =0
 Returns true if drawing labels requires advanced effects like composition modes, which could prevent it being used as an isolated cached image or exported to a vector format. More...
 
virtual QDomElement save (QDomDocument &doc, const QgsReadWriteContext &context) const =0
 Returns labeling configuration as XML element. More...
 
virtual void setSettings (QgsPalLayerSettings *settings, const QString &providerId=QString())=0
 Set pal settings for a specific provider (takes ownership). More...
 
virtual QgsPalLayerSettings settings (const QString &providerId=QString()) const =0
 Gets associated label settings. More...
 
virtual QStringList subProviders () const
 Gets list of sub-providers within the layer's labeling. More...
 
virtual void toSld (QDomNode &parent, const QgsStringMap &props) const
 Writes the SE 1.1 TextSymbolizer element based on the current layer labeling settings. More...
 
virtual QString type () const =0
 Unique type string of the labeling configuration implementation. More...
 

Static Public Member Functions

static QgsAbstractVectorLayerLabelingcreate (const QDomElement &element, const QgsReadWriteContext &context)
 Try to create instance of an implementation based on the XML data. More...
 

Protected Member Functions

virtual void writeTextSymbolizer (QDomNode &parent, QgsPalLayerSettings &settings, const QgsStringMap &props) const
 Writes a TextSymbolizer element contents based on the provided labeling settings. More...
 

Detailed Description

Abstract base class - its implementations define different approaches to the labeling of a vector layer.

Since
QGIS 3.0

Definition at line 40 of file qgsvectorlayerlabeling.h.

Constructor & Destructor Documentation

◆ QgsAbstractVectorLayerLabeling()

QgsAbstractVectorLayerLabeling::QgsAbstractVectorLayerLabeling ( )
default

Default constructor.

◆ ~QgsAbstractVectorLayerLabeling()

virtual QgsAbstractVectorLayerLabeling::~QgsAbstractVectorLayerLabeling ( )
virtualdefault

Member Function Documentation

◆ clone()

virtual QgsAbstractVectorLayerLabeling* QgsAbstractVectorLayerLabeling::clone ( ) const
pure virtual

Returns a new copy of the object.

Implemented in QgsRuleBasedLabeling, and QgsVectorLayerSimpleLabeling.

◆ create()

QgsAbstractVectorLayerLabeling * QgsAbstractVectorLayerLabeling::create ( const QDomElement &  element,
const QgsReadWriteContext context 
)
static

Try to create instance of an implementation based on the XML data.

Definition at line 26 of file qgsvectorlayerlabeling.cpp.

◆ provider()

virtual QgsVectorLayerLabelProvider* QgsAbstractVectorLayerLabeling::provider ( QgsVectorLayer layer) const
inlinevirtual

Factory for label provider implementation.

Note
not available in Python bindings

Reimplemented in QgsRuleBasedLabeling, and QgsVectorLayerSimpleLabeling.

Definition at line 69 of file qgsvectorlayerlabeling.h.

◆ requiresAdvancedEffects()

virtual bool QgsAbstractVectorLayerLabeling::requiresAdvancedEffects ( ) const
pure virtual

Returns true if drawing labels requires advanced effects like composition modes, which could prevent it being used as an isolated cached image or exported to a vector format.

Since
QGIS 3.0

Implemented in QgsRuleBasedLabeling, and QgsVectorLayerSimpleLabeling.

◆ save()

virtual QDomElement QgsAbstractVectorLayerLabeling::save ( QDomDocument &  doc,
const QgsReadWriteContext context 
) const
pure virtual

Returns labeling configuration as XML element.

Implemented in QgsRuleBasedLabeling, and QgsVectorLayerSimpleLabeling.

◆ setSettings()

virtual void QgsAbstractVectorLayerLabeling::setSettings ( QgsPalLayerSettings settings,
const QString &  providerId = QString() 
)
pure virtual

Set pal settings for a specific provider (takes ownership).

Parameters
settingsPal layer settings
providerIdThe id of the provider
Since
QGIS 3.0

Implemented in QgsRuleBasedLabeling, and QgsVectorLayerSimpleLabeling.

◆ settings()

virtual QgsPalLayerSettings QgsAbstractVectorLayerLabeling::settings ( const QString &  providerId = QString()) const
pure virtual

Gets associated label settings.

In case of multiple sub-providers with different settings, they are identified by their ID (e.g. in case of rule-based labeling, provider ID == rule key)

Implemented in QgsRuleBasedLabeling, and QgsVectorLayerSimpleLabeling.

◆ subProviders()

virtual QStringList QgsAbstractVectorLayerLabeling::subProviders ( ) const
inlinevirtual

Gets list of sub-providers within the layer's labeling.

Reimplemented in QgsRuleBasedLabeling.

Definition at line 75 of file qgsvectorlayerlabeling.h.

◆ toSld()

virtual void QgsAbstractVectorLayerLabeling::toSld ( QDomNode &  parent,
const QgsStringMap props 
) const
inlinevirtual

Writes the SE 1.1 TextSymbolizer element based on the current layer labeling settings.

Reimplemented in QgsRuleBasedLabeling, and QgsVectorLayerSimpleLabeling.

Definition at line 109 of file qgsvectorlayerlabeling.h.

◆ type()

virtual QString QgsAbstractVectorLayerLabeling::type ( ) const
pure virtual

Unique type string of the labeling configuration implementation.

Implemented in QgsRuleBasedLabeling, and QgsVectorLayerSimpleLabeling.

◆ writeTextSymbolizer()

void QgsAbstractVectorLayerLabeling::writeTextSymbolizer ( QDomNode &  parent,
QgsPalLayerSettings settings,
const QgsStringMap props 
) const
protectedvirtual

Writes a TextSymbolizer element contents based on the provided labeling settings.

Parameters
parentthe node that will have the text symbolizer element added to it
settingsthe settings getting translated to a TextSymbolizer
propsa open ended set of properties that can drive/inform the SLD encoding

Definition at line 224 of file qgsvectorlayerlabeling.cpp.


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