summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlli Werwolff <qt-info@nokia.com>2010-11-16 11:57:38 +0100
committerOlli Werwolff <qt-info@nokia.com>2010-11-16 12:01:02 +0100
commit77936be6bd255ee8198a37f279219a0775919372 (patch)
tree7f1d91d1f102c915ac975c5ac269094e5519e76a
parent38ee20b22aa96d27249525ec4fd3f78727c47f59 (diff)
Use QLocale for input/output conversion in gui
When setting/reading values to/from LineEdits QLocale should be used in order to avoid country specific conversion problems (, and . in real numbers). Reviewed-by: ckamm
-rw-r--r--library/components/locationui.cpp79
1 files changed, 41 insertions, 38 deletions
diff --git a/library/components/locationui.cpp b/library/components/locationui.cpp
index 152c504..5e284f6 100644
--- a/library/components/locationui.cpp
+++ b/library/components/locationui.cpp
@@ -249,15 +249,16 @@ void LocationUi::setLocation(const LocationData &location)
void LocationUi::setDisplayedLocation(const LocationData &location)
{
- mLatitudeEdit->setText(QString::number(location.latitude, 'f', 8));
- mLongitudeEdit->setText(QString::number(location.longitude, 'f', 8));
- mAltitudeEdit->setText(QString::number(location.altitude, 'f', 8));
- mDirectionEdit->setText(QString::number(location.direction, 'f', 2));
- mGroundSpeedEdit->setText(QString::number(location.groundSpeed, 'f', 2));
- mVerticalSpeedEdit->setText(QString::number(location.verticalSpeed, 'f', 2));
- mMagneticVariationEdit->setText(QString::number(location.magneticVariation, 'f', 2));
- mHorizontalAccuracyEdit->setText(QString::number(location.horizontalAccuracy, 'f', 2));
- mVerticalAccuracyEdit->setText(QString::number(location.verticalAccuracy, 'f', 2));
+ QLocale locale;
+ mLatitudeEdit->setText(locale.toString(location.latitude, 'f', 8));
+ mLongitudeEdit->setText(locale.toString(location.longitude, 'f', 8));
+ mAltitudeEdit->setText(locale.toString(location.altitude, 'f', 8));
+ mDirectionEdit->setText(locale.toString(location.direction, 'f', 8));
+ mGroundSpeedEdit->setText(locale.toString(location.groundSpeed, 'f', 8));
+ mVerticalSpeedEdit->setText(locale.toString(location.verticalSpeed, 'f', 8));
+ mMagneticVariationEdit->setText(locale.toString(location.magneticVariation, 'f', 8));
+ mHorizontalAccuracyEdit->setText(locale.toString(location.horizontalAccuracy, 'f', 8));
+ mVerticalAccuracyEdit->setText(locale.toString(location.verticalAccuracy, 'f', 8));
mTimeEdit->setDateTime(location.timestamp);
mCurrentRadio->setChecked(location.useCurrentTime);
}
@@ -296,10 +297,11 @@ void LocationUi::showSatelliteInfo()
if (!editingEnabled)
return;
- int currentSatellite = satellitePrns->currentText().toInt();
- satelliteAzimuth->setText(QString::number(mScriptInterface->azimuth(currentSatellite)));
- satelliteElevation->setText(QString::number(mScriptInterface->elevation(currentSatellite)));
- satelliteSignalStrength->setText(QString::number(mScriptInterface->signalStrength(currentSatellite)));
+ QLocale locale;
+ int currentSatellite = locale.toInt(satellitePrns->currentText());
+ satelliteAzimuth->setText(locale.toString(mScriptInterface->azimuth(currentSatellite)));
+ satelliteElevation->setText(locale.toString(mScriptInterface->elevation(currentSatellite)));
+ satelliteSignalStrength->setText(locale.toString(mScriptInterface->signalStrength(currentSatellite)));
satelliteInUse->setChecked(mScriptInterface->inUse(currentSatellite));
}
@@ -308,13 +310,14 @@ void LocationUi::editSatelliteInfo()
if (satellitePrns->count() == 0)
return;
- int currentSatellite = satellitePrns->currentText().toInt();
+ QLocale locale;
+ int currentSatellite = locale.toInt(satellitePrns->currentText());
for (int i = 0; i < mSatelliteData.satellites.count(); i++) {
SatelliteData::SatelliteInfo info = mSatelliteData.satellites[i];
if (info.prn == currentSatellite) {
- info.azimuth = satelliteAzimuth->text().toDouble();
- info.elevation = satelliteElevation->text().toDouble();
- info.signalStrength = satelliteSignalStrength->text().toInt();
+ info.azimuth = locale.toDouble(satelliteAzimuth->text());
+ info.elevation = locale.toDouble(satelliteElevation->text());
+ info.signalStrength = locale.toInt(satelliteSignalStrength->text());
info.inUse = satelliteInUse->isChecked();
mSatelliteData.satellites[i] = info;
emitSatelliteDataChange();
@@ -328,7 +331,7 @@ void LocationUi::updateSatelliteList(int satelliteToShow)
satellitePrns->clear();
for (int i = 0; i < mSatelliteData.satellites.count(); i++) {
SatelliteData::SatelliteInfo satelliteInfo = mSatelliteData.satellites.at(i);
- satellitePrns->addItem(QString::number(satelliteInfo.prn));
+ satellitePrns->addItem(QLocale().toString(satelliteInfo.prn));
if (satelliteInfo.prn == satelliteToShow)
satellitePrns->setCurrentIndex(i);
@@ -356,7 +359,7 @@ void LocationUi::changeSatellitePrnClicked()
if (satellitePrns->count() == 0)
return;
- int oldPrn = satellitePrns->currentText().toInt();
+ int oldPrn = QLocale().toInt(satellitePrns->currentText());
int newPrn = QInputDialog::getInt(0,
"Change Satellite's PRN", "Enter the new PRN:",
oldPrn, 0);
@@ -403,7 +406,7 @@ void LocationUi::removeSatelliteClicked()
if (satellitePrns->count() == 0)
return;
- removeDisplayedSatellite(satellitePrns->currentText().toInt());
+ removeDisplayedSatellite(QLocale().toInt(satellitePrns->currentText()));
emitSatelliteDataChange();
}
@@ -465,117 +468,117 @@ bool LocationScriptInterface::inUse(int satellite) const
double LocationScriptInterface::latitude() const
{
- return ui->mLatitudeEdit->text().toDouble();
+ return QLocale().toDouble(ui->mLatitudeEdit->text());
}
void LocationScriptInterface::setLatitude(double l)
{
if (latitude() != l) {
- ui->mLatitudeEdit->setText(QString::number(l, 'f', 8));
+ ui->mLatitudeEdit->setText(QLocale().toString(l, 'f', 8));
ui->emitLocationChange();
}
}
double LocationScriptInterface::longitude() const
{
- return ui->mLongitudeEdit->text().toDouble();
+ return QLocale().toDouble(ui->mLongitudeEdit->text());
}
void LocationScriptInterface::setLongitude(double l)
{
if (longitude() != l) {
- ui->mLongitudeEdit->setText(QString::number(l, 'f', 8));
+ ui->mLongitudeEdit->setText(QLocale().toString(l, 'f', 8));
ui->emitLocationChange();
}
}
double LocationScriptInterface::altitude() const
{
- return ui->mAltitudeEdit->text().toDouble();
+ return QLocale().toDouble(ui->mAltitudeEdit->text());
}
void LocationScriptInterface::setAltitude(double a)
{
if (altitude() != a) {
- ui->mAltitudeEdit->setText(QString::number(a, 'f', 8));
+ ui->mAltitudeEdit->setText(QLocale().toString(a, 'f', 8));
ui->emitLocationChange();
}
}
qreal LocationScriptInterface::direction() const
{
- return ui->mDirectionEdit->text().toDouble();
+ return QLocale().toDouble(ui->mDirectionEdit->text());
}
void LocationScriptInterface::setDirection(qreal a)
{
if (direction() != a) {
- ui->mDirectionEdit->setText(QString::number(a, 'f', 8));
+ ui->mDirectionEdit->setText(QLocale().toString(a, 'f', 8));
ui->emitLocationChange();
}
}
qreal LocationScriptInterface::groundSpeed() const
{
- return ui->mGroundSpeedEdit->text().toDouble();
+ return QLocale().toDouble(ui->mGroundSpeedEdit->text());
}
void LocationScriptInterface::setGroundSpeed(qreal a)
{
if (groundSpeed() != a) {
- ui->mGroundSpeedEdit->setText(QString::number(a, 'f', 8));
+ ui->mGroundSpeedEdit->setText(QLocale().toString(a, 'f', 8));
ui->emitLocationChange();
}
}
qreal LocationScriptInterface::verticalSpeed() const
{
- return ui->mVerticalSpeedEdit->text().toDouble();
+ return QLocale().toDouble(ui->mVerticalSpeedEdit->text());
}
void LocationScriptInterface::setVerticalSpeed(qreal a)
{
if (verticalSpeed() != a) {
- ui->mVerticalSpeedEdit->setText(QString::number(a, 'f', 8));
+ ui->mVerticalSpeedEdit->setText(QLocale().toString(a, 'f', 8));
ui->emitLocationChange();
}
}
qreal LocationScriptInterface::magneticVariation() const
{
- return ui->mMagneticVariationEdit->text().toDouble();
+ return QLocale().toDouble(ui->mMagneticVariationEdit->text());
}
void LocationScriptInterface::setMagneticVariation(qreal a)
{
if (magneticVariation() != a) {
- ui->mMagneticVariationEdit->setText(QString::number(a, 'f', 8));
+ ui->mMagneticVariationEdit->setText(QLocale().toString(a, 'f', 8));
ui->emitLocationChange();
}
}
qreal LocationScriptInterface::horizontalAccuracy() const
{
- return ui->mHorizontalAccuracyEdit->text().toDouble();
+ return QLocale().toDouble(ui->mHorizontalAccuracyEdit->text());
}
void LocationScriptInterface::setHorizontalAccuracy(qreal a)
{
if (horizontalAccuracy() != a) {
- ui->mHorizontalAccuracyEdit->setText(QString::number(a, 'f', 8));
+ ui->mHorizontalAccuracyEdit->setText(QLocale().toString(a, 'f', 8));
ui->emitLocationChange();
}
}
qreal LocationScriptInterface::verticalAccuracy() const
{
- return ui->mVerticalAccuracyEdit->text().toDouble();
+ return QLocale().toDouble(ui->mVerticalAccuracyEdit->text());
}
void LocationScriptInterface::setVerticalAccuracy(qreal a)
{
if (verticalAccuracy() != a) {
- ui->mVerticalAccuracyEdit->setText(QString::number(a, 'f', 8));
+ ui->mVerticalAccuracyEdit->setText(QLocale().toString(a, 'f', 8));
ui->emitLocationChange();
}
}