diff --git a/resources/qgis_global_settings.ini b/resources/qgis_global_settings.ini index 2d830dc1ca54..c501abb6b598 100644 --- a/resources/qgis_global_settings.ini +++ b/resources/qgis_global_settings.ini @@ -1,8 +1,10 @@ [qgis] +# if formatLayerName is set to true, added layer names will be automatically capitalized and underscores replaced with spaces +formatLayerName=false connections-xyz\OpenStreetMap\authcfg= connections-xyz\OpenStreetMap\password= connections-xyz\OpenStreetMap\referer= connections-xyz\OpenStreetMap\url=http://a.tile.openstreetmap.org/{z}/{x}/{y}.png connections-xyz\OpenStreetMap\username= connections-xyz\OpenStreetMap\zmax=19 -connections-xyz\OpenStreetMap\zmin=0 \ No newline at end of file +connections-xyz\OpenStreetMap\zmin=0 diff --git a/src/app/qgisapp.cpp b/src/app/qgisapp.cpp index 0e668a81d07a..58c29e7439b1 100644 --- a/src/app/qgisapp.cpp +++ b/src/app/qgisapp.cpp @@ -4182,6 +4182,8 @@ bool QgisApp::addVectorLayers( const QStringList &layerQStringList, const QStrin { bool wasfrozen = mMapCanvas->isFrozen(); QList myList; + QgsSettings settings; + Q_FOREACH ( QString src, layerQStringList ) { src = src.trimmed(); @@ -4213,7 +4215,10 @@ bool QgisApp::addVectorLayers( const QStringList &layerQStringList, const QStrin QFileInfo fi( src ); base = fi.completeBaseName(); } - base = QgsMapLayer::formatLayerName( base ); + if ( settings.value( QStringLiteral( "qgis/formatLayerName" ), false ).toBool() ) + { + base = QgsMapLayer::formatLayerName( base ); + } QgsDebugMsg( "completeBaseName: " + base ); @@ -4257,7 +4262,11 @@ bool QgisApp::addVectorLayers( const QStringList &layerQStringList, const QStrin { //set friendly name for datasources with only one layer QStringList elements = sublayers.at( 0 ).split( QgsDataProvider::SUBLAYER_SEPARATOR ); - QString subLayerNameFormatted = elements.size() >= 2 ? QgsMapLayer::formatLayerName( elements.at( 1 ) ) : QString(); + QString subLayerNameFormatted = elements.size() >= 2 ? elements.at( 1 ) : QString(); + if ( settings.value( QStringLiteral( "qgis/formatLayerName" ), false ).toBool() ) + { + subLayerNameFormatted = QgsMapLayer::formatLayerName( subLayerNameFormatted ); + } if ( elements.size() >= 4 && layer->name().compare( elements.at( 1 ), Qt::CaseInsensitive ) != 0 && layer->name().compare( subLayerNameFormatted, Qt::CaseInsensitive ) != 0 ) @@ -9998,10 +10007,11 @@ void QgisApp::showLayoutManager() QgsVectorLayer *QgisApp::addVectorLayer( const QString &vectorLayerPath, const QString &name, const QString &providerKey ) { bool wasfrozen = mMapCanvas->isFrozen(); + QgsSettings settings; freezeCanvases(); - QString baseName = QgsMapLayer::formatLayerName( name ); + QString baseName = settings.value( QStringLiteral( "qgis/formatLayerName" ), false ).toBool() ? QgsMapLayer::formatLayerName( name ) : name; /* Eliminate the need to instantiate the layer based on provider type. The caller is responsible for cobbling together the needed information to @@ -10056,7 +10066,11 @@ QgsVectorLayer *QgisApp::addVectorLayer( const QString &vectorLayerPath, const Q if ( !sublayers.isEmpty() ) { QStringList elements = sublayers.at( 0 ).split( QgsDataProvider::SUBLAYER_SEPARATOR ); - QString subLayerNameFormatted = elements.size() >= 2 ? QgsMapLayer::formatLayerName( elements.at( 1 ) ) : QString(); + QString subLayerNameFormatted = elements.size() >= 2 ? elements.at( 1 ) : QString(); + if ( settings.value( QStringLiteral( "qgis/formatLayerName" ), false ).toBool() ) + { + subLayerNameFormatted = QgsMapLayer::formatLayerName( subLayerNameFormatted ); + } if ( elements.size() >= 4 && layer->name().compare( elements.at( 1 ), Qt::CaseInsensitive ) != 0 && layer->name().compare( subLayerNameFormatted, Qt::CaseInsensitive ) != 0 ) @@ -11935,7 +11949,8 @@ QgsRasterLayer *QgisApp::addRasterLayerPrivate( freezeCanvases(); } - QString baseName = QgsMapLayer::formatLayerName( name ); + QgsSettings settings; + QString baseName = settings.value( QStringLiteral( "qgis/formatLayerName" ), false ).toBool() ? QgsMapLayer::formatLayerName( name ) : name; QgsDebugMsg( "Creating new raster layer using " + uri + " with baseName of " + baseName ); diff --git a/src/core/qgsmaplayer.cpp b/src/core/qgsmaplayer.cpp index d6513da35c0c..1ea937b1d607 100644 --- a/src/core/qgsmaplayer.cpp +++ b/src/core/qgsmaplayer.cpp @@ -51,7 +51,6 @@ #include "qgsvectorlayer.h" #include "qgsvectordataprovider.h" #include "qgsxmlutils.h" -#include "qgssettings.h" // TODO: get rid of it [MD] #include "qgsstringutils.h" QString QgsMapLayer::extensionPropertyType( QgsMapLayer::PropertyType type )