QGIS API Documentation
4.3.0-Master (52aa6503bed)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
core
layertree
qgslayertreeregistrybridge.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgslayertreeregistrybridge.h
3
--------------------------------------
4
Date : May 2014
5
Copyright : (C) 2014 by Martin Dobias
6
Email : wonder dot sk at gmail dot com
7
***************************************************************************
8
* *
9
* This program is free software; you can redistribute it and/or modify *
10
* it under the terms of the GNU General Public License as published by *
11
* the Free Software Foundation; either version 2 of the License, or *
12
* (at your option) any later version. *
13
* *
14
***************************************************************************/
15
16
#ifndef QGSLAYERTREEREGISTRYBRIDGE_H
17
#define QGSLAYERTREEREGISTRYBRIDGE_H
18
19
#include "
qgis.h
"
20
#include "qgis_core.h"
21
#include "
qgis_sip.h
"
22
#include "
qgslayertreegroup.h
"
23
24
#include <QObject>
25
#include <QPointer>
26
#include <QStringList>
27
28
class
QgsLayerTreeNode
;
29
class
QgsMapLayer
;
30
class
QgsProject
;
31
32
45
class
CORE_EXPORT
QgsLayerTreeRegistryBridge
:
public
QObject
46
{
47
Q_OBJECT
48
public
:
54
struct
InsertionPoint
55
{
57
InsertionPoint
(
QgsLayerTreeGroup
*
group
,
int
position
)
58
:
group
(
group
)
59
,
position
(
position
)
60
{}
61
62
QgsLayerTreeGroup
*
group
;
63
int
position
= 0;
64
};
65
67
explicit
QgsLayerTreeRegistryBridge
(
QgsLayerTreeGroup
*root,
QgsProject
*project, QObject *parent
SIP_TRANSFERTHIS
=
nullptr
);
68
69
void
setEnabled
(
bool
enabled ) {
mEnabled
= enabled; }
70
bool
isEnabled
()
const
{
return
mEnabled
; }
71
72
void
setNewLayersVisible
(
bool
enabled ) {
mNewLayersVisible
= enabled; }
73
bool
newLayersVisible
()
const
{
return
mNewLayersVisible
; }
74
80
Q_DECL_DEPRECATED
void
setLayerInsertionPoint(
QgsLayerTreeGroup
*parentGroup,
int
index )
SIP_DEPRECATED
;
81
87
void
setLayerInsertionPoint(
const
InsertionPoint &insertionPoint );
88
93
InsertionPoint layerInsertionPoint()
const
;
94
99
void
setLayerInsertionMethod
(
Qgis::LayerTreeInsertionMethod
method ) {
mInsertionMethod
= method; }
100
105
Qgis::LayerTreeInsertionMethod
layerInsertionMethod
()
const
{
return
mInsertionMethod
; }
106
107
signals:
108
112
void
addedLayersToLayerTree
(
const
QList<QgsMapLayer *> &layers );
113
114
protected
slots:
115
void
layersAdded
(
const
QList<QgsMapLayer *> &layers );
116
void
layersWillBeRemoved
(
const
QStringList &layerIds );
117
118
void
groupWillRemoveChildren
(
QgsLayerTreeNode
*node,
int
indexFrom,
int
indexTo );
119
void
groupRemovedChildren
();
120
121
void
removeLayersFromRegistry
(
const
QStringList &layerIds );
122
123
protected
:
124
QgsLayerTreeGroup
*
mRoot
=
nullptr
;
125
QgsProject
*
mProject
=
nullptr
;
126
QStringList
mLayerIdsForRemoval
;
127
bool
mRegistryRemovingLayers
=
false
;
128
bool
mEnabled
=
true
;
129
bool
mNewLayersVisible
=
true
;
130
131
QPointer< QgsLayerTreeGroup >
mInsertionPointGroup
;
132
int
mInsertionPointPosition
= 0;
133
134
Qgis::LayerTreeInsertionMethod
mInsertionMethod
=
Qgis::LayerTreeInsertionMethod::AboveInsertionPoint
;
135
};
136
137
#endif
// QGSLAYERTREEREGISTRYBRIDGE_H
Qgis::LayerTreeInsertionMethod
LayerTreeInsertionMethod
Layer tree insertion methods.
Definition
qgis.h:5022
Qgis::LayerTreeInsertionMethod::AboveInsertionPoint
@ AboveInsertionPoint
Layers are added in the tree above the insertion point.
Definition
qgis.h:5023
QgsLayerTreeGroup
Layer tree group node serves as a container for layers and further groups.
Definition
qgslayertreegroup.h:45
QgsLayerTreeNode
Base class for nodes in a layer tree.
Definition
qgslayertreenode.h:81
QgsLayerTreeRegistryBridge::removeLayersFromRegistry
void removeLayersFromRegistry(const QStringList &layerIds)
Definition
qgslayertreeregistrybridge.cpp:200
QgsLayerTreeRegistryBridge::groupRemovedChildren
void groupRemovedChildren()
Definition
qgslayertreeregistrybridge.cpp:178
QgsLayerTreeRegistryBridge::mProject
QgsProject * mProject
Definition
qgslayertreeregistrybridge.h:125
QgsLayerTreeRegistryBridge::isEnabled
bool isEnabled() const
Definition
qgslayertreeregistrybridge.h:70
QgsLayerTreeRegistryBridge::layersWillBeRemoved
void layersWillBeRemoved(const QStringList &layerIds)
Definition
qgslayertreeregistrybridge.cpp:126
QgsLayerTreeRegistryBridge::newLayersVisible
bool newLayersVisible() const
Definition
qgslayertreeregistrybridge.h:73
QgsLayerTreeRegistryBridge::layersAdded
void layersAdded(const QList< QgsMapLayer * > &layers)
Definition
qgslayertreeregistrybridge.cpp:60
QgsLayerTreeRegistryBridge::mLayerIdsForRemoval
QStringList mLayerIdsForRemoval
Definition
qgslayertreeregistrybridge.h:126
QgsLayerTreeRegistryBridge::setNewLayersVisible
void setNewLayersVisible(bool enabled)
Definition
qgslayertreeregistrybridge.h:72
QgsLayerTreeRegistryBridge::mInsertionPointPosition
int mInsertionPointPosition
Definition
qgslayertreeregistrybridge.h:132
QgsLayerTreeRegistryBridge::addedLayersToLayerTree
void addedLayersToLayerTree(const QList< QgsMapLayer * > &layers)
Tell others we have just added layers to the tree (used in QGIS to auto-select first newly added laye...
QgsLayerTreeRegistryBridge::groupWillRemoveChildren
void groupWillRemoveChildren(QgsLayerTreeNode *node, int indexFrom, int indexTo)
Definition
qgslayertreeregistrybridge.cpp:165
QgsLayerTreeRegistryBridge::mNewLayersVisible
bool mNewLayersVisible
Definition
qgslayertreeregistrybridge.h:129
QgsLayerTreeRegistryBridge::mInsertionPointGroup
QPointer< QgsLayerTreeGroup > mInsertionPointGroup
Definition
qgslayertreeregistrybridge.h:131
QgsLayerTreeRegistryBridge::QgsLayerTreeRegistryBridge
QgsLayerTreeRegistryBridge(QgsLayerTreeGroup *root, QgsProject *project, QObject *parent=nullptr)
Create the instance that synchronizes given project with a layer tree root.
Definition
qgslayertreeregistrybridge.cpp:29
QgsLayerTreeRegistryBridge::mRoot
QgsLayerTreeGroup * mRoot
Definition
qgslayertreeregistrybridge.h:124
QgsLayerTreeRegistryBridge::layerInsertionMethod
Qgis::LayerTreeInsertionMethod layerInsertionMethod() const
Returns the insertion method used to add layers to the tree.
Definition
qgslayertreeregistrybridge.h:105
QgsLayerTreeRegistryBridge::mRegistryRemovingLayers
bool mRegistryRemovingLayers
Definition
qgslayertreeregistrybridge.h:127
QgsLayerTreeRegistryBridge::mEnabled
bool mEnabled
Definition
qgslayertreeregistrybridge.h:128
QgsLayerTreeRegistryBridge::mInsertionMethod
Qgis::LayerTreeInsertionMethod mInsertionMethod
Definition
qgslayertreeregistrybridge.h:134
QgsLayerTreeRegistryBridge::setEnabled
void setEnabled(bool enabled)
Definition
qgslayertreeregistrybridge.h:69
QgsLayerTreeRegistryBridge::setLayerInsertionMethod
void setLayerInsertionMethod(Qgis::LayerTreeInsertionMethod method)
Sets the insertion method used to add layers to the tree.
Definition
qgslayertreeregistrybridge.h:99
QgsMapLayer
Base class for all map layer types.
Definition
qgsmaplayer.h:83
QgsProject
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
Definition
qgsproject.h:114
qgis.h
qgis_sip.h
SIP_DEPRECATED
#define SIP_DEPRECATED
Definition
qgis_sip.h:113
SIP_TRANSFERTHIS
#define SIP_TRANSFERTHIS
Definition
qgis_sip.h:52
qgslayertreegroup.h
QgsLayerTreeRegistryBridge::InsertionPoint::group
QgsLayerTreeGroup * group
Definition
qgslayertreeregistrybridge.h:62
QgsLayerTreeRegistryBridge::InsertionPoint::InsertionPoint
InsertionPoint(QgsLayerTreeGroup *group, int position)
Constructs an insertion point as layer tree group with its corresponding position.
Definition
qgslayertreeregistrybridge.h:57
QgsLayerTreeRegistryBridge::InsertionPoint::position
int position
Definition
qgslayertreeregistrybridge.h:63
Generated on
for QGIS API Documentation by
1.17.0