[Paraview-developers] Locale settings in PV

Lodron, Gerald Gerald.Lodron at joanneum.at
Thu Oct 15 05:46:44 EDT 2015


Hello

I noticed a bug in paraview on parsing double values in QLineEdits, e.g. in pqDoubleEdit:

double pqDoubleEdit::value()
{
  QString currentText = this->text();
  int currentPos = this->cursorPosition();
  QDoubleValidator dvalidator(NULL);
  QValidator::State state = dvalidator.validate(currentText, currentPos);
  if (state == QValidator::Acceptable || state == QValidator::Intermediate)
    {
    return currentText.toDouble();
    }
  return 0.0;
}

The Problem is that QDoubleValidator uses the current locale. If the current locale is e.g. German that e.g. "0.1" is not allowed, only "0,1". On the other side the QString function toDouble cannot parse it correctly, see documentation http://doc.qt.io/qt-5/qstring.html#toDouble , here the http://doc.qt.io/qt-5/qlocale.html#toDouble is recommended.... So all QLineEdit functions with toDouble must be replaced by
QLocale oL;
Double dValue = oL.toDouble( lineEdit->text())

Nasty....Other solution would be to set the locale to English for whole paraview regardless to the system locale, but I don't know if that is possible (also not very beautiful)...

Best regards


------------------------------------------------------------------------------------
Gerald Lodron

Researcher of Machine Vision Applications Group
DIGITAL - Institute for Information and Communication Technologies

JOANNEUM RESEARCH Forschungsgesellschaft mbH
Steyrergasse 17, 8010 Graz, AUSTRIA

phone:   +43-316-876-1751
general fax: +43-316-876-1751
web: http://www.joanneum.at/digital
e-mail: gerald.lodron at joanneum.at<mailto:gerald.lodron at joanneum.at>



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/paraview-developers/attachments/20151015/e41c029f/attachment.html>


More information about the Paraview-developers mailing list