QGIS API Documentation
3.14.0-Pi (9f7028fd23)
|
#include <qgsrulebasedlabeling.h>
Classes | |
class | Rule |
Public Types | |
typedef QList< QgsRuleBasedLabeling::Rule * > | RuleList |
typedef QMap< QgsRuleBasedLabeling::Rule *, QgsVectorLayerLabelProvider * > | RuleToProviderMap |
Public Member Functions | |
QgsRuleBasedLabeling (QgsRuleBasedLabeling::Rule *root) | |
Constructs the labeling from given tree of rules (takes ownership) More... | |
~QgsRuleBasedLabeling () override | |
bool | accept (QgsStyleEntityVisitorInterface *visitor) const override |
Accepts the specified symbology visitor, causing it to visit all symbols associated with the labeling. More... | |
QgsRuleBasedLabeling * | clone () const override |
Returns a new copy of the object. More... | |
QgsVectorLayerLabelProvider * | provider (QgsVectorLayer *layer) const override |
bool | requiresAdvancedEffects () const override |
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... | |
QgsRuleBasedLabeling::Rule * | rootRule () |
const Rule * | rootRule () const |
QDomElement | save (QDomDocument &doc, const QgsReadWriteContext &context) const override |
Returns labeling configuration as XML element. More... | |
void | setSettings (QgsPalLayerSettings *settings, const QString &providerId=QString()) override |
Set pal settings for a specific provider (takes ownership). More... | |
QgsPalLayerSettings | settings (const QString &providerId=QString()) const override |
Gets associated label settings. More... | |
QStringList | subProviders () const override |
Gets list of sub-providers within the layer's labeling. More... | |
void | toSld (QDomNode &parent, const QgsStringMap &props) const override |
Writes the SE 1.1 TextSymbolizer element based on the current layer labeling settings. More... | |
QString | type () const override |
Unique type string of the labeling configuration implementation. More... | |
Public Member Functions inherited from QgsAbstractVectorLayerLabeling | |
QgsAbstractVectorLayerLabeling ()=default | |
Default constructor. More... | |
virtual | ~QgsAbstractVectorLayerLabeling ()=default |
Static Public Member Functions | |
static QgsRuleBasedLabeling * | create (const QDomElement &element, const QgsReadWriteContext &context) |
Create the instance from a DOM element with saved configuration. More... | |
Static Public Member Functions inherited from QgsAbstractVectorLayerLabeling | |
static QgsAbstractVectorLayerLabeling * | create (const QDomElement &element, const QgsReadWriteContext &context) |
Try to create instance of an implementation based on the XML data. More... | |
Protected Attributes | |
std::unique_ptr< Rule > | mRootRule |
Additional Inherited Members | |
Protected Member Functions inherited from QgsAbstractVectorLayerLabeling | |
virtual void | writeTextSymbolizer (QDomNode &parent, QgsPalLayerSettings &settings, const QgsStringMap &props) const |
Writes a TextSymbolizer element contents based on the provided labeling settings. More... | |
Definition at line 40 of file qgsrulebasedlabeling.h.
typedef QList<QgsRuleBasedLabeling::Rule *> QgsRuleBasedLabeling::RuleList |
Definition at line 43 of file qgsrulebasedlabeling.h.
typedef QMap<QgsRuleBasedLabeling::Rule *, QgsVectorLayerLabelProvider *> QgsRuleBasedLabeling::RuleToProviderMap |
Definition at line 45 of file qgsrulebasedlabeling.h.
|
explicit |
Constructs the labeling from given tree of rules (takes ownership)
Definition at line 422 of file qgsrulebasedlabeling.cpp.
|
override |
Definition at line 443 of file qgsrulebasedlabeling.cpp.
|
overridevirtual |
Accepts the specified symbology visitor, causing it to visit all symbols associated with the labeling.
Returns true
if the visitor should continue visiting other objects, or false
if visiting should be canceled.
Reimplemented from QgsAbstractVectorLayerLabeling.
Definition at line 508 of file qgsrulebasedlabeling.cpp.
|
overridevirtual |
Returns a new copy of the object.
Implements QgsAbstractVectorLayerLabeling.
Definition at line 427 of file qgsrulebasedlabeling.cpp.
|
static |
Create the instance from a DOM element with saved configuration.
Definition at line 458 of file qgsrulebasedlabeling.cpp.
|
overridevirtual |
Reimplemented from QgsAbstractVectorLayerLabeling.
Definition at line 487 of file qgsrulebasedlabeling.cpp.
|
overridevirtual |
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.
Implements QgsAbstractVectorLayerLabeling.
Definition at line 513 of file qgsrulebasedlabeling.cpp.
const QgsRuleBasedLabeling::Rule * QgsRuleBasedLabeling::rootRule | ( | ) |
Definition at line 447 of file qgsrulebasedlabeling.cpp.
const Rule* QgsRuleBasedLabeling::rootRule | ( | ) | const |
|
overridevirtual |
Returns labeling configuration as XML element.
Implements QgsAbstractVectorLayerLabeling.
Definition at line 475 of file qgsrulebasedlabeling.cpp.
|
overridevirtual |
Set pal settings for a specific provider (takes ownership).
settings | Pal layer settings |
providerId | The id of the provider |
Implements QgsAbstractVectorLayerLabeling.
Definition at line 518 of file qgsrulebasedlabeling.cpp.
|
overridevirtual |
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)
Implements QgsAbstractVectorLayerLabeling.
Definition at line 499 of file qgsrulebasedlabeling.cpp.
|
overridevirtual |
Gets list of sub-providers within the layer's labeling.
Reimplemented from QgsAbstractVectorLayerLabeling.
Definition at line 492 of file qgsrulebasedlabeling.cpp.
|
overridevirtual |
Writes the SE 1.1 TextSymbolizer element based on the current layer labeling settings.
Reimplemented from QgsAbstractVectorLayerLabeling.
Definition at line 528 of file qgsrulebasedlabeling.cpp.
|
overridevirtual |
Unique type string of the labeling configuration implementation.
Implements QgsAbstractVectorLayerLabeling.
Definition at line 470 of file qgsrulebasedlabeling.cpp.
|
protected |
Definition at line 390 of file qgsrulebasedlabeling.h.