QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
Static Public Member Functions | List of all members
QgsMapLayerUtils Class Reference

Contains utility functions for working with map layers. More...

#include <qgsmaplayerutils.h>

Static Public Member Functions

static QgsRectangle combinedExtent (const QList< QgsMapLayer * > &layers, const QgsCoordinateReferenceSystem &crs, const QgsCoordinateTransformContext &transformContext)
 Returns the combined extent of a list of layers. More...
 
static QgsAbstractDatabaseProviderConnectiondatabaseConnection (const QgsMapLayer *layer)
 Creates and returns the (possibly nullptr) database connection for a layer. More...
 
static QString launderLayerName (const QString &name)
 Launders a layer's name, converting it into a format which is general suitable for file names or database layer names. More...
 
static bool layerSourceMatchesPath (const QgsMapLayer *layer, const QString &path)
 Returns true if the source of the specified layer matches the given path. More...
 
static QList< QgsMapLayer * > sortLayersByType (const QList< QgsMapLayer * > &layers, const QList< Qgis::LayerType > &order)
 Sorts a list of map layers by their layer type, respecting the order of types specified. More...
 
static bool updateLayerSourcePath (QgsMapLayer *layer, const QString &newPath)
 Updates a layer's data source, replacing its data source with a path referring to newPath. More...
 

Detailed Description

Contains utility functions for working with map layers.

Since
QGIS 3.20

Definition at line 35 of file qgsmaplayerutils.h.

Member Function Documentation

◆ combinedExtent()

QgsRectangle QgsMapLayerUtils::combinedExtent ( const QList< QgsMapLayer * > &  layers,
const QgsCoordinateReferenceSystem crs,
const QgsCoordinateTransformContext transformContext 
)
static

Returns the combined extent of a list of layers.

The crs argument specifies the desired coordinate reference system for the combined extent.

Definition at line 30 of file qgsmaplayerutils.cpp.

◆ databaseConnection()

QgsAbstractDatabaseProviderConnection * QgsMapLayerUtils::databaseConnection ( const QgsMapLayer layer)
static

Creates and returns the (possibly nullptr) database connection for a layer.

Ownership is transferred to the caller.

Since
QGIS 3.22

Definition at line 92 of file qgsmaplayerutils.cpp.

◆ launderLayerName()

QString QgsMapLayerUtils::launderLayerName ( const QString &  name)
static

Launders a layer's name, converting it into a format which is general suitable for file names or database layer names.

Specifically this method:

  • Converts the name to lowercase
  • Replaces spaces by underscore characters
  • Removes any characters which are not alphanumeric or '_'.
Since
QGIS 3.28

Definition at line 158 of file qgsmaplayerutils.cpp.

◆ layerSourceMatchesPath()

bool QgsMapLayerUtils::layerSourceMatchesPath ( const QgsMapLayer layer,
const QString &  path 
)
static

Returns true if the source of the specified layer matches the given path.

This method can be used to test whether a layer is associated with a file path.

Since
QGIS 3.22

Definition at line 117 of file qgsmaplayerutils.cpp.

◆ sortLayersByType()

QList< QgsMapLayer * > QgsMapLayerUtils::sortLayersByType ( const QList< QgsMapLayer * > &  layers,
const QList< Qgis::LayerType > &  order 
)
static

Sorts a list of map layers by their layer type, respecting the order of types specified.

Layer types which appear earlier in the order list will result in matching layers appearing earlier in the result list.

Since
QGIS 3.26

Definition at line 141 of file qgsmaplayerutils.cpp.

◆ updateLayerSourcePath()

bool QgsMapLayerUtils::updateLayerSourcePath ( QgsMapLayer layer,
const QString &  newPath 
)
static

Updates a layer's data source, replacing its data source with a path referring to newPath.

Returns true if the layer was updated, or false if the layer was not updated (e.g. it uses a data provider which does not specify paths in a layer URI.

Since
QGIS 3.22

Definition at line 126 of file qgsmaplayerutils.cpp.


The documentation for this class was generated from the following files: