diff options
Diffstat (limited to 'src/corelib/time/qtimezoneprivate_p.h')
-rw-r--r-- | src/corelib/time/qtimezoneprivate_p.h | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/corelib/time/qtimezoneprivate_p.h b/src/corelib/time/qtimezoneprivate_p.h index f1b7fea1f9..eb847b80f5 100644 --- a/src/corelib/time/qtimezoneprivate_p.h +++ b/src/corelib/time/qtimezoneprivate_p.h @@ -1,5 +1,6 @@ /**************************************************************************** ** +** Copyright (C) 2021 The Qt Company Ltd. ** Copyright (C) 2013 John Layt <jlayt@kde.org> ** Contact: https://www.qt.io/licensing/ ** @@ -144,7 +145,8 @@ public: static QTimeZone::OffsetData invalidOffsetData(); static QTimeZone::OffsetData toOffsetData(const Data &data); static bool isValidId(const QByteArray &ianaId); - static QString isoOffsetFormat(int offsetFromUtc); + static QString isoOffsetFormat(int offsetFromUtc, + QTimeZone::NameType mode = QTimeZone::OffsetName); static QByteArray ianaIdToWindowsId(const QByteArray &ianaId); static QByteArray windowsIdToDefaultIanaId(const QByteArray &windowsId); @@ -180,7 +182,7 @@ public: // Create named time zone QUtcTimeZonePrivate(const QByteArray &utcId); // Create offset from UTC - QUtcTimeZonePrivate(int offsetSeconds); + QUtcTimeZonePrivate(qint32 offsetSeconds); // Create custom offset from UTC QUtcTimeZonePrivate(const QByteArray &zoneId, int offsetSeconds, const QString &name, const QString &abbreviation, QLocale::Country country, @@ -241,6 +243,7 @@ public: QIcuTimeZonePrivate *clone() const override; + using QTimeZonePrivate::displayName; QString displayName(QTimeZone::TimeType timeType, QTimeZone::NameType nameType, const QLocale &locale) const override; QString abbreviation(qint64 atMSecsSinceEpoch) const override; @@ -343,12 +346,17 @@ public: QList<QByteArray> availableTimeZoneIds(QLocale::Country country) const override; private: - void init(const QByteArray &ianaId); + static QByteArray staticSystemTimeZoneId(); QVector<QTimeZonePrivate::Data> getPosixTransitions(qint64 msNear) const; Data dataForTzTransition(QTzTransitionTime tran) const; #if QT_CONFIG(icu) - mutable QSharedDataPointer<QTimeZonePrivate> m_icu; +# ifdef __cpp_lib_is_final + static_assert(std::is_final<QIcuTimeZonePrivate>::value, + "if QIcuTimeZonePrivate isn't final, we may need to specialize " + "QExplicitlySharedDataPointer::clone() to call QTimeZonePrivate::clone()"); +# endif + mutable QExplicitlySharedDataPointer<const QIcuTimeZonePrivate> m_icu; #endif QTzTimeZoneCacheEntry cached_data; QVector<QTzTransitionTime> tranCache() const { return cached_data.m_tranTimes; } |