QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
Public Member Functions | List of all members
QgsSymbolLayerId Class Reference

We may need stable references to symbol layers, when pointers to symbol layers is not usable (when a symbol or a feature renderer is cloned for example). More...

#include <qgssymbollayerreference.h>

Public Member Functions

 QgsSymbolLayerId ()
 
 QgsSymbolLayerId (const QgsSymbolLayerId &other)=default
 Default copy constructor. More...
 
 QgsSymbolLayerId (const QString &key, const QVector< int > &indexPath)
 QgsSymbolLayerId constructor with a symbol key and an index path. More...
 
 QgsSymbolLayerId (const QString &key, int index)
 QgsSymbolLayerId constructor with a symbol key and a unique symbol layer index. More...
 
bool operator< (const QgsSymbolLayerId &other) const
 Comparison operator, for storage in a QSet or QMap. More...
 
QgsSymbolLayerIdoperator= (const QgsSymbolLayerId &other)=default
 Default assignment operator. More...
 
bool operator== (const QgsSymbolLayerId &other) const
 Equality operator. More...
 
QString symbolKey () const
 Returns the key associated to the symbol. More...
 
QVector< int > symbolLayerIndexPath () const
 Returns the symbol layer index path inside the symbol. More...
 

Detailed Description

We may need stable references to symbol layers, when pointers to symbol layers is not usable (when a symbol or a feature renderer is cloned for example).

A symbol layer identifier consists of:

For a symbol in a QgsSingleSymbolRenderer that has two symbol layers, it will give:

For a QgsRuleBasedRenderer each rule key is the symbol key.

For a symbol with a symbol layer that has a sub symbol (say a QgsArrowSymbolLayer), path to symbol layers of the sub symbol are given by a list of indexes:

Since
QGIS 3.12
Deprecated:
since QGIS 3.30 Replaced by QUuid to identify symbol layers

Definition at line 57 of file qgssymbollayerreference.h.

Constructor & Destructor Documentation

◆ QgsSymbolLayerId() [1/4]

QgsSymbolLayerId::QgsSymbolLayerId ( )
inline

Definition at line 60 of file qgssymbollayerreference.h.

◆ QgsSymbolLayerId() [2/4]

QgsSymbolLayerId::QgsSymbolLayerId ( const QString &  key,
int  index 
)
inline

QgsSymbolLayerId constructor with a symbol key and a unique symbol layer index.

Definition at line 65 of file qgssymbollayerreference.h.

◆ QgsSymbolLayerId() [3/4]

QgsSymbolLayerId::QgsSymbolLayerId ( const QString &  key,
const QVector< int > &  indexPath 
)
inline

QgsSymbolLayerId constructor with a symbol key and an index path.

Definition at line 72 of file qgssymbollayerreference.h.

◆ QgsSymbolLayerId() [4/4]

QgsSymbolLayerId::QgsSymbolLayerId ( const QgsSymbolLayerId other)
default

Default copy constructor.

Member Function Documentation

◆ operator<()

bool QgsSymbolLayerId::operator< ( const QgsSymbolLayerId other) const
inline

Comparison operator, for storage in a QSet or QMap.

Definition at line 101 of file qgssymbollayerreference.h.

◆ operator=()

QgsSymbolLayerId & QgsSymbolLayerId::operator= ( const QgsSymbolLayerId other)
default

Default assignment operator.

◆ operator==()

bool QgsSymbolLayerId::operator== ( const QgsSymbolLayerId other) const
inline

Equality operator.

Definition at line 95 of file qgssymbollayerreference.h.

◆ symbolKey()

QString QgsSymbolLayerId::symbolKey ( ) const
inline

Returns the key associated to the symbol.

Definition at line 85 of file qgssymbollayerreference.h.

◆ symbolLayerIndexPath()

QVector< int > QgsSymbolLayerId::symbolLayerIndexPath ( ) const
inline

Returns the symbol layer index path inside the symbol.

Definition at line 90 of file qgssymbollayerreference.h.


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