/* SPDX-FileCopyrightText: 2014 Martin Klapetek SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL */ #pragma once #include #include #include #include #include class TimeZonesI18n : public QObject { Q_OBJECT QML_ELEMENT QML_SINGLETON public: explicit TimeZonesI18n(QObject *parent = nullptr); Q_INVOKABLE QString i18nContinents(const QString &continent); Q_INVOKABLE QString i18nCountry(QLocale::Country country); Q_INVOKABLE QString i18nCity(const QString &timezoneId); private: void init(); QHash m_i18nContinents; QScopedPointer m_tzNames; bool m_isInitialized; };