[QGIS Commit] r14433 - in trunk/qgis/src: app app/postgres core

svn_qgis at osgeo.org svn_qgis at osgeo.org
Mon Oct 25 11:56:55 EDT 2010


Author: jef
Date: 2010-10-25 08:56:55 -0700 (Mon, 25 Oct 2010)
New Revision: 14433

Modified:
   trunk/qgis/src/app/postgres/qgspgsourceselect.cpp
   trunk/qgis/src/app/qgsquerybuilder.cpp
   trunk/qgis/src/core/qgsvectorlayer.cpp
Log:
fix #3153

Modified: trunk/qgis/src/app/postgres/qgspgsourceselect.cpp
===================================================================
--- trunk/qgis/src/app/postgres/qgspgsourceselect.cpp	2010-10-25 09:41:59 UTC (rev 14432)
+++ trunk/qgis/src/app/postgres/qgspgsourceselect.cpp	2010-10-25 15:56:55 UTC (rev 14433)
@@ -548,8 +548,11 @@
     return;
   }
 
-  QgsVectorLayer *vlayer = new QgsVectorLayer( layerURI( mProxyModel.mapToSource( index ) ), "querybuilder", "postgres" );
+  QModelIndex idx = mProxyModel.mapToSource( index );
+  QString tableName = mTableModel.itemFromIndex( idx.sibling( idx.row(), QgsDbTableModel::dbtmTable ) )->text();
 
+  QgsVectorLayer *vlayer = new QgsVectorLayer( layerURI( idx ), tableName, "postgres" );
+
   if ( !vlayer->isValid() )
   {
     delete vlayer;

Modified: trunk/qgis/src/app/qgsquerybuilder.cpp
===================================================================
--- trunk/qgis/src/app/qgsquerybuilder.cpp	2010-10-25 09:41:59 UTC (rev 14432)
+++ trunk/qgis/src/app/qgsquerybuilder.cpp	2010-10-25 15:56:55 UTC (rev 14433)
@@ -44,7 +44,7 @@
 
   mOrigSubsetString = layer->subsetString();
 
-  lblDataUri->setText( layer->publicSource() );
+  lblDataUri->setText( layer->name() );
   txtSQL->setText( mOrigSubsetString );
 
   populateFields();

Modified: trunk/qgis/src/core/qgsvectorlayer.cpp
===================================================================
--- trunk/qgis/src/core/qgsvectorlayer.cpp	2010-10-25 09:41:59 UTC (rev 14432)
+++ trunk/qgis/src/core/qgsvectorlayer.cpp	2010-10-25 15:56:55 UTC (rev 14433)
@@ -4150,8 +4150,15 @@
   //we only nee to do that if the srs is not alreay valid
   if ( !mCRS->isValid() )
   {
-    mCRS->setValidationHint( tr( "Specify CRS for layer %1" ).arg( name() ) );
-    mCRS->validate();
+    if ( geometryType() != QGis::NoGeometry )
+    {
+      mCRS->setValidationHint( tr( "Specify CRS for layer %1" ).arg( name() ) );
+      mCRS->validate();
+    }
+    else
+    {
+      mCRS->createFromProj4( GEOPROJ4 );
+    }
   }
 }
 



More information about the QGIS-commit mailing list