cleanup: move timestampToDateTime() to qthelper.cpp

Move this function from maintab.cpp to qthelper.cpp. Since the
functionality was used in numerous places, use the helper function
there as well. This removes a number of inconsistencies. For example,
sometime setTimeSpec(Qt::UTC) was called, even though the
QDateTime object was already created with that time spec.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2020-05-22 18:02:15 +02:00 committed by Dirk Hohndel
parent 2ba2ea934a
commit f63485b444
7 changed files with 22 additions and 28 deletions

View file

@ -307,14 +307,6 @@ void MainTab::updateNotes(const struct dive *d)
}
}
static QDateTime timestampToDateTime(timestamp_t when)
{
// Subsurface always uses "local time" as in "whatever was the local time at the location"
// so all time stamps have no time zone information and are in UTC
QDateTime localTime = QDateTime::fromMSecsSinceEpoch(1000 * when, Qt::UTC);
localTime.setTimeSpec(Qt::UTC);
return localTime;
}
void MainTab::updateDateTime(const struct dive *d)
{
QDateTime localTime = timestampToDateTime(d->when);
@ -617,8 +609,7 @@ void MainTab::on_dateEdit_editingFinished()
{
if (ignoreInput || !current_dive)
return;
QDateTime dateTime = QDateTime::fromMSecsSinceEpoch(1000*current_dive->when, Qt::UTC);
dateTime.setTimeSpec(Qt::UTC);
QDateTime dateTime = timestampToDateTime(current_dive->when);
dateTime.setDate(ui.dateEdit->date());
shiftTime(dateTime);
}
@ -627,8 +618,7 @@ void MainTab::on_timeEdit_editingFinished()
{
if (ignoreInput || !current_dive)
return;
QDateTime dateTime = QDateTime::fromMSecsSinceEpoch(1000*current_dive->when, Qt::UTC);
dateTime.setTimeSpec(Qt::UTC);
QDateTime dateTime = timestampToDateTime(current_dive->when);
dateTime.setTime(ui.timeEdit->time());
shiftTime(dateTime);
}