QGIS API Documentation 3.99.0-Master (d270888f95f)
Loading...
Searching...
No Matches
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.h"
21#include "qgis_core.h"
22#include "qgis_sip.h"
23#include "qgsdataitem.h"
24#include "qgslayermetadata.h"
25
26#include <QString>
27
28using namespace Qt::StringLiterals;
29
34class CORE_EXPORT QgsLayerItem : public QgsDataItem
35{
36 Q_OBJECT
37
38 public:
39
43 QgsLayerItem( QgsDataItem *parent, const QString &name, const QString &path, const QString &uri, Qgis::BrowserLayerType layerType, const QString &providerKey );
44
45#ifdef SIP_RUN
46 SIP_PYOBJECT __repr__();
47 % MethodCode
48 QString str = u"<QgsLayerItem: \"%1\" %2>"_s.arg( sipCpp->name(), sipCpp->path() );
49 sipRes = PyUnicode_FromString( str.toUtf8().constData() );
50 % End
51#endif
52
53 // --- reimplemented from QgsDataItem ---
54
55 bool equal( const QgsDataItem *other ) override;
56
57 bool hasDragEnabled() const override { return true; }
58
59 QgsMimeDataUtils::UriList mimeUris() const override;
60
61 // --- New virtual methods for layer item derived classes ---
62
66 Qgis::LayerType mapLayerType() const;
67
72 static Qgis::BrowserLayerType typeFromMapLayer( QgsMapLayer *layer );
73
75 QString uri() const { return mUri; }
76
80 QStringList supportedCrs() const { return mSupportedCRS; }
81
85 QStringList supportedFormats() const { return mSupportFormats; }
86
90 virtual QString comments() const { return QString(); }
91
96 static QString layerTypeAsString( Qgis::BrowserLayerType layerType );
97
102 static QString iconName( Qgis::BrowserLayerType layerType );
103
110 Q_DECL_DEPRECATED virtual bool deleteLayer() SIP_DEPRECATED;
111
112 protected:
114 QString mUri;
116 Qgis::BrowserLayerType mLayerType;
118 QStringList mSupportedCRS;
120 QStringList mSupportFormats;
121
122 public:
123
128 static QIcon iconForWkbType( Qgis::WkbType type );
129
130 static QIcon iconPoint();
131 static QIcon iconLine();
132 static QIcon iconPolygon();
133 static QIcon iconTable();
134 static QIcon iconRaster();
135 static QIcon iconDefault();
137 static QIcon iconMesh();
139 static QIcon iconVectorTile();
141 static QIcon iconPointCloud();
143 virtual QString layerName() const { return name(); }
145
151 const QgsLayerMetadata &layerMetadata() const;
152
157 void setLayerMetadata( const QgsLayerMetadata &metadata );
158
159 private:
160
161 QgsLayerMetadata mLayerMetadata;
162
163};
164
165#endif // QGSLAYERITEM_H
166
167
Provides global constants and enumerations for use throughout the application.
Definition qgis.h:59
BrowserLayerType
Browser item layer types.
Definition qgis.h:1020
LayerType
Types of layers that can be added to a map.
Definition qgis.h:193
Provides common functionality for database based connections.
virtual QgsAbstractDatabaseProviderConnection * databaseConnection() const
For data items that represent a DB connection or one of its children, this method returns a connectio...
Qgis::BrowserItemType type() const
QgsDataItem(Qgis::BrowserItemType type, QgsDataItem *parent, const QString &name, const QString &path, const QString &providerKey=QString())
Constructor for QgsDataItem, with the specified parent item.
QString name() const
Returns the name of the item (the displayed text for the item).
QString path() const
QgsDataItem * parent() const
Gets item parent.
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 providerKey() const
Returns the provider key that created this item (e.g.
virtual bool equal(const QgsDataItem *other)
Returns true if this item is equal to another item (by testing item type and path).
QStringList supportedFormats() const
Returns the supported formats.
static QIcon iconPoint()
QString uri() const
Returns layer uri or empty string if layer cannot be created.
QStringList mSupportedCRS
The list of supported CRS.
static QIcon iconLine()
QString mUri
The URI.
QStringList supportedCrs() const
Returns the supported CRS.
static QIcon iconTable()
static QIcon iconDefault()
virtual QString comments() const
Returns comments of the layer.
static QIcon iconRaster()
static QIcon iconMesh()
Returns icon for mesh layer type.
QgsLayerItem(QgsDataItem *parent, const QString &name, const QString &path, const QString &uri, Qgis::BrowserLayerType layerType, const QString &providerKey)
Constructor for QgsLayerItem.
Qgis::BrowserLayerType mLayerType
The layer type.
QStringList mSupportFormats
The list of supported formats.
static QIcon iconForWkbType(Qgis::WkbType type)
Returns the icon for a vector layer whose geometry type is provided.
bool hasDragEnabled() const override
Returns true if the item may be dragged.
static QIcon iconPolygon()
static QIcon iconPointCloud()
Returns icon for point cloud layer.
static QIcon iconVectorTile()
Returns icon for vector tile layer.
virtual QString layerName() const
Returns the layer name.
A structured metadata store for a map layer.
Base class for all map layer types.
Definition qgsmaplayer.h:83
QList< QgsMimeDataUtils::Uri > UriList
#define SIP_DEPRECATED
Definition qgis_sip.h:114