diff options
Diffstat (limited to 'src/corelib')
-rw-r--r-- | src/corelib/configure.json | 8 | ||||
-rw-r--r-- | src/corelib/global/qconfig-bootstrapped.h | 1 | ||||
-rw-r--r-- | src/corelib/kernel/qmetatype.cpp | 2 | ||||
-rw-r--r-- | src/corelib/kernel/qmetatype.h | 9 | ||||
-rw-r--r-- | src/corelib/kernel/qmetatype_p.h | 2 | ||||
-rw-r--r-- | src/corelib/kernel/qvariant.cpp | 8 | ||||
-rw-r--r-- | src/corelib/kernel/qvariant.h | 8 | ||||
-rw-r--r-- | src/corelib/tools/qeasingcurve.h | 3 | ||||
-rw-r--r-- | src/corelib/tools/qtimeline.h | 4 | ||||
-rw-r--r-- | src/corelib/tools/tools.pri | 14 |
10 files changed, 51 insertions, 8 deletions
diff --git a/src/corelib/configure.json b/src/corelib/configure.json index 83c30fb47b..b2f032a667 100644 --- a/src/corelib/configure.json +++ b/src/corelib/configure.json @@ -1009,11 +1009,17 @@ "condition": "features.textcodec", "output": [ "publicFeature", "feature" ] }, + "easingcurve": { + "label": "Easing curve", + "purpose": "Provides easing curve.", + "section": "Utilities", + "output": [ "publicFeature" ] + }, "animation": { "label": "Animation", "purpose": "Provides a framework for animations.", "section": "Utilities", - "condition": "features.properties", + "condition": "features.properties && features.easingcurve", "output": [ "publicFeature", "feature" ] }, "statemachine": { diff --git a/src/corelib/global/qconfig-bootstrapped.h b/src/corelib/global/qconfig-bootstrapped.h index 10458e41d7..ce3b672637 100644 --- a/src/corelib/global/qconfig-bootstrapped.h +++ b/src/corelib/global/qconfig-bootstrapped.h @@ -79,6 +79,7 @@ #define QT_NO_DATASTREAM #define QT_FEATURE_datestring 1 #define QT_FEATURE_datetimeparser -1 +#define QT_FEATURE_easingcurve -1 #define QT_FEATURE_etw -1 #define QT_FEATURE_getauxval (QT_HAS_INCLUDE(<sys/auxv.h>) ? 1 : -1) #define QT_FEATURE_getentropy -1 diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 754f5a13e4..356a675517 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -47,7 +47,9 @@ #include "qstringlist.h" #include "qvector.h" #include "qlocale.h" +#if QT_CONFIG(easingcurve) #include "qeasingcurve.h" +#endif #include "quuid.h" #include "qvariant.h" #include "qdatastream.h" diff --git a/src/corelib/kernel/qmetatype.h b/src/corelib/kernel/qmetatype.h index a6c90fc3ed..d41f7ee80e 100644 --- a/src/corelib/kernel/qmetatype.h +++ b/src/corelib/kernel/qmetatype.h @@ -94,6 +94,13 @@ inline Q_DECL_CONSTEXPR int qMetaTypeId(); #define QT_FOR_EACH_STATIC_PRIMITIVE_POINTER(F)\ F(VoidStar, 31, void*) \ +#if QT_CONFIG(easingcurve) +#define QT_FOR_EACH_STATIC_EASINGCURVE(F)\ + F(QEasingCurve, 29, QEasingCurve) +#else +#define QT_FOR_EACH_STATIC_EASINGCURVE(F) +#endif + #if QT_CONFIG(itemmodel) #define QT_FOR_EACH_STATIC_ITEMMODEL_CLASS(F)\ F(QModelIndex, 42, QModelIndex) \ @@ -122,7 +129,7 @@ inline Q_DECL_CONSTEXPR int qMetaTypeId(); F(QPoint, 25, QPoint) \ F(QPointF, 26, QPointF) \ F(QRegExp, 27, QRegExp) \ - F(QEasingCurve, 29, QEasingCurve) \ + QT_FOR_EACH_STATIC_EASINGCURVE(F) \ F(QUuid, 30, QUuid) \ F(QVariant, 41, QVariant) \ F(QRegularExpression, 44, QRegularExpression) \ diff --git a/src/corelib/kernel/qmetatype_p.h b/src/corelib/kernel/qmetatype_p.h index fa7208369a..d743d5a5c7 100644 --- a/src/corelib/kernel/qmetatype_p.h +++ b/src/corelib/kernel/qmetatype_p.h @@ -206,7 +206,9 @@ template<> struct TypeDefinition<QCborArray> { static const bool IsAvailable = f template<> struct TypeDefinition<QCborMap> { static const bool IsAvailable = false; }; template<> struct TypeDefinition<QCborSimpleType> { static const bool IsAvailable = false; }; template<> struct TypeDefinition<QCborValue> { static const bool IsAvailable = false; }; +#if QT_CONFIG(easingcurve) template<> struct TypeDefinition<QEasingCurve> { static const bool IsAvailable = false; }; +#endif template<> struct TypeDefinition<QJsonArray> { static const bool IsAvailable = false; }; template<> struct TypeDefinition<QJsonDocument> { static const bool IsAvailable = false; }; template<> struct TypeDefinition<QJsonObject> { static const bool IsAvailable = false; }; diff --git a/src/corelib/kernel/qvariant.cpp b/src/corelib/kernel/qvariant.cpp index 511dc3c81c..43a3fb1db0 100644 --- a/src/corelib/kernel/qvariant.cpp +++ b/src/corelib/kernel/qvariant.cpp @@ -46,7 +46,9 @@ #include "qdebug.h" #include "qmap.h" #include "qdatetime.h" +#if QT_CONFIG(easingcurve) #include "qeasingcurve.h" +#endif #include "qlist.h" #if QT_CONFIG(regularexpression) #include "qregularexpression.h" @@ -2194,7 +2196,7 @@ QVariant::QVariant(const QTime &val) QVariant::QVariant(const QDateTime &val) : d(DateTime) { v_construct<QDateTime>(&d, val); } -#ifndef QT_BOOTSTRAPPED +#if QT_CONFIG(easingcurve) QVariant::QVariant(const QEasingCurve &val) : d(EasingCurve) { v_construct<QEasingCurve>(&d, val); } @@ -2471,7 +2473,9 @@ static const ushort mapIdFromQt3ToCurrent[MapFromThreeCount] = QVariant::Pen, QVariant::LongLong, QVariant::ULongLong, +#if QT_CONFIG(easingcurve) QVariant::EasingCurve +#endif }; /*! @@ -2788,7 +2792,7 @@ QDateTime QVariant::toDateTime() const \sa canConvert(int targetTypeId), convert() */ -#ifndef QT_BOOTSTRAPPED +#if QT_CONFIG(easingcurve) QEasingCurve QVariant::toEasingCurve() const { return qVariantToHelper<QEasingCurve>(d, handlerManager); diff --git a/src/corelib/kernel/qvariant.h b/src/corelib/kernel/qvariant.h index 39b7e4c0ce..e7d3d9c835 100644 --- a/src/corelib/kernel/qvariant.h +++ b/src/corelib/kernel/qvariant.h @@ -66,7 +66,9 @@ class QBitArray; class QDataStream; class QDate; class QDateTime; +#if QT_CONFIG(easingcurve) class QEasingCurve; +#endif class QLine; class QLineF; class QLocale; @@ -162,7 +164,9 @@ class Q_CORE_EXPORT QVariant RegExp = QMetaType::QRegExp, RegularExpression = QMetaType::QRegularExpression, Hash = QMetaType::QVariantHash, +#if QT_CONFIG(easingcurve) EasingCurve = QMetaType::QEasingCurve, +#endif Uuid = QMetaType::QUuid, #if QT_CONFIG(itemmodel) ModelIndex = QMetaType::QModelIndex, @@ -254,7 +258,9 @@ class Q_CORE_EXPORT QVariant #endif // QT_CONFIG(regularexpression) #ifndef QT_BOOTSTRAPPED QVariant(const QUrl &url); +#if QT_CONFIG(easingcurve) QVariant(const QEasingCurve &easing); +#endif QVariant(const QUuid &uuid); QVariant(const QJsonValue &jsonValue); QVariant(const QJsonObject &jsonObject); @@ -328,7 +334,9 @@ class Q_CORE_EXPORT QVariant #endif // QT_CONFIG(regularexpression) #ifndef QT_BOOTSTRAPPED QUrl toUrl() const; +#if QT_CONFIG(easingcurve) QEasingCurve toEasingCurve() const; +#endif QUuid toUuid() const; QJsonValue toJsonValue() const; QJsonObject toJsonObject() const; diff --git a/src/corelib/tools/qeasingcurve.h b/src/corelib/tools/qeasingcurve.h index 725ddd5dcc..d3a468bb22 100644 --- a/src/corelib/tools/qeasingcurve.h +++ b/src/corelib/tools/qeasingcurve.h @@ -41,6 +41,9 @@ #define QEASINGCURVE_H #include <QtCore/qglobal.h> + +QT_REQUIRE_CONFIG(easingcurve); + #include <QtCore/qobjectdefs.h> #include <QtCore/qvector.h> #if QT_DEPRECATED_SINCE(5, 0) diff --git a/src/corelib/tools/qtimeline.h b/src/corelib/tools/qtimeline.h index d9982bdb58..9a60cd679f 100644 --- a/src/corelib/tools/qtimeline.h +++ b/src/corelib/tools/qtimeline.h @@ -40,6 +40,10 @@ #ifndef QTIMELINE_H #define QTIMELINE_H +#include <QtCore/qglobal.h> + +QT_REQUIRE_CONFIG(easingcurve); + #include <QtCore/qeasingcurve.h> #include <QtCore/qobject.h> diff --git a/src/corelib/tools/tools.pri b/src/corelib/tools/tools.pri index a2236f90f2..40c84157cd 100644 --- a/src/corelib/tools/tools.pri +++ b/src/corelib/tools/tools.pri @@ -12,7 +12,6 @@ HEADERS += \ tools/qcontainerfwd.h \ tools/qcontainertools_impl.h \ tools/qcryptographichash.h \ - tools/qeasingcurve.h \ tools/qfreelist_p.h \ tools/qhash.h \ tools/qhashfunctions.h \ @@ -43,7 +42,6 @@ HEADERS += \ tools/qsimd_p.h \ tools/qsize.h \ tools/qstack.h \ - tools/qtimeline.h \ tools/qtools_p.h \ tools/qvarlengtharray.h \ tools/qvector.h \ @@ -54,7 +52,6 @@ SOURCES += \ tools/qarraydata.cpp \ tools/qbitarray.cpp \ tools/qcryptographichash.cpp \ - tools/qeasingcurve.cpp \ tools/qfreelist.cpp \ tools/qhash.cpp \ tools/qline.cpp \ @@ -72,7 +69,6 @@ SOURCES += \ tools/qsharedpointer.cpp \ tools/qsimd.cpp \ tools/qsize.cpp \ - tools/qtimeline.cpp \ tools/qversionnumber.cpp msvc: NO_PCH_SOURCES += tools/qvector_msvc.cpp @@ -104,6 +100,16 @@ qtConfig(system-doubleconversion) { include($$PWD/../../3rdparty/double-conversion/double-conversion.pri) } +qtConfig(easingcurve) { + HEADERS += \ + tools/qeasingcurve.h \ + tools/qtimeline.h + + SOURCES += \ + tools/qeasingcurve.cpp \ + tools/qtimeline.cpp +} + # Note: libm should be present by default becaue this is C++ unix:!macx-icc:!vxworks:!haiku:!integrity:!wasm: LIBS_PRIVATE += -lm |