66#define QGSCLIPBOARD_MAPLAYER_MIME "application/qgis.maplayer"
78 Q_PROPERTY( QString
id READ
id WRITE setId NOTIFY idChanged )
79 Q_PROPERTY( QString name READ name WRITE setName NOTIFY nameChanged )
80 Q_PROPERTY(
int autoRefreshInterval READ autoRefreshInterval WRITE setAutoRefreshInterval NOTIFY autoRefreshIntervalChanged )
81 Q_PROPERTY(
QgsLayerMetadata metadata READ metadata WRITE setMetadata NOTIFY metadataChanged )
85 Q_PROPERTY(
Qgis::LayerType type READ type CONSTANT )
86 Q_PROPERTY(
bool isValid READ isValid NOTIFY isValidChanged )
87 Q_PROPERTY(
double opacity READ opacity WRITE setOpacity NOTIFY opacityChanged )
88 Q_PROPERTY( QString mapTipTemplate READ mapTipTemplate WRITE setMapTipTemplate NOTIFY mapTipTemplateChanged )
89 Q_PROPERTY(
bool mapTipsEnabled READ mapTipsEnabled WRITE setMapTipsEnabled NOTIFY mapTipsEnabledChanged )
93 QgsMapLayer *layer = qobject_cast<QgsMapLayer *>( sipCpp );
99 switch ( layer->type() )
102 sipType = sipType_QgsVectorLayer;
105 sipType = sipType_QgsRasterLayer;
108 sipType = sipType_QgsPluginLayer;
111 sipType = sipType_QgsMeshLayer;
114 sipType = sipType_QgsVectorTileLayer;
117 sipType = sipType_QgsAnnotationLayer;
120 sipType = sipType_QgsPointCloudLayer;
123 sipType = sipType_QgsGroupLayer;
126 sipType = sipType_QgsTiledSceneLayer;
154 Identifiable = 1 << 0,
169 LayerConfiguration = 1 << 0,
171 Symbology3D = 1 << 2,
178 AttributeTable = 1 << 9,
180 CustomProperties = 1 << 11,
181 GeometryOptions = 1 << 12,
187 AllStyleCategories = LayerConfiguration | Symbology | Symbology3D | Labeling | Fields | Forms | Actions |
188 MapTips | Diagrams | AttributeTable | Rendering | CustomProperties | GeometryOptions | Relations | Temporal | Legend | Elevation | Notes,
190 Q_ENUM( StyleCategory )
200 QgsMapLayer(
Qgis::LayerType type =
Qgis::LayerType::Vector, const QString &name = QString(), const QString &source = QString() );
217 Qgis::LayerType type() const;
252 virtual
Qgis::MapLayerProperties properties() const;
258 static QString extensionPropertyType(
PropertyType type );
283 bool setId( const QString &
id );
289 void setName( const QString &name );
295 QString name() const;
313 Q_DECL_DEPRECATED
void setShortName( const QString &shortName )
SIP_DEPRECATED;
327 Q_DECL_DEPRECATED
void setTitle( const QString &title )
SIP_DEPRECATED;
341 Q_DECL_DEPRECATED
void setAbstract( const QString &abstract )
SIP_DEPRECATED;
355 Q_DECL_DEPRECATED
void setKeywordList( const QString &keywords )
SIP_DEPRECATED;
369 Q_DECL_DEPRECATED
void setDataUrl( const QString &dataUrl )
SIP_DEPRECATED;
383 Q_DECL_DEPRECATED
void setDataUrlFormat( const QString &dataUrlFormat )
SIP_DEPRECATED;
397 Q_DECL_DEPRECATED
void setAttribution( const QString &attrib )
SIP_DEPRECATED;
411 Q_DECL_DEPRECATED
void setAttributionUrl( const QString &attribUrl )
SIP_DEPRECATED;
442 Q_DECL_DEPRECATED
void setMetadataUrl(
const QString &metaUrl )
SIP_DEPRECATED;
463 Q_DECL_DEPRECATED
void setMetadataUrlType( const QString &metaUrlType )
SIP_DEPRECATED;
484 Q_DECL_DEPRECATED
void setMetadataUrlFormat( const QString &metaUrlFormat )
SIP_DEPRECATED;
495 Q_DECL_DEPRECATED QString metadataUrlFormat() const
SIP_DEPRECATED;
502 void setBlendMode( QPainter::CompositionMode blendMode );
508 QPainter::CompositionMode blendMode() const;
518 virtual
void setOpacity(
double opacity );
528 virtual
double opacity() const;
531 bool readOnly()
const {
return isReadOnly(); }
560 QgsRectangle wgs84Extent(
bool forceRecalculate =
false )
const;
567 bool isValid()
const;
576 QString publicSource(
bool hidePassword =
false )
const;
583 QString source()
const;
589 virtual QStringList subLayers()
const;
595 virtual void setLayerOrder(
const QStringList &layers );
602 virtual void setSubLayerVisibility(
const QString &name,
bool visible );
610 virtual bool supportsEditing()
const;
613 virtual bool isEditable()
const;
620 virtual bool isModified()
const;
625 virtual bool isSpatial()
const;
636 virtual bool isTemporary()
const;
644 FlagDontResolveLayers = 1 << 0,
645 FlagTrustLayerMetadata = 1 << 1,
646 FlagReadExtentFromXml = 1 << 2,
647 FlagForceReadOnly = 1 << 3,
689 bool writeLayerXml( QDomElement &layerElement, QDomDocument &document,
const QgsReadWriteContext &context )
const;
694 virtual void resolveReferences(
QgsProject *project );
700 Q_INVOKABLE QStringList customPropertyKeys()
const;
707 Q_INVOKABLE
void setCustomProperty(
const QString &key,
const QVariant &value );
713 Q_INVOKABLE QVariant customProperty(
const QString &value,
const QVariant &defaultValue = QVariant() )
const;
736 virtual int listStylesInDatabase( QStringList &ids
SIP_OUT, QStringList &names
SIP_OUT,
742 virtual QString getStyleFromDatabase(
const QString &styleId, QString &msgError
SIP_OUT );
750 virtual bool deleteStyleFromDatabase(
const QString &styleId, QString &msgError
SIP_OUT );
768 virtual void saveStyleToDatabase(
const QString &name,
const QString &description,
769 bool useAsDefault,
const QString &uiFileContent,
785 virtual QString loadNamedStyle(
const QString &theURI,
bool &resultFlag
SIP_OUT,
bool loadFromLocalDb,
804 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
805 Q_ASSERT( metaEnum.isValid() );
806 if ( !metaEnum.isValid() )
808 QgsDebugError( QStringLiteral(
"Invalid metaenum. Enum probably misses Q_ENUM or Q_FLAG declaration." ) );
814 if ( metaEnum.isValid() )
817 QByteArray ba = customProperty( key, metaEnum.valueToKey(
static_cast<int>( defaultValue ) ) ).toString().toUtf8();
818 const char *vs = ba.data();
819 v =
static_cast<T
>( metaEnum.keyToValue( vs, &ok ) );
827 v =
static_cast<T
>( customProperty( key,
static_cast<int>( defaultValue ) ).toInt( &ok ) );
828 if ( metaEnum.isValid() )
830 if ( !ok || !metaEnum.valueToKey(
static_cast<int>( v ) ) )
838 setCustomEnumProperty( key, v );
856 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
857 Q_ASSERT( metaEnum.isValid() );
858 if ( metaEnum.isValid() )
860 setCustomProperty( key, metaEnum.valueToKey(
static_cast<int>( value ) ) );
864 QgsDebugError( QStringLiteral(
"Invalid metaenum. Enum probably misses Q_ENUM or Q_FLAG declaration." ) );
882 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
883 Q_ASSERT( metaEnum.isValid() );
884 if ( !metaEnum.isValid() )
886 QgsDebugError( QStringLiteral(
"Invalid metaenum. Enum probably misses Q_ENUM or Q_FLAG declaration." ) );
892 if ( metaEnum.isValid() )
895 QByteArray ba = customProperty( key, metaEnum.valueToKeys( defaultValue ) ).toString().toUtf8();
896 const char *vs = ba.data();
897 v =
static_cast<T
>( metaEnum.keysToValue( vs, &ok ) );
902 const int intValue = customProperty( key,
static_cast<int>( defaultValue ) ).toInt( &ok );
903 if ( metaEnum.isValid() )
909 const QByteArray keys = metaEnum.valueToKeys( intValue );
910 const int intValueCheck = metaEnum.keysToValue( keys );
911 if ( intValue != intValueCheck )
922 setCustomFlagProperty( key, v );
946 const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
947 Q_ASSERT( metaEnum.isValid() );
948 if ( metaEnum.isValid() )
950 setCustomProperty( key, metaEnum.valueToKeys( value ) );
954 QgsDebugError( QStringLiteral(
"Invalid metaenum. Enum probably misses Q_ENUM or Q_FLAG declaration." ) );
964 void removeCustomProperty(
const QString &key );
1071 static QString formatLayerName(
const QString &name );
1079 virtual QString metadataUri()
const;
1086 void exportNamedMetadata( QDomDocument &doc, QString &errorMsg )
const;
1096 virtual QString saveDefaultMetadata(
bool &resultFlag
SIP_OUT );
1111 QString saveNamedMetadata(
const QString &uri,
bool &resultFlag );
1129 virtual QString loadNamedMetadata(
const QString &uri,
bool &resultFlag
SIP_OUT );
1142 virtual QString loadDefaultMetadata(
bool &resultFlag );
1151 bool loadNamedMetadataFromDatabase(
const QString &db,
const QString &uri, QString &qmd );
1159 bool importNamedMetadata( QDomDocument &document, QString &errorMessage );
1169 virtual QString styleURI()
const;
1183 virtual QString loadDefaultStyle(
bool &resultFlag
SIP_OUT );
1213 virtual bool loadNamedStyleFromDatabase(
const QString &db,
const QString &uri, QString &qml
SIP_OUT );
1223 virtual bool importNamedStyle( QDomDocument &doc, QString &errorMsg
SIP_OUT,
1245 virtual void exportSldStyle( QDomDocument &doc, QString &errorMsg )
const;
1255 virtual void exportSldStyleV2( QDomDocument &doc, QString &errorMsg,
const QgsSldExportContext &exportContext )
const;
1268 virtual QString saveDefaultStyle(
bool &resultFlag
SIP_OUT, StyleCategories categories );
1298 virtual QString saveNamedStyle(
const QString &uri,
bool &resultFlag
SIP_OUT, StyleCategories categories = AllStyleCategories );
1309 virtual QString saveSldStyle(
const QString &uri,
bool &resultFlag )
const;
1331 virtual QString loadSldStyle(
const QString &uri,
bool &resultFlag );
1333 virtual bool readSld(
const QDomNode &node, QString &errorMessage )
1334 { Q_UNUSED( node ) errorMessage = QStringLiteral(
"Layer type %1 not supported" ).arg(
static_cast<int>( type() ) );
return false; }
1358 virtual bool readStyle(
const QDomNode &node, QString &errorMessage,
1385 virtual bool writeStyle( QDomNode &node, QDomDocument &doc, QString &errorMessage,
const QgsReadWriteContext &context,
1418 void setDataSource(
const QString &dataSource,
const QString &baseName,
const QString &provider,
bool loadDefaultStyleFlag =
false );
1449 void setDataSource(
const QString &dataSource,
const QString &baseName,
const QString &provider,
const QgsDataProvider::ProviderOptions &options,
bool loadDefaultStyleFlag =
false );
1485 QString providerType()
const;
1488 QUndoStack *undoStack();
1493 QUndoStack *undoStackStyles();
1549 bool isInScaleRange(
double scale )
const;
1561 double minimumScale()
const;
1573 double maximumScale()
const;
1583 bool hasScaleBasedVisibility()
const;
1591 Q_DECL_DEPRECATED
bool hasAutoRefreshEnabled() const
SIP_DEPRECATED;
1599 Qgis::AutoRefreshMode autoRefreshMode() const;
1607 int autoRefreshInterval() const;
1619 void setAutoRefreshInterval(
int interval );
1627 Q_DECL_DEPRECATED
void setAutoRefreshEnabled(
bool enabled )
SIP_DEPRECATED;
1635 void setAutoRefreshMode(
Qgis::AutoRefreshMode mode );
1654 virtual QString htmlMetadata() const;
1657 virtual QDateTime timestamp() const;
1671 QString refreshOnNotifyMessage()
const {
return mRefreshOnNofifyMessage; }
1687 QString originalXmlProperties()
const;
1696 void setOriginalXmlProperties(
const QString &originalXmlProperties );
1702 static QString generateId(
const QString &layerName );
1756 virtual bool hasMapTips()
const;
1765 QString mapTipTemplate()
const;
1774 void setMapTipTemplate(
const QString &mapTipTemplate );
1782 void setMapTipsEnabled(
bool enabled );
1788 bool mapTipsEnabled()
const;
1810 void setMinimumScale(
double scale );
1821 void setMaximumScale(
double scale );
1830 void setScaleBasedVisibility(
bool enabled );
1840 void triggerRepaint(
bool deferredUpdate =
false );
1848 void trigger3DUpdate();
1853 void emitStyleChanged();
1862 virtual bool setDependencies(
const QSet<QgsMapLayerDependency> &layers );
1868 void setRefreshOnNotifyEnabled(
bool enabled );
1886 SIP_PYOBJECT __repr__();
1888 QString
str = QStringLiteral(
"<QgsMapLayer: '%1' (%2)>" ).arg( sipCpp->name(), sipCpp->dataProvider() ? sipCpp->dataProvider()->name() : QStringLiteral(
"Invalid" ) );
1889 sipRes = PyUnicode_FromString(
str.toUtf8().constData() );
2133 void onNotified(
const QString &message );
2167 virtual void setExtent3D(
const QgsBox3D &box );
2170 void setValid(
bool valid );
2182 virtual bool writeXml( QDomNode &layer_node, QDomDocument &document,
const QgsReadWriteContext &context )
const;
2195 virtual QString encodedSource(
const QString &source,
const QgsReadWriteContext &context )
const;
2209 virtual QString decodedSource(
const QString &source,
const QString &dataProvider,
const QgsReadWriteContext &context )
const;
2216 void readCustomProperties(
const QDomNode &layerNode,
const QString &keyStartsWith = QString() );
2219 void writeCustomProperties( QDomNode &layerNode, QDomDocument &doc )
const;
2222 void readStyleManager(
const QDomNode &layerNode );
2224 void writeStyleManager( QDomNode &layerNode, QDomDocument &doc )
const;
2229 void writeCommonStyle( QDomElement &layerElement, QDomDocument &document,
2236 void readCommonStyle(
const QDomElement &layerElement,
const QgsReadWriteContext &context,
2240 void setProviderType(
const QString &providerType );
2245 void connectNotify(
const char *signal )
override;
2260 void invalidateWgs84Extent();
2263 bool mValid =
false;
2288 bool mIsRefreshOnNofifyEnabled =
false;
2304 bool mShouldValidateCrs =
true;
2311 double mLayerOpacity = 1.0;
2318 int mBlockStyleChangedSignal = 0;
2330 QString crsHtmlMetadata()
const;
2343 QString generalHtmlMetadata()
const;
2365 bool loadNamedPropertyFromDatabase(
const QString &db,
const QString &uri, QString &xml,
QgsMapLayer::PropertyType type );
2369 void updateExtent(
const QgsBox3D &extent )
const;
2371 bool rebuildCrs3D( QString *error =
nullptr );
2377 virtual bool isReadOnly()
const;
2396 QPainter::CompositionMode mBlendMode = QPainter::CompositionMode_SourceOver;
2404 double mMinScale = 0;
2406 double mMaxScale = 100000000;
2408 bool mScaleBasedVisibility =
false;
2413 std::unique_ptr< QgsMapLayerServerProperties > mServerProperties;
2416 QUndoStack *mUndoStack =
nullptr;
2418 QUndoStack *mUndoStackStyles =
nullptr;
2432 QTimer *mRefreshTimer =
nullptr;
2453 QString mOriginalXmlProperties;
2456 bool mRepaintRequestedFired =
false;
2459 QString mLegendPlaceholderImage;
2462 QString mMapTipTemplate;
2465 bool mMapTipsEnabled =
true;
2468 friend class TestQgsProject;
2469 friend class TestQgsMapLayer;
The Qgis class provides global constants for use throughout the application.
QFlags< DataProviderReadFlag > DataProviderReadFlags
Flags which control data provider construction.
LayerType
Types of layers that can be added to a map.
@ Group
Composite group layer. Added in QGIS 3.24.
@ Plugin
Plugin based layer.
@ TiledScene
Tiled scene layer. Added in QGIS 3.34.
@ Annotation
Contains freeform, georeferenced annotations. Added in QGIS 3.16.
@ VectorTile
Vector tile layer. Added in QGIS 3.14.
@ Mesh
Mesh layer. Added in QGIS 3.2.
@ PointCloud
Point cloud layer. Added in QGIS 3.18.
QFlags< LoadStyleFlag > LoadStyleFlags
Flags for loading layer styles.
AutoRefreshMode
Map layer automatic refresh modes.
@ Disabled
Automatic refreshing is disabled.
Base class for all renderers that may to participate in 3D view.
A 3-dimensional box composed of x, y, z coordinates.
This class represents a coordinate reference system (CRS).
Contains information about the context in which a coordinate transform is executed.
Abstract base class for spatial data provider implementations.
QgsErrorMessage represents single error message.
QgsError is container for error messages (report).
This class models dependencies with or between map layers.
Base class for storage of map layer elevation properties.
The QgsMapLayerLegend class is abstract interface for implementations of legends for one map layer.
Base class for utility classes that encapsulate information necessary for rendering of map layers.
Base class for storage of map layer selection properties.
Manages QGIS Server properties for a map layer.
Management of styles for use with one map layer.
Base class for storage of map layer temporal properties.
Base class for all map layer types.
void crs3DChanged()
Emitted when the crs3D() of the layer has changed.
virtual bool writeSymbology(QDomNode &node, QDomDocument &doc, QString &errorMessage, const QgsReadWriteContext &context, StyleCategories categories=AllStyleCategories) const =0
Write the style for the layer into the document provided.
QString legendUrlFormat() const
Returns the format for a URL based layer legend.
void dependenciesChanged()
Emitted when dependencies are changed.
void setError(const QgsError &error)
Sets error message.
void legendChanged()
Signal emitted when legend of the layer has changed.
QFlags< ReadFlag > ReadFlags
QFlags< LayerFlag > LayerFlags
void editingStopped()
Emitted when edited changes have been successfully written to the data provider.
void recalculateExtents() const
This is used to send a request that any mapcanvas using this layer update its extents.
void metadataChanged()
Emitted when the layer's metadata is changed.
void setLegendUrl(const QString &legendUrl)
Sets the URL for the layer's legend.
void request3DUpdate()
Signal emitted when a layer requires an update in any 3D maps.
void configChanged()
Emitted whenever the configuration is changed.
void autoRefreshIntervalChanged(int interval)
Emitted when the auto refresh interval changes.
T customFlagProperty(const QString &key, const T &defaultValue)
Returns the property value for a property based on a flag.
Q_DECL_DEPRECATED bool hasDependencyCycle(const QSet< QgsMapLayerDependency > &) const
Checks whether a new set of dependencies will introduce a cycle this method is now deprecated and alw...
void editingStarted()
Emitted when editing on this layer has started.
void isValidChanged()
Emitted when the validity of this layer changed.
QString legendPlaceholderImage() const
Returns path to the placeholder image or an empty string if a generated legend is shown.
QString mRefreshOnNofifyMessage
QString mLegendUrl
WMS legend.
QString mLayerName
Name of the layer - used for display.
void setCustomFlagProperty(const QString &key, const T &value)
Set the value of a property based on a flag.
void mapTipTemplateChanged()
Emitted when the map tip template changes.
void renderer3DChanged()
Signal emitted when 3D renderer associated with the layer has changed.
virtual QgsMapLayerSelectionProperties * selectionProperties()
Returns the layer's selection properties.
void statusChanged(const QString &status)
Emit a signal with status (e.g. to be caught by QgisApp and display a msg on status bar)
bool isRefreshOnNotifyEnabled() const
Returns true if the refresh on provider nofification is enabled.
QSet< QgsMapLayerDependency > mDependencies
List of layers that may modify this layer on modification.
QFlags< StyleCategory > StyleCategories
const QgsMapLayerServerProperties * serverProperties() const
Returns QGIS Server Properties const for the map layer.
QString mProviderKey
Data provider key (name of the data provider)
void styleChanged()
Signal emitted whenever a change affects the layer's style.
std::unique_ptr< QgsDataProvider > mPreloadedProvider
Optionally used when loading a project, it is released when the layer is effectively created.
void rendererChanged()
Signal emitted when renderer is changed.
void crsChanged()
Emitted when the crs() of the layer has changed.
void dataSourceChanged()
Emitted whenever the layer's data source has been changed.
void idChanged(const QString &id)
Emitted when the layer's ID has been changed.
void setRefreshOnNofifyMessage(const QString &message)
Set the notification message that triggers repaint If refresh on notification is enabled,...
void opacityChanged(double opacity)
Emitted when the layer's opacity is changed, where opacity is a value between 0 (transparent) and 1 (...
void styleLoaded(QgsMapLayer::StyleCategories categories)
Emitted when a style has been loaded.
virtual QgsMapLayerTemporalProperties * temporalProperties()
Returns the layer's temporal properties.
void dataChanged()
Data of layer changed.
virtual QgsMapLayerRenderer * createMapRenderer(QgsRenderContext &rendererContext)=0
Returns new instance of QgsMapLayerRenderer that will be used for rendering of given context.
void willBeDeleted()
Emitted in the destructor when the layer is about to be deleted, but it is still in a perfectly valid...
void verticalCrsChanged()
Emitted when the verticalCrs() of the layer has changed.
void blendModeChanged(QPainter::CompositionMode blendMode)
Signal emitted when the blend mode is changed, through QgsMapLayer::setBlendMode()
virtual bool readSymbology(const QDomNode &node, QString &errorMessage, QgsReadWriteContext &context, StyleCategories categories=AllStyleCategories)=0
Read the symbology for the current layer from the DOM node supplied.
LayerFlag
Flags for the map layer.
void setLegendPlaceholderImage(const QString &imgPath)
Set placeholder image for legend.
void appendError(const QgsErrorMessage &error)
Add error message.
QString mDataSource
Data source description string, varies by layer type.
virtual bool readSld(const QDomNode &node, QString &errorMessage)
ReadFlag
Flags which control project read behavior.
void customPropertyChanged(const QString &key)
Emitted when a custom property of the layer has been changed or removed.
QString legendUrl() const
Returns the URL for the layer's legend.
void flagsChanged()
Emitted when layer's flags have been modified.
void repaintRequested(bool deferredUpdate=false)
By emitting this signal the layer tells that either appearance or content have been changed and any v...
void setLegendUrlFormat(const QString &legendUrlFormat)
Sets the format for a URL based layer legend.
void beforeResolveReferences(QgsProject *project)
Emitted when all layers are loaded and references can be resolved, just before the references of this...
virtual QgsMapLayerElevationProperties * elevationProperties()
Returns the layer's elevation properties.
virtual void setTransformContext(const QgsCoordinateTransformContext &transformContext)=0
Sets the coordinate transform context to transformContext.
void nameChanged()
Emitted when the name has been changed.
T customEnumProperty(const QString &key, const T &defaultValue)
Returns the property value for a property based on an enum.
StyleCategory
Categories of style to distinguish appropriate sections for import/export.
void layerModified()
Emitted when modifications has been done on layer.
virtual Q_INVOKABLE void reload()
Synchronises with changes in the datasource.
void mapTipsEnabledChanged()
Emitted when map tips are enabled or disabled for the layer.
void setCustomEnumProperty(const QString &key, const T &value)
Set the value of a property based on an enum.
PropertyType
Maplayer has a style and a metadata property.
Simple key-value store (keys = strings, values = variants) that supports loading/saving to/from XML i...
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.
A rectangle specified with double values.
Contains information about the context of a rendering operation.
The QgsSldExportContext class holds SLD export options and other information related to SLD export of...
An interface for classes which can visit style entity (e.g.
Represents a vector layer which manages a vector based data sets.
#define SIP_CONVERT_TO_SUBCLASS_CODE(code)
#define SIP_ENUM_BASETYPE(type)
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)
#define QgsDebugError(str)
QPointer< QgsMapLayer > QgsWeakMapLayerPointer
Weak pointer for QgsMapLayer.
QList< QgsWeakMapLayerPointer > QgsWeakMapLayerPointerList
A list of weak pointers to QgsMapLayers.
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsTextRendererUtils::CurvedTextFlags)
const QgsCoordinateReferenceSystem & crs
Setting options for creating vector data providers.