QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgslayeritem.h
Go to the documentation of this file.
1/***************************************************************************
2 qgslayeritem.h
3 -------------------
4 begin : 2011-04-01
5 copyright : (C) 2011 Radim Blazek
6 email : radim dot blazek at gmail dot com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17#ifndef QGSLAYERITEM_H
18#define QGSLAYERITEM_H
19
20#include "qgis_sip.h"
21#include "qgis_core.h"
22#include "qgis.h"
23#include "qgsdataitem.h"
24#include "qgslayermetadata.h"
25
30class CORE_EXPORT QgsLayerItem : public QgsDataItem
31{
32 Q_OBJECT
33
34 public:
35
39 QgsLayerItem( QgsDataItem *parent, const QString &name, const QString &path, const QString &uri, Qgis::BrowserLayerType layerType, const QString &providerKey );
40
41#ifdef SIP_RUN
42 SIP_PYOBJECT __repr__();
43 % MethodCode
44 QString str = QStringLiteral( "<QgsLayerItem: \"%1\" %2>" ).arg( sipCpp->name(), sipCpp->path() );
45 sipRes = PyUnicode_FromString( str.toUtf8().constData() );
46 % End
47#endif
48
49 // --- reimplemented from QgsDataItem ---
50
51 bool equal( const QgsDataItem *other ) override;
52
53 bool hasDragEnabled() const override { return true; }
54
55 QgsMimeDataUtils::UriList mimeUris() const override;
56
57 // --- New virtual methods for layer item derived classes ---
58
62 Qgis::LayerType mapLayerType() const;
63
68 static Qgis::BrowserLayerType typeFromMapLayer( QgsMapLayer *layer );
69
71 QString uri() const { return mUri; }
72
74 QString providerKey() const { return mProviderKey; }
75
79 QStringList supportedCrs() const { return mSupportedCRS; }
80
84 QStringList supportedFormats() const { return mSupportFormats; }
85
89 virtual QString comments() const { return QString(); }
90
95 static QString layerTypeAsString( Qgis::BrowserLayerType layerType );
96
101 static QString iconName( Qgis::BrowserLayerType layerType );
102
109 Q_DECL_DEPRECATED virtual bool deleteLayer() SIP_DEPRECATED;
110
111 protected:
113 QString mUri;
115 Qgis::BrowserLayerType mLayerType;
117 QStringList mSupportedCRS;
119 QStringList mSupportFormats;
120
121 public:
122
127 static QIcon iconForWkbType( Qgis::WkbType type );
128
129 static QIcon iconPoint();
130 static QIcon iconLine();
131 static QIcon iconPolygon();
132 static QIcon iconTable();
133 static QIcon iconRaster();
134 static QIcon iconDefault();
136 static QIcon iconMesh();
138 static QIcon iconVectorTile();
140 static QIcon iconPointCloud();
142 virtual QString layerName() const { return name(); }
144
150 const QgsLayerMetadata &layerMetadata() const;
151
156 void setLayerMetadata( const QgsLayerMetadata &metadata );
157
158 private:
159
160 QgsLayerMetadata mLayerMetadata;
161
162};
163
164#endif // QGSLAYERITEM_H
165
166
The Qgis class provides global constants for use throughout the application.
Definition: qgis.h:54
BrowserLayerType
Browser item layer types.
Definition: qgis.h:736
LayerType
Types of layers that can be added to a map.
Definition: qgis.h:114
The QgsAbstractDatabaseProviderConnection class provides common functionality for DB based connection...
Base class for all items in the model.
Definition: qgsdataitem.h:46
virtual QgsAbstractDatabaseProviderConnection * databaseConnection() const
For data items that represent a DB connection or one of its children, this method returns a connectio...
QString name() const
Returns the name of the item (the displayed text for the item).
Definition: qgsdataitem.h:339
virtual QgsMimeDataUtils::UriList mimeUris() const
Returns mime URIs for the data item, most data providers will only return a single URI but some data ...
QString mProviderKey
Definition: qgsdataitem.h:442
virtual bool equal(const QgsDataItem *other)
Returns true if this item is equal to another item (by testing item type and path).
Item that represents a layer that can be opened with one of the providers.
Definition: qgslayeritem.h:31
QStringList supportedFormats() const
Returns the supported formats.
Definition: qgslayeritem.h:84
QString uri() const
Returns layer uri or empty string if layer cannot be created.
Definition: qgslayeritem.h:71
QStringList supportedCrs() const
Returns the supported CRS.
Definition: qgslayeritem.h:79
virtual QString comments() const
Returns comments of the layer.
Definition: qgslayeritem.h:89
QString providerKey() const
Returns provider key.
Definition: qgslayeritem.h:74
bool hasDragEnabled() const override
Returns true if the item may be dragged.
Definition: qgslayeritem.h:53
A structured metadata store for a map layer.
Base class for all map layer types.
Definition: qgsmaplayer.h:75
QList< QgsMimeDataUtils::Uri > UriList
#define str(x)
Definition: qgis.cpp:38
#define SIP_DEPRECATED
Definition: qgis_sip.h:106