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  *
0005  * SPDX-License-Identifier: GPL-2.0-or-later
0006  */
0007 #pragma once
0008 
0009 #include <QLocale>
0010 #include <QString>
0011 
0012 #include <KLocalizedContext>
0013 #include <KLocalizedString>
0014 
0015 #include <unordered_map>
0016 
0017 #include "kweathersettings.h"
0018 
0019 namespace KWeather
0020 {
0021 static const QString WEATHER_LOCATIONS_CFG_GROUP = QStringLiteral("WeatherLocations");
0022 
0023 static bool isCelsius(const QString &unit)
0024 {
0025     if (unit == QLatin1String("Use System Default")) {
0026         return (QLocale().measurementSystem() == QLocale::MetricSystem);
0027     }
0028     return unit == QLatin1String("Celsius");
0029 };
0030 
0031 static double convertTemp(double temp, const QString &unit)
0032 {
0033     if (KWeather::isCelsius(unit)) {
0034         return temp;
0035     } else {
0036         return temp * 1.8 + 32;
0037     }
0038 };
0039 
0040 enum class WindDirection { N, NW, W, SW, S, SE, E, NE };
0041 enum class Backend { NMI, OWM };
0042 }