summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@qt.io>2022-01-26 09:09:53 +0100
committerMarc Mutz <marc.mutz@qt.io>2022-01-30 00:03:45 +0100
commit1ae5b3628d0858221542993331ede4c3ee7b3630 (patch)
tree4889c681305d22c1c353e8ba1e6af150ad829a51
parent9bfc8f348d39a3606847e2bc2e070bf7cdccc99e (diff)
QCalendar: replace two overloads with one QAnyStringView function
The backend was already ported, so this is just about applying QT_REMOVED_SINCE and updating the docs. Change-Id: I2c78908deb9cdb3cee19ce8bc148ab3117c1ad9a Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
-rw-r--r--src/corelib/compat/removed_api.cpp8
-rw-r--r--src/corelib/time/qcalendar.cpp14
-rw-r--r--src/corelib/time/qcalendar.h5
3 files changed, 16 insertions, 11 deletions
diff --git a/src/corelib/compat/removed_api.cpp b/src/corelib/compat/removed_api.cpp
index 231b03c317..d21813bbac 100644
--- a/src/corelib/compat/removed_api.cpp
+++ b/src/corelib/compat/removed_api.cpp
@@ -145,6 +145,14 @@ int QOperatingSystemVersion::compare(const QOperatingSystemVersion &v1,
#if QT_REMOVED_SINCE(6, 4)
+#include "qcalendar.h"
+
+QCalendar::QCalendar(QStringView name)
+ : QCalendar(QAnyStringView{name}) {}
+
+QCalendar::QCalendar(QLatin1String name)
+ : QCalendar(QAnyStringView{name}) {}
+
#include "qversionnumber.h"
QT_WARNING_PUSH
diff --git a/src/corelib/time/qcalendar.cpp b/src/corelib/time/qcalendar.cpp
index 9ef7216514..3c82759b19 100644
--- a/src/corelib/time/qcalendar.cpp
+++ b/src/corelib/time/qcalendar.cpp
@@ -1169,8 +1169,7 @@ const QCalendarBackend *QCalendarBackend::gregorian()
/*!
\fn QCalendar::QCalendar()
\fn QCalendar::QCalendar(QCalendar::System system)
- \fn QCalendar::QCalendar(QLatin1String name)
- \fn QCalendar::QCalendar(QStringView name)
+ \fn QCalendar::QCalendar(QAnyStringView name)
Constructs a calendar object.
@@ -1180,6 +1179,9 @@ const QCalendarBackend *QCalendarBackend::gregorian()
calendar being constructed by other means first. With no argument, the
default constructor returns the Gregorian calendar.
+ \note In Qt versions before 6.4, the constructor by \a name accepted only
+ QStringView and QLatin1String, not QAnyStringView.
+
\sa QCalendar, System, isValid()
*/
@@ -1213,13 +1215,7 @@ QCalendar::QCalendar(QCalendar::SystemId id)
Q_ASSERT(!d_ptr || d_ptr->calendarId().index() == id.index());
}
-QCalendar::QCalendar(QLatin1String name)
- : d_ptr(QCalendarBackend::fromName(name))
-{
- Q_ASSERT(!d_ptr || d_ptr->calendarId().isValid());
-}
-
-QCalendar::QCalendar(QStringView name)
+QCalendar::QCalendar(QAnyStringView name)
: d_ptr(QCalendarBackend::fromName(name))
{
Q_ASSERT(!d_ptr || d_ptr->calendarId().isValid());
diff --git a/src/corelib/time/qcalendar.h b/src/corelib/time/qcalendar.h
index 3238fff7d8..adfbc66ffb 100644
--- a/src/corelib/time/qcalendar.h
+++ b/src/corelib/time/qcalendar.h
@@ -146,10 +146,11 @@ public:
explicit QCalendar(); // Gregorian, optimised
explicit QCalendar(System system);
- // ### Qt 7: remove
+#if QT_REMOVED_SINCE(6, 4)
explicit QCalendar(QLatin1String name);
- // ### Qt 7: use QAnyStringView
explicit QCalendar(QStringView name);
+#endif
+ explicit QCalendar(QAnyStringView name);
explicit QCalendar(SystemId id);
// QCalendar is a trivially copyable value type.