diff --git a/resources/srs.db b/resources/srs.db
index 34cd19513b1..5dc7525f1cc 100644
Binary files a/resources/srs.db and b/resources/srs.db differ
diff --git a/src/core/qgscoordinatetransform.h b/src/core/qgscoordinatetransform.h
index 3dae9be7136..4c015c491f1 100644
--- a/src/core/qgscoordinatetransform.h
+++ b/src/core/qgscoordinatetransform.h
@@ -213,6 +213,7 @@ class CORE_EXPORT QgsCoordinateTransform : public QObject
/**Returns list of datum transformations for the given src and dest CRS*/
static QList< QList< int > > datumTransformations( const QgsCoordinateReferenceSystem& srcCRS, const QgsCoordinateReferenceSystem& destCRS );
+ static QString datumTransformString( int datumTransform );
int sourceDatumTransform() const { return mSourceDatumTransform; }
void setSourceDatumTransform( int dt ) { mSourceDatumTransform = dt; }
@@ -284,7 +285,6 @@ class CORE_EXPORT QgsCoordinateTransform : public QObject
/**Removes +nadgrids and +towgs84 from proj4 string*/
static QString stripDatumTransform( const QString& proj4 );
static void searchDatumTransform( const QString& sql, QList< int >& transforms );
- static QString datumTransformString( int datumTransform );
};
//! Output stream operator
diff --git a/src/gui/qgsdatumtransformdialog.cpp b/src/gui/qgsdatumtransformdialog.cpp
index 2a614f2dc0a..dd8daea1067 100644
--- a/src/gui/qgsdatumtransformdialog.cpp
+++ b/src/gui/qgsdatumtransformdialog.cpp
@@ -1,4 +1,5 @@
#include "qgsdatumtransformdialog.h"
+#include "qgscoordinatetransform.h"
QgsDatumTransformDialog::QgsDatumTransformDialog( const QList< QList< int > >& dt, QWidget* parent, Qt::WindowFlags f ): QDialog( parent, f )
{
@@ -10,10 +11,11 @@ QgsDatumTransformDialog::QgsDatumTransformDialog( const QList< QList< int > >& d
QString itemText;
for ( int i = 0; i < 2; ++i )
{
- itemText = QString::number( it->at( i ) );
- if ( itemText.compare( "-1" ) != 0 )
+ int nr = it->at( i );
+ if ( nr != -1 )
{
- item->setText( i, itemText );
+ item->setData( i, Qt::UserRole, nr );
+ item->setText( i, QgsCoordinateTransform::datumTransformString( nr ) );
}
}
mDatumTransformTreeWidget->addTopLevelItem( item );
@@ -37,15 +39,12 @@ QList< int > QgsDatumTransformDialog::selectedDatumTransform()
{
for ( int i = 0; i < 2; ++i )
{
- bool conversionOk = false;
- QString itemText = item->text( i );
- int transformNr = itemText.toInt( &conversionOk );
- if ( !itemText.isEmpty() && conversionOk )
+ int transformNr = item->data( i, Qt::UserRole ).toInt();
+ if ( transformNr != -1 )
{
list << transformNr;
}
}
}
-
return list;
}
diff --git a/src/ui/qgsdatumtransformdialogbase.ui b/src/ui/qgsdatumtransformdialogbase.ui
index 161664d6242..c269554a6b7 100644
--- a/src/ui/qgsdatumtransformdialogbase.ui
+++ b/src/ui/qgsdatumtransformdialogbase.ui
@@ -11,14 +11,19 @@
- Dialog
+ Select datum transformations
-
-
+ src transform
+
+
+
+
+ dst transform