/*
*openPilotLog - A FOSS Pilot Logbook Application
*Copyright (C) 2020-2022 Felix Turowsky
*
*This program is free software: you can redistribute it and/or modify
*it under the terms of the GNU General Public License as published by
*the Free Software Foundation, either version 3 of the License, or
*(at your option) any later version.
*
*This program is distributed in the hope that it will be useful,
*but WITHOUT ANY WARRANTY; without even the implied warranty of
*MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
*GNU General Public License for more details.
*
*You should have received a copy of the GNU General Public License
*along with this program. If not, see .
*/
#ifndef ADATETIME_H
#define ADATETIME_H
#include
#include "src/opl.h"
namespace ADateTime {
/*!
* \brief toString formats a QDateTime object into a string in a uniform way.
* \return
*/
inline const QString toString (const QDateTime& date_time, OPL::DateTimeFormat format) {
switch (format) {
case OPL::DateTimeFormat::Default:
return date_time.toString(Qt::ISODate);
case OPL::DateTimeFormat::Backup:
return date_time.toString(QStringLiteral("yyyy_MM_dd_T_hh_mm"));
default:
return QString();
}
}
inline QDateTime fromString(const QString& date_time_string)
{
auto date_time = QDateTime::fromString(date_time_string, QStringLiteral("yyyy-MM-ddhh:mm"));
date_time.setTimeZone(QTimeZone::utc());
return date_time;
}
}
#endif // ADATETIME_H