File indexing completed on 2024-05-19 05:55:48
0001 /* 0002 * SPDX-FileCopyrightText: 2020 Han Young <hanyoung@protonmail.com> 0003 * SPDX-FileCopyrightText: 2020 Devin Lin <espidev@gmail.com> 0004 * SPDX-FileCopyrightText: 2021 Nicolas Fella <nicolas.fella@gmx.de> 0005 * 0006 * SPDX-License-Identifier: GPL-2.0-or-later 0007 */ 0008 0009 #pragma once 0010 0011 #include <QDateTime> 0012 #include <QObject> 0013 #include <qqmlregistration.h> 0014 0015 class Formatter : public QObject 0016 { 0017 Q_OBJECT 0018 QML_ELEMENT 0019 QML_SINGLETON 0020 public: 0021 Q_INVOKABLE double convertTemp(qreal temperature, const QString &unit) const; 0022 Q_INVOKABLE QString formatTemperatureUnitDegrees(const QString &unit) const; 0023 Q_INVOKABLE QString formatTemperature(qreal temperature, const QString &unit) const; 0024 Q_INVOKABLE QString formatTemperatureRounded(qreal temperature, const QString &unit) const; 0025 0026 Q_INVOKABLE QString formatWindSpeed(qreal speed, const QString &unit) const; 0027 0028 Q_INVOKABLE QString formatPressure(qreal pressure, const QString &unit) const; 0029 Q_INVOKABLE QString formatPercent(qreal percentage) const; 0030 Q_INVOKABLE QString formatDouble(qreal number) const; 0031 0032 Q_INVOKABLE QString formatSunriseTime(QDateTime date, const QString &timeZone) const; 0033 Q_INVOKABLE QString formatPrecipitation(qreal precipitation, const QString &unit) const; 0034 Q_INVOKABLE QString formatHourlyCardDelegateTime(QDateTime date, const QString &timeZone) const; 0035 };