summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2015-01-14 16:27:31 -0800
committerThiago Macieira <thiago.macieira@intel.com>2015-01-16 03:12:13 +0100
commit514af281e39cb54daf667305b3f98e0782dbe689 (patch)
tree4c88dab593cf7b89bec609006ed675f8dd86eeab /src
parent3d051d41a3034f253da94ce7eef4af579089cb64 (diff)
Add QTimeZone::{systemTimeZone,utc}
[ChangeLog][QtCore][QTimeZone] Added methods systemTimeZone() and utc() that return QTimeZone objects for the system time zone and for UTC, respectively. Change-Id: Ic5d393bfd36e48a193fcffff13b96821bb8514b9 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/corelib/tools/qdatetime.cpp8
-rw-r--r--src/corelib/tools/qtimezone.cpp23
-rw-r--r--src/corelib/tools/qtimezone.h2
3 files changed, 28 insertions, 5 deletions
diff --git a/src/corelib/tools/qdatetime.cpp b/src/corelib/tools/qdatetime.cpp
index 69d4bd7d99..f3dfb5347a 100644
--- a/src/corelib/tools/qdatetime.cpp
+++ b/src/corelib/tools/qdatetime.cpp
@@ -3186,13 +3186,11 @@ QTimeZone QDateTime::timeZone() const
d->m_timeZone = QTimeZone(d->m_offsetFromUtc);
return d->m_timeZone;
case Qt::UTC:
- if (!d->m_timeZone.isValid())
- d->m_timeZone = QTimeZone(QTimeZonePrivate::utcQByteArray());
- return d->m_timeZone;
- case Qt::TimeZone :
+ return QTimeZone::utc();
+ case Qt::TimeZone:
return d->m_timeZone;
case Qt::LocalTime:
- return QTimeZone(QTimeZone::systemTimeZoneId());
+ return QTimeZone::systemTimeZone();
}
return QTimeZone();
}
diff --git a/src/corelib/tools/qtimezone.cpp b/src/corelib/tools/qtimezone.cpp
index fb5af2bf4a..30c4c60167 100644
--- a/src/corelib/tools/qtimezone.cpp
+++ b/src/corelib/tools/qtimezone.cpp
@@ -789,6 +789,29 @@ QByteArray QTimeZone::systemTimeZoneId()
}
/*!
+ \since 5.5
+ Returns a QTimeZone object that refers to the local system time, as
+ specified by systemTimeZoneId().
+
+ \sa utc()
+*/
+QTimeZone QTimeZone::systemTimeZone()
+{
+ return QTimeZone(QTimeZone::systemTimeZoneId());
+}
+
+/*!
+ \since 5.5
+ Returns a QTimeZone object that refers to UTC (Universal Time Coordinated).
+
+ \sa systemTimeZone()
+*/
+QTimeZone QTimeZone::utc()
+{
+ return QTimeZone(QTimeZonePrivate::utcQByteArray());
+}
+
+/*!
Returns \c true if a given time zone \a ianaId is available on this system.
\sa availableTimeZoneIds()
diff --git a/src/corelib/tools/qtimezone.h b/src/corelib/tools/qtimezone.h
index ef0bdc57cd..e35cee6bbe 100644
--- a/src/corelib/tools/qtimezone.h
+++ b/src/corelib/tools/qtimezone.h
@@ -117,6 +117,8 @@ public:
OffsetDataList transitions(const QDateTime &fromDateTime, const QDateTime &toDateTime) const;
static QByteArray systemTimeZoneId();
+ static QTimeZone systemTimeZone();
+ static QTimeZone utc();
static bool isTimeZoneIdAvailable(const QByteArray &ianaId);