QGIS API Documentation
3.16.0-Hannover (43b64b13f3)
|
Assorted functions for dealing with layer trees. More...
#include <qgslayertreeutils.h>
Static Public Member Functions | |
static Qt::CheckState | checkStateFromXml (const QString &txt) |
Convert QString to Qt::CheckState. More... | |
static QString | checkStateToXml (Qt::CheckState state) |
Convert Qt::CheckState to QString. More... | |
static QSet< QgsMapLayer * > | collectMapLayersRecursive (const QList< QgsLayerTreeNode * > &nodes) |
Returns map layers from the given list of layer tree nodes. More... | |
static int | countMapLayerInTree (QgsLayerTreeNode *tree, QgsMapLayer *layer) |
Returns how many occurrences of a map layer are there in a layer tree. More... | |
static QgsLayerTreeGroup * | firstGroupWithoutCustomProperty (QgsLayerTreeGroup *group, const QString &property) |
Returns the first parent which doesn't have the given custom property or the group itself if it doesn't hold the property. More... | |
static bool | hasLegendFilterExpression (const QgsLayerTreeGroup &group) |
Test if one of the layers in a group has an expression filter. More... | |
static QgsLayerTreeLayer * | insertLayerBelow (QgsLayerTreeGroup *group, const QgsMapLayer *refLayer, QgsMapLayer *layerToInsert) |
Insert a QgsMapLayer just below another one. More... | |
static QStringList | invisibleLayerList (QgsLayerTreeNode *node) |
Gets invisible layers. More... | |
static bool | layersEditable (const QList< QgsLayerTreeLayer * > &layerNodes) |
Returns true if any of the layers is editable. More... | |
static bool | layersModified (const QList< QgsLayerTreeLayer * > &layerNodes) |
Returns true if any of the layers is modified. More... | |
static QString | legendFilterByExpression (const QgsLayerTreeLayer &layer, bool *enabled=nullptr) |
Returns the expression filter of a legend layer. More... | |
static bool | readOldLegend (QgsLayerTreeGroup *root, const QDomElement &legendElem) |
Try to load layer tree from. More... | |
static bool | readOldLegendLayerOrder (const QDomElement &legendElem, bool &hasCustomOrder, QStringList &order) |
Try to load custom layer order from. More... | |
static void | removeInvalidLayers (QgsLayerTreeGroup *group) |
Removes layer nodes that refer to invalid layers. More... | |
static void | replaceChildrenOfEmbeddedGroups (QgsLayerTreeGroup *group) |
Remove subtree of embedded groups and replaces it with a custom property embedded-visible-layers. More... | |
static void | setLegendFilterByExpression (QgsLayerTreeLayer &layer, const QString &expr, bool enabled=true) |
Sets the expression filter of a legend layer. More... | |
static void | storeOriginalLayersProperties (QgsLayerTreeGroup *group, const QDomDocument *doc) |
Stores in a layer's originalXmlProperties the layer properties information. More... | |
static void | updateEmbeddedGroupsProjectPath (QgsLayerTreeGroup *group, const QgsProject *project) |
Updates an embedded group from a project. More... | |
static QDomElement | writeOldLegend (QDomDocument &doc, QgsLayerTreeGroup *root, bool hasCustomOrder, const QList< QgsMapLayer * > &order) |
Returns. More... | |
Assorted functions for dealing with layer trees.
Definition at line 41 of file qgslayertreeutils.h.
|
static |
Convert QString to Qt::CheckState.
Definition at line 197 of file qgslayertreeutils.cpp.
|
static |
Convert Qt::CheckState to QString.
Definition at line 183 of file qgslayertreeutils.cpp.
|
static |
Returns map layers from the given list of layer tree nodes.
Also recursively visits child nodes of groups.
Definition at line 497 of file qgslayertreeutils.cpp.
|
static |
Returns how many occurrences of a map layer are there in a layer tree.
In normal situations there is at most one occurrence, but sometimes there may be temporarily more: for example, during drag&drop, upon drop a new layer node is created while the original dragged node is still in the tree, resulting in two occurrences.
This is useful when deciding whether to start or stop listening to a signal of a map layer within a layer tree and only connecting/disconnecting when there is only one occurrence of that layer.
Definition at line 504 of file qgslayertreeutils.cpp.
|
static |
Returns the first parent which doesn't have the given custom property or the group itself if it doesn't hold the property.
group | the layer tree group |
property | the property |
Definition at line 520 of file qgslayertreeutils.cpp.
|
static |
Test if one of the layers in a group has an expression filter.
Definition at line 443 of file qgslayertreeutils.cpp.
|
static |
Insert a QgsMapLayer just below another one.
group | the tree group where layers are (can be the root group) |
refLayer | the reference layer |
layerToInsert | the new layer to insert just below the reference layer |
Definition at line 458 of file qgslayertreeutils.cpp.
|
static |
Gets invisible layers.
Definition at line 363 of file qgslayertreeutils.cpp.
|
static |
Returns true
if any of the layers is editable.
Definition at line 265 of file qgslayertreeutils.cpp.
|
static |
Returns true
if any of the layers is modified.
Definition at line 280 of file qgslayertreeutils.cpp.
|
static |
Returns the expression filter of a legend layer.
Definition at line 435 of file qgslayertreeutils.cpp.
|
static |
Try to load layer tree from.
<legend>
tag from project files from QGIS 2.2 and below
Definition at line 28 of file qgslayertreeutils.cpp.
|
static |
Try to load custom layer order from.
<legend>
tag from project files from QGIS 2.2 and below
Definition at line 80 of file qgslayertreeutils.cpp.
|
static |
Removes layer nodes that refer to invalid layers.
Definition at line 295 of file qgslayertreeutils.cpp.
|
static |
Remove subtree of embedded groups and replaces it with a custom property embedded-visible-layers.
Definition at line 389 of file qgslayertreeutils.cpp.
|
static |
Sets the expression filter of a legend layer.
Definition at line 429 of file qgslayertreeutils.cpp.
|
static |
Stores in a layer's originalXmlProperties the layer properties information.
Definition at line 315 of file qgslayertreeutils.cpp.
|
static |
Updates an embedded group from a project.
Definition at line 410 of file qgslayertreeutils.cpp.
|
static |
Returns.
<legend>
tag used in QGIS 2.2 and below
Definition at line 172 of file qgslayertreeutils.cpp.