Fix for #6309, add case-insensitive sort for vector provider encodings

This commit is contained in:
Larry Shaffer 2012-09-06 04:57:33 -06:00
parent 24d50e4b93
commit 652deba734

View File

@ -460,6 +460,11 @@ QVariant QgsVectorDataProvider::convertValue( QVariant::Type type, QString value
return v;
}
static bool _compareEncodings( const QString& s1, const QString& s2 )
{
return s1.toLower() < s2.toLower();
}
const QStringList &QgsVectorDataProvider::availableEncodings()
{
if ( smEncodings.isEmpty() )
@ -468,7 +473,6 @@ const QStringList &QgsVectorDataProvider::availableEncodings()
{
smEncodings << codec;
}
qSort( smEncodings );
#if 0
smEncodings << "BIG5";
smEncodings << "BIG5-HKSCS";
@ -518,6 +522,9 @@ const QStringList &QgsVectorDataProvider::availableEncodings()
#endif
}
// Do case-insensitive sorting of encodings
qSort( smEncodings.begin(), smEncodings.end(), _compareEncodings );
return smEncodings;
}