[PATCH] Use UTF-8 for text strings.
Dirk Hohndel
dirk at hohndel.org
Mon Dec 16 14:15:41 UTC 2013
So why would we need those explicit conversions?
/D
---
From my phone
Michael Andreen <harv at ruin.nu> wrote:
>Fixes #371
>
>Signed-off-by: Michael Andreen <harv at ruin.nu>
>---
>I haven't been able to test it on windows, hopefully I didn't miss any strings.
> qt-ui/maintab.cpp | 20 ++++++++++----------
> 1 file changed, 10 insertions(+), 10 deletions(-)
>
>diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp
>index 82e5d2e..3ae8d5b 100644
>--- a/qt-ui/maintab.cpp
>+++ b/qt-ui/maintab.cpp
>@@ -264,7 +264,7 @@ void MainTab::enableEdition(EditMode newEditMode)
> notesBackup[mydive].datetime = QDateTime::fromTime_t(mydive->when).toUTC().toString();
> char buf[1024];
> taglist_get_tagstring(mydive->tag_list, buf, 1024);
>- notesBackup[mydive].tags = QString(buf);
>+ notesBackup[mydive].tags = QString::fromUtf8(buf);
>
> // maybe this is a place for memset?
> for (int i = 0; i < MAX_CYLINDERS; i++) {
>@@ -342,7 +342,7 @@ void MainTab::clearStats()
> if (!d || !d->field) \
> ui.field->setText(""); \
> else \
>- ui.field->setText(d->field)
>+ ui.field->setText(QString::fromUtf8(d->field))
>
> #define UPDATE_TEMP(d, field) \
> if (!d || d->field.mkelvin == 0) \
>@@ -411,9 +411,9 @@ void MainTab::updateDiveInfo(int dive)
> // rename the remaining fields and fill data from selected trip
> dive_trip_t *currentTrip = *mainWindow()->dive_list()->selectedTrips().begin();
> ui.LocationLabel->setText(tr("Trip Location"));
>- ui.location->setText(currentTrip->location);
>+ ui.location->setText(QString::fromUtf8(currentTrip->location));
> ui.NotesLabel->setText(tr("Trip Notes"));
>- ui.notes->setText(currentTrip->notes);
>+ ui.notes->setText(QString::fromUtf8(currentTrip->notes));
> } else {
> setTabText(0, tr("Dive Notes"));
> // make all the fields visible writeable
>@@ -517,7 +517,7 @@ void MainTab::updateDiveInfo(int dive)
>
> char buf[1024];
> taglist_get_tagstring(d->tag_list, buf, 1024);
>- ui.tagWidget->setText(QString(buf));
>+ ui.tagWidget->setText(QString::fromUtf8(buf));
>
> multiEditEquipmentPlaceholder = *d;
> cylindersModel->setDive(&multiEditEquipmentPlaceholder);
>@@ -687,12 +687,12 @@ void MainTab::resetPallete()
> }
>
> #define EDIT_TEXT2(what, text) \
>- textByteArray = text.toLocal8Bit(); \
>+ textByteArray = text.toUtf8(); \
> free(what);\
> what = strdup(textByteArray.data());
>
> #define EDIT_TEXT(what, text) \
>- QByteArray textByteArray = text.toLocal8Bit(); \
>+ QByteArray textByteArray = text.toUtf8(); \
> free(what);\
> what = strdup(textByteArray.data());
>
>@@ -854,7 +854,7 @@ void MainTab::saveTags()
> QString tag;
> taglist_clear(mydive->tag_list);
> foreach (tag, ui.tagWidget->getBlockStringList())
>- taglist_add_tag(mydive->tag_list, tag.toAscii().data());
>+ taglist_add_tag(mydive->tag_list, tag.toUtf8().data());
> );
> }
>
>@@ -976,8 +976,8 @@ QString MainTab::printGPSCoords(int lat, int lon)
> ilatmin = (lat % 1000000) * 60;
> ilonmin = (lon % 1000000) * 60;
> result.sprintf("%s%u%s %2d.%05d\' , %s%u%s %2d.%05d\'",
>- lath.toLocal8Bit().data(), latdeg, UTF8_DEGREE, ilatmin / 1000000, (ilatmin % 1000000) / 10,
>- lonh.toLocal8Bit().data(), londeg, UTF8_DEGREE, ilonmin / 1000000, (ilonmin % 1000000) / 10);
>+ lath.toUtf8().data(), latdeg, UTF8_DEGREE, ilatmin / 1000000, (ilatmin % 1000000) / 10,
>+ lonh.toUtf8().data(), londeg, UTF8_DEGREE, ilonmin / 1000000, (ilonmin % 1000000) / 10);
> return result;
> }
>
>--
>1.8.3.2
>
>
More information about the subsurface
mailing list