Don't prompt for CRS for annotation layers

Fixes #38739
This commit is contained in:
Nyall Dawson 2020-09-16 14:41:13 +10:00
parent 49037e050a
commit 15975c1d51
2 changed files with 3 additions and 2 deletions

View File

@ -26,6 +26,7 @@ QgsAnnotationLayer::QgsAnnotationLayer( const QString &name, const LayerOptions
: QgsMapLayer( QgsMapLayerType::AnnotationLayer, name )
, mTransformContext( options.transformContext )
{
mShouldValidateCrs = false;
mValid = true;
}

View File

@ -257,7 +257,7 @@ bool QgsMapLayer::readLayerXml( const QDomElement &layerElement, QgsReadWriteCon
QDomNode srsNode = layerElement.namedItem( QStringLiteral( "srs" ) );
mCRS.readXml( srsNode );
mCRS.setValidationHint( tr( "Specify CRS for layer %1" ).arg( mne.text() ) );
if ( isSpatial() )
if ( isSpatial() && type() != QgsMapLayerType::AnnotationLayer )
mCRS.validate();
savedCRS = mCRS;
@ -770,7 +770,7 @@ void QgsMapLayer::setCrs( const QgsCoordinateReferenceSystem &srs, bool emitSign
{
mCRS = srs;
if ( mShouldValidateCrs && isSpatial() && !mCRS.isValid() )
if ( mShouldValidateCrs && isSpatial() && !mCRS.isValid() && type() != QgsMapLayerType::AnnotationLayer )
{
mCRS.setValidationHint( tr( "Specify CRS for layer %1" ).arg( name() ) );
mCRS.validate();