[QGIS Commit] r14439 - in trunk/qgis/src: app core ui
svn_qgis at osgeo.org
svn_qgis at osgeo.org
Wed Oct 27 19:24:27 EDT 2010
Author: jef
Date: 2010-10-27 16:24:27 -0700 (Wed, 27 Oct 2010)
New Revision: 14439
Modified:
trunk/qgis/src/app/qgsoptions.cpp
trunk/qgis/src/app/qgsoptions.h
trunk/qgis/src/core/qgscoordinatetransform.cpp
trunk/qgis/src/core/qgscoordinatetransform.h
trunk/qgis/src/ui/qgsoptionsbase.ui
Log:
partly revert r14399 (all except srs updates):
- proj.4 user paths mask standard directory
- gsb file warning doesn't make sense for optional grids.
Modified: trunk/qgis/src/app/qgsoptions.cpp
===================================================================
--- trunk/qgis/src/app/qgsoptions.cpp 2010-10-27 21:53:11 UTC (rev 14438)
+++ trunk/qgis/src/app/qgsoptions.cpp 2010-10-27 23:24:27 UTC (rev 14439)
@@ -85,15 +85,6 @@
}
}
- //local directories to search when looking for an PROJ.4 file with a given basename
- foreach( QString path, settings.value( "projSearchPaths" ).toStringList() )
- {
- QListWidgetItem* newItem = new QListWidgetItem( mListProjPaths );
- newItem->setText( path );
- newItem->setFlags( Qt::ItemIsEditable | Qt::ItemIsEnabled | Qt::ItemIsSelectable );
- mListProjPaths->addItem( newItem );
- }
-
//Network timeout
mNetworkTimeoutSpinBox->setValue( settings.value( "/qgis/networkAndProxy/networkTimeout", "60000" ).toInt() );
@@ -473,13 +464,6 @@
}
settings.setValue( "svg/searchPathsForSVG", myPaths );
- QStringList paths;
- for ( int i = 0; i < mListProjPaths->count(); ++i )
- {
- paths << mListProjPaths->item( i )->text();
- }
- settings.setValue( "projSearchPaths", paths );
-
//Network timeout
settings.setValue( "/qgis/networkAndProxy/networkTimeout", mNetworkTimeoutSpinBox->value() );
@@ -888,33 +872,6 @@
delete itemToRemove;
}
-void QgsOptions::on_mBtnAddProjPath_clicked()
-{
- QString myDir = QFileDialog::getExistingDirectory(
- this,
- tr( "Choose a directory" ),
- QDir::toNativeSeparators( QDir::homePath() ),
- QFileDialog::ShowDirsOnly
- );
-
- if ( ! myDir.isEmpty() )
- {
- QListWidgetItem* newItem = new QListWidgetItem( mListProjPaths );
- newItem->setText( myDir );
- newItem->setFlags( Qt::ItemIsEditable | Qt::ItemIsEnabled | Qt::ItemIsSelectable );
- mListProjPaths->addItem( newItem );
- mListProjPaths->setCurrentItem( newItem );
- }
-}
-
-void QgsOptions::on_mBtnRemoveProjPath_clicked()
-{
- int currentRow = mListProjPaths->currentRow();
- QListWidgetItem* itemToRemove = mListProjPaths->takeItem( currentRow );
- delete itemToRemove;
-}
-
-
void QgsOptions::on_mAddUrlPushButton_clicked()
{
QListWidgetItem* newItem = new QListWidgetItem( mExcludeUrlListWidget );
Modified: trunk/qgis/src/app/qgsoptions.h
===================================================================
--- trunk/qgis/src/app/qgsoptions.h 2010-10-27 21:53:11 UTC (rev 14438)
+++ trunk/qgis/src/app/qgsoptions.h 2010-10-27 23:24:27 UTC (rev 14439)
@@ -101,12 +101,6 @@
*/
void on_mBtnRemoveSVGPath_clicked();
- /* Let the user add a path to the list of search paths used for finding PROJ.4 files. */
- void on_mBtnAddProjPath_clicked();
-
- /* Let the user remove a path to the list of search paths for finding PROJ.4 files. */
- void on_mBtnRemoveProjPath_clicked();
-
void on_buttonBox_helpRequested() { QgsContextHelp::run( metaObject()->className() ); }
void on_mBrowseCacheDirectory_clicked();
Modified: trunk/qgis/src/core/qgscoordinatetransform.cpp
===================================================================
--- trunk/qgis/src/core/qgscoordinatetransform.cpp 2010-10-27 21:53:11 UTC (rev 14438)
+++ trunk/qgis/src/core/qgscoordinatetransform.cpp 2010-10-27 23:24:27 UTC (rev 14439)
@@ -23,10 +23,7 @@
#include <QDomNode>
#include <QDomElement>
#include <QApplication>
-#include <QSettings>
-#include <QStringList>
-#include <QFileInfo>
-#include <QSet>
+#include "qgslogger.h"
extern "C"
{
@@ -548,51 +545,28 @@
return true;
}
-void QgsCoordinateTransform::setFinder()
+const char *finder( const char *name )
{
- pj_set_finder( finder );
+ QString proj;
+#ifdef WIN32
+ proj = QApplication::applicationDirPath()
+ + "/share/proj/" + QString( name );
+#endif
+ return proj.toUtf8();
}
-const char *QgsCoordinateTransform::finder( const char *name )
+void QgsCoordinateTransform::setFinder()
{
- QSettings settings;
- QStringList paths = settings.value( "projSearchPaths" ).toStringList();
-
- if ( getenv( "PROJ_LIB" ) )
- {
- paths << getenv( "PROJ_LIB" );
- }
-
#ifdef WIN32
- paths << QApplication::applicationDirPath() + "/share/proj";
-#endif
+ // Attention! It should be possible to set PROJ_LIB
+ // but it can happen that it was previously set by installer
+ // (version 0.7) and the old installation was deleted
- foreach( QString path, paths )
- {
- QFileInfo fi( QString( "%1/%2" ).arg( path ).arg( name ) );
- if ( fi.exists() )
- return fi.canonicalFilePath().toUtf8();
- }
+ // Another problem: PROJ checks if pj_finder was set before
+ // PROJ_LIB environment variable. pj_finder is probably set in
+ // GRASS gproj library when plugin is loaded, consequently
+ // PROJ_LIB is ignored
- if ( QString( name ).endsWith( ".gsb", Qt::CaseInsensitive ) )
- {
- static QSet<QString> missing;
-
- if ( !missing.contains( name ) )
- {
- QgsMessageOutput *output = QgsMessageOutput::createMessageOutput();
- output->setTitle( "Grid transformation missing" );
- output->setMessage( tr( "PROJ.4 file %1 not found in any of these directories:\n\n"
- "%2\n\n"
- "Note: This message won't reappear for this file in this session." )
- .arg( name )
- .arg( paths.join( "\n" ) ),
- QgsMessageOutput::MessageText );
- output->showMessage();
- }
-
- missing << name;
- }
-
- return name;
+ pj_set_finder( finder );
+#endif
}
Modified: trunk/qgis/src/core/qgscoordinatetransform.h
===================================================================
--- trunk/qgis/src/core/qgscoordinatetransform.h 2010-10-27 21:53:11 UTC (rev 14438)
+++ trunk/qgis/src/core/qgscoordinatetransform.h 2010-10-27 23:24:27 UTC (rev 14439)
@@ -256,14 +256,9 @@
projPJ mDestinationProjection;
/*!
- * Set finder for PROJ grid files.
- */
- void setFinder();
-
- /*!
* Finder for PROJ grid files.
*/
- static const char *finder( const char *name );
+ void setFinder();
};
//! Output stream operator
Modified: trunk/qgis/src/ui/qgsoptionsbase.ui
===================================================================
--- trunk/qgis/src/ui/qgsoptionsbase.ui 2010-10-27 21:53:11 UTC (rev 14438)
+++ trunk/qgis/src/ui/qgsoptionsbase.ui 2010-10-27 23:24:27 UTC (rev 14439)
@@ -212,16 +212,6 @@
</item>
</widget>
</item>
- <item row="1" column="0" colspan="2">
- <widget class="QDialogButtonBox" name="buttonBox">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="standardButtons">
- <set>QDialogButtonBox::Cancel|QDialogButtonBox::Help|QDialogButtonBox::Ok</set>
- </property>
- </widget>
- </item>
<item row="0" column="1">
<widget class="QStackedWidget" name="stackedWidget">
<property name="currentIndex">
@@ -634,52 +624,6 @@
</layout>
</widget>
</item>
- <item>
- <widget class="QGroupBox" name="groupBox_4">
- <property name="title">
- <string>PROJ.4 search paths</string>
- </property>
- <layout class="QGridLayout" name="gridLayout_4">
- <item row="4" column="0" colspan="4">
- <widget class="QListWidget" name="mListProjPaths"/>
- </item>
- <item row="3" column="1">
- <spacer name="spacer">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>31</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item row="3" column="2">
- <widget class="QPushButton" name="mBtnAddProjPath">
- <property name="text">
- <string>Add</string>
- </property>
- </widget>
- </item>
- <item row="3" column="3">
- <widget class="QPushButton" name="mBtnRemoveProjPath">
- <property name="text">
- <string>Remove</string>
- </property>
- </widget>
- </item>
- <item row="3" column="0">
- <widget class="QLabel" name="mProjLabel">
- <property name="text">
- <string>Path(s) to search for PROJ.4 files</string>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
- </item>
</layout>
</widget>
<widget class="QWidget" name="stackedWidgetPage3">
@@ -1655,6 +1599,16 @@
</widget>
</widget>
</item>
+ <item row="1" column="0" colspan="2">
+ <widget class="QDialogButtonBox" name="buttonBox">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="standardButtons">
+ <set>QDialogButtonBox::Cancel|QDialogButtonBox::Help|QDialogButtonBox::Ok</set>
+ </property>
+ </widget>
+ </item>
</layout>
</widget>
<layoutdefault spacing="6" margin="11"/>
More information about the QGIS-commit
mailing list