16 #ifndef QGSLAYERTREEGROUP_H
17 #define QGSLAYERTREEGROUP_H
19 #include "qgis_core.h"
49 SIP_PYOBJECT __repr__();
51 QString
str = QStringLiteral(
"<QgsLayerTreeGroup: %1>" ).arg( sipCpp->name() );
52 sipRes = PyUnicode_FromString(
str.toUtf8().constData() );
59 QString
name()
const override;
64 void setName(
const QString &n )
override;
89 void insertChildNodes(
int index,
const QList<QgsLayerTreeNode *> &nodes
SIP_TRANSFER );
114 void removeChildren(
int from,
int count );
119 void removeChildrenGroupWithoutLayers();
124 void removeAllChildren();
140 QList<QgsLayerTreeLayer *> findLayers()
const;
145 QStringList findLayerIds()
const;
155 QList<QgsLayerTreeGroup *> findGroups(
bool recursive =
false )
const;
184 QString
dump()
const override;
206 bool isMutuallyExclusive()
const;
214 void setIsMutuallyExclusive(
bool enabled,
int initialChildIndex = -1 );
225 void updateChildVisibilityMutuallyExclusive();
229 bool mChangingChildVisibility =
false;
232 bool mMutuallyExclusive =
false;
238 int mMutuallyExclusiveChildIndex = -1;
Layer tree group node serves as a container for layers and further groups.
Layer tree node points to a map layer.
This class is a base class for nodes in a layer tree.
virtual void setName(const QString &name)=0
Set name of the node.
virtual void makeOrphan()
Sets parent to nullptr and disconnects all external and forwarded signals.
virtual QString dump() const =0
Returns string with layer tree structure. For debug purposes only.
virtual void writeXml(QDomElement &parentElement, const QgsReadWriteContext &context)=0
Write layer tree to XML.
static QgsLayerTreeNode * readXml(QDomElement &element, const QgsReadWriteContext &context)
Read layer tree from XML.
virtual QgsLayerTreeNode * clone() const =0
Create a copy of the node. Returns new instance.
virtual QString name() const =0
Returns name of the node.
virtual void setItemVisibilityCheckedRecursive(bool checked)
Check or uncheck a node and all its children (taking into account exclusion rules)
virtual void resolveReferences(const QgsProject *project, bool looseMatching=false)=0
Turn textual references to layers into map layer object from project.
Base class for all map layer types.
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
The class is used as a container of context for various read/write operations on other objects.