Interface for classes that handle missing layer files when reading project file.
More...
#include <qgsprojectbadlayerhandler.h>
Interface for classes that handle missing layer files when reading project file.
Definition at line 27 of file qgsprojectbadlayerhandler.h.
◆ DataType
file data representation
Enumerator |
---|
IS_VECTOR | Vector data.
|
IS_RASTER | Raster data.
|
IS_BOGUS | Bogus data.
|
Definition at line 49 of file qgsprojectbadlayerhandler.h.
◆ ProviderType
the flavors for data storage
Enumerator |
---|
IS_FILE | Saved in a file.
|
IS_DATABASE | Saved in a database.
|
IS_URL | Retrieved from a URL.
|
IS_Unknown | Unknown type.
|
Definition at line 57 of file qgsprojectbadlayerhandler.h.
◆ ~QgsProjectBadLayerHandler()
virtual QgsProjectBadLayerHandler::~QgsProjectBadLayerHandler |
( |
| ) |
|
|
virtualdefault |
◆ dataSource()
QString QgsProjectBadLayerHandler::dataSource |
( |
const QDomNode & |
layerNode | ) |
|
|
protected |
Returns the data source for the given layer.
The QDomNode is a QgsProject Dom node corresponding to a map layer state.
Essentially dumps datasource tag.
- Since
- QGIS 3.0
Definition at line 63 of file qgsprojectbadlayerhandler.cpp.
◆ dataType()
Returns data type associated with the given QgsProject file Dom node.
The Dom node should represent the state associated with a specific layer.
- Since
- QGIS 3.0
Definition at line 34 of file qgsprojectbadlayerhandler.cpp.
◆ handleBadLayers()
void QgsProjectBadLayerHandler::handleBadLayers |
( |
const QList< QDomNode > & |
layers | ) |
|
|
virtual |
This method will be called whenever the project tries to load layers which cannot be accessed.
It should inform the user about this and if possible offer to fix the unavailable layers by setting a valid datasource, e.g. by showing a file dialog.
The default implementation will dismiss all bad layers and write information to the log.
- Since
- QGIS 3.0
Reimplemented in QgsStoreBadLayerInfo.
Definition at line 23 of file qgsprojectbadlayerhandler.cpp.
◆ providerType()
Returns the physical storage type associated with the given layer.
The QDomNode is a QgsProject Dom node corresponding to a map layer state.
If the provider tag is "ogr", then it's a file type.
However, if the layer is a raster, then there won't be a provider tag. It will always have an associated file.
If the layer doesn't fall into either of the previous two categories, then it's either a database or URL. If the datasource tag has "url=", then it's URL based and if it has "dbname=">, then the layer data is in a database.
- Since
- QGIS 3.0
Definition at line 77 of file qgsprojectbadlayerhandler.cpp.
◆ setDataSource()
void QgsProjectBadLayerHandler::setDataSource |
( |
QDomNode & |
layerNode, |
|
|
const QString & |
dataSource |
|
) |
| |
|
protected |
The documentation for this class was generated from the following files: