File: qgslayertreeutils.sip.in

package info (click to toggle)
qgis 3.40.11%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,183,800 kB
  • sloc: cpp: 1,595,841; python: 372,637; xml: 23,474; sh: 3,761; perl: 3,664; ansic: 2,257; sql: 2,137; yacc: 1,068; lex: 577; javascript: 540; lisp: 411; makefile: 154
file content (178 lines) | stat: -rw-r--r-- 6,218 bytes parent folder | download | duplicates (14)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
/************************************************************************
 * This file has been generated automatically from                      *
 *                                                                      *
 * src/core/layertree/qgslayertreeutils.h                               *
 *                                                                      *
 * Do not edit manually ! Edit header and run scripts/sipify.py again   *
 ************************************************************************/





class QgsLayerTreeUtils
{
%Docstring(signature="appended")
Assorted functions for dealing with layer trees.
%End

%TypeHeaderCode
#include "qgslayertreeutils.h"
%End
  public:

    static bool readOldLegend( QgsLayerTreeGroup *root, const QDomElement &legendElem );
%Docstring
Try to load layer tree from \verbatim <legend> \endverbatim tag from
project files from QGIS 2.2 and below
%End
    static bool readOldLegendLayerOrder( const QDomElement &legendElem, bool &hasCustomOrder, QStringList &order );
%Docstring
Try to load custom layer order from \verbatim <legend> \endverbatim tag
from project files from QGIS 2.2 and below
%End
    static QDomElement writeOldLegend( QDomDocument &doc, QgsLayerTreeGroup *root, bool hasCustomOrder, const QList<QgsMapLayer *> &order );
%Docstring
Returns \verbatim <legend> \endverbatim tag used in QGIS 2.2 and below
%End

    static QString checkStateToXml( Qt::CheckState state );
%Docstring
Convert Qt.CheckState to QString
%End
    static Qt::CheckState checkStateFromXml( const QString &txt );
%Docstring
Convert QString to Qt.CheckState
%End

    static bool layersEditable( const QList<QgsLayerTreeLayer *> &layerNodes, bool ignoreLayersWhichCannotBeToggled = false );
%Docstring
Returns ``True`` if any of the specified layers is editable.

The ``ignoreLayersWhichCannotBeToggled`` argument can be used to control
whether layers which cannot have their edit states toggled by users
should be ignored or not (since QGIS 3.22).
%End

    static bool layersModified( const QList<QgsLayerTreeLayer *> &layerNodes );
%Docstring
Returns ``True`` if any of the layers is modified
%End

    static void removeInvalidLayers( QgsLayerTreeGroup *group );
%Docstring
Removes layer nodes that refer to invalid layers
%End

    static void storeOriginalLayersProperties( QgsLayerTreeGroup *group, const QDomDocument *doc );
%Docstring
Stores in a layer's originalXmlProperties the layer properties
information

.. versionadded:: 3.6
%End

    static void replaceChildrenOfEmbeddedGroups( QgsLayerTreeGroup *group );
%Docstring
Remove subtree of embedded groups and replaces it with a custom property
embedded-visible-layers
%End

    static void updateEmbeddedGroupsProjectPath( QgsLayerTreeGroup *group, const QgsProject *project );
%Docstring
Updates an embedded ``group`` from a ``project``.
%End

    static QStringList invisibleLayerList( QgsLayerTreeNode *node );
%Docstring
Gets invisible layers
%End

    static void setLegendFilterByExpression( QgsLayerTreeLayer &layer, const QString &expr, bool enabled = true );
%Docstring
Sets the expression filter of a legend layer
%End
    static QString legendFilterByExpression( const QgsLayerTreeLayer &layer, bool *enabled = 0 );
%Docstring
Returns the expression filter of a legend layer
%End
    static bool hasLegendFilterExpression( const QgsLayerTreeGroup &group );
%Docstring
Test if one of the layers in a group has an expression filter
%End

    static QgsLayerTreeLayer *insertLayerBelow( QgsLayerTreeGroup *group, const QgsMapLayer *refLayer, QgsMapLayer *layerToInsert );
%Docstring
Insert a :py:class:`QgsMapLayer` just below another one

:param group: the tree group where layers are (can be the root group)
:param refLayer: the reference layer
:param layerToInsert: the new layer to insert just below the reference
                      layer

:return: the new tree layer
%End

    static QSet<QgsMapLayer *> collectMapLayersRecursive( const QList<QgsLayerTreeNode *> &nodes );
%Docstring
Returns map layers from the given list of layer tree nodes. Also
recursively visits child nodes of groups.

.. versionadded:: 3.4
%End

    static int countMapLayerInTree( QgsLayerTreeNode *tree, QgsMapLayer *layer );
%Docstring
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.

.. versionadded:: 3.4
%End

    static QgsLayerTreeGroup *firstGroupWithoutCustomProperty( QgsLayerTreeGroup *group, const QString &property );
%Docstring
Returns the first parent which doesn't have the given custom property or
the group itself if it doesn't hold the property

:param group: the layer tree group
:param property: the property

.. versionadded:: 3.8
%End

    static QgsLayerTreeLayer *insertLayerAtOptimalPlacement( QgsLayerTreeGroup *group, QgsMapLayer *layer );
%Docstring
Inserts a ``layer`` within a given ``group`` at an optimal index
position by insuring a given layer type will always sit on top of or
below other types. From top to bottom, the stacking logic is as follow:

- vector points
- vector lines
- vector polygons
- point clouds
- meshes
- rasters
- base maps

A base map is defined as a non-gdal provider raster layer (e.g. XYZ
raster layer, vector tile layer, etc.)

.. versionadded:: 3.28
%End
};

/************************************************************************
 * This file has been generated automatically from                      *
 *                                                                      *
 * src/core/layertree/qgslayertreeutils.h                               *
 *                                                                      *
 * Do not edit manually ! Edit header and run scripts/sipify.py again   *
 ************************************************************************/