fix scale list (#52414)

* fix scale list

fixes #52383

* add test

* Update qgsscalecombobox.cpp
This commit is contained in:
Denis Rouzaud 2023-03-28 11:47:21 +02:00 committed by GitHub
parent 346abae549
commit 0a387cc213
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 1 deletions

View File

@ -44,7 +44,7 @@ void QgsScaleComboBox::updateScales( const QStringList &scales )
if ( scales.isEmpty() )
{
const QStringList scales = QgsSettingsRegistryCore::settingsMapScales->value();
myScalesList = QgsSettingsRegistryCore::settingsMapScales->value();
}
else
{

View File

@ -18,6 +18,7 @@
#include "qgsapplication.h"
#include "qgslogger.h"
#include "qgsscalecombobox.h"
#include "qgssettingsregistrycore.h"
#include <QObject>
#include <QLineEdit>
#include <QComboBox>
@ -70,6 +71,14 @@ void TestQgsScaleComboBox::init()
void TestQgsScaleComboBox::basic()
{
const QStringList scales = QgsSettingsRegistryCore::settingsMapScales->value();
QCOMPARE( scales.count(), s->count() );
for ( int i = 0; i < s->count(); i++ )
{
int denominator = QLocale().toInt( scales[i].split( ':' )[1] );
QCOMPARE( s->itemText( i ), QString( "1:%1" ).arg( QLocale().toString( denominator ) ) );
}
// Testing conversion from "1:nnn".
enterScale( QStringLiteral( "1:2345" ) );
QCOMPARE( s->scaleString(), QString( "1:%1" ).arg( QLocale().toString( 2345 ) ) );