From fe50e24ccfca4935e9663f58db9bfff128775b83 Mon Sep 17 00:00:00 2001 From: Nyall Dawson Date: Tue, 12 Mar 2019 12:49:38 +1000 Subject: [PATCH] Fix loss of transform context changes when editing project CRS in project properties dialog --- src/app/qgsprojectproperties.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/app/qgsprojectproperties.cpp b/src/app/qgsprojectproperties.cpp index 60d8a043bc4..70caae1dde6 100644 --- a/src/app/qgsprojectproperties.cpp +++ b/src/app/qgsprojectproperties.cpp @@ -943,6 +943,10 @@ void QgsProjectProperties::apply() { mMapCanvas->enableMapTileRendering( mMapTileRenderingCheckBox->isChecked() ); + // important - set the transform context first, as changing the project CRS may otherwise change this and + // cause loss of user changes + QgsCoordinateTransformContext transformContext = mDatumTransformTableWidget->transformContext(); + QgsProject::instance()->setTransformContext( transformContext ); if ( projectionSelector->hasValidSelection() ) { QgsCoordinateReferenceSystem srs = projectionSelector->crs(); @@ -962,9 +966,6 @@ void QgsProjectProperties::apply() projectionSelector->pushProjectionToFront(); } - QgsCoordinateTransformContext transformContext = mDatumTransformTableWidget->transformContext(); - QgsProject::instance()->setTransformContext( transformContext ); - mMetadataWidget->acceptMetadata(); // Set the project title