diff options
author | Marc Mutz <marc.mutz@qt.io> | 2023-12-12 09:47:12 +0100 |
---|---|---|
committer | Marc Mutz <marc.mutz@qt.io> | 2023-12-14 20:29:45 +0100 |
commit | 0d09b4f6b9cae84b78d59cecab6d6feb993b112a (patch) | |
tree | 00bd7db4d5a7da65fcd65770e446f9f91b17c110 | |
parent | 1a1735a7cf02d83cef58be41f68cec4a2764e890 (diff) |
Q*Animation: s/QPair/std::pair/
Also port from qMakePair() to just braced initialization and CTAD.
As a drive-by, de-duplicate some code around a lower_bound(), and port
from `typedef` to `using`.
Pick-to: 6.7
Task-number: QTBUG-115841
Change-Id: I3e907ad3bb10b5ca169422ad90d3a65b1b33f926
Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
-rw-r--r-- | src/corelib/animation/qpropertyanimation.cpp | 2 | ||||
-rw-r--r-- | src/corelib/animation/qvariantanimation.cpp | 15 | ||||
-rw-r--r-- | src/corelib/animation/qvariantanimation.h | 2 |
3 files changed, 10 insertions, 9 deletions
diff --git a/src/corelib/animation/qpropertyanimation.cpp b/src/corelib/animation/qpropertyanimation.cpp index 3bee809509..d461668dbb 100644 --- a/src/corelib/animation/qpropertyanimation.cpp +++ b/src/corelib/animation/qpropertyanimation.cpp @@ -261,7 +261,7 @@ void QPropertyAnimation::updateState(QAbstractAnimation::State newState, { Q_CONSTINIT static QBasicMutex mutex; auto locker = qt_unique_lock(mutex); - typedef QPair<QObject *, QByteArray> QPropertyAnimationPair; + using QPropertyAnimationPair = std::pair<QObject *, QByteArray>; typedef QHash<QPropertyAnimationPair, QPropertyAnimation*> QPropertyAnimationHash; Q_CONSTINIT static QPropertyAnimationHash hash; diff --git a/src/corelib/animation/qvariantanimation.cpp b/src/corelib/animation/qvariantanimation.cpp index d62946f222..b4d47aae8f 100644 --- a/src/corelib/animation/qvariantanimation.cpp +++ b/src/corelib/animation/qvariantanimation.cpp @@ -203,7 +203,7 @@ void QVariantAnimationPrivate::recalculateCurrentInterval(bool force/*=false*/) //let's update currentInterval QVariantAnimation::KeyValues::const_iterator it = std::lower_bound(keyValues.constBegin(), keyValues.constEnd(), - qMakePair(progress, QVariant()), + std::pair{progress, QVariant{}}, animationValueLessThan); if (it == keyValues.constBegin()) { //the item pointed to by it is the start element in the range @@ -211,7 +211,7 @@ void QVariantAnimationPrivate::recalculateCurrentInterval(bool force/*=false*/) currentInterval.start = *it; currentInterval.end = *(it+1); } else { - currentInterval.start = qMakePair(qreal(0), defaultStartEndValue); + currentInterval.start = {qreal(0), defaultStartEndValue}; currentInterval.end = *it; } } else if (it == keyValues.constEnd()) { @@ -223,7 +223,7 @@ void QVariantAnimationPrivate::recalculateCurrentInterval(bool force/*=false*/) } else { //we use the default end value here currentInterval.start = *it; - currentInterval.end = qMakePair(qreal(1), defaultStartEndValue); + currentInterval.end = {qreal(1), defaultStartEndValue}; } } else { currentInterval.start = *(it-1); @@ -264,9 +264,10 @@ void QVariantAnimationPrivate::setCurrentValueForProgress(const qreal progress) QVariant QVariantAnimationPrivate::valueAt(qreal step) const { - QVariantAnimation::KeyValues::const_iterator result = - std::lower_bound(keyValues.constBegin(), keyValues.constEnd(), qMakePair(step, QVariant()), animationValueLessThan); - if (result != keyValues.constEnd() && !animationValueLessThan(qMakePair(step, QVariant()), *result)) + const auto sought = std::pair{step, QVariant()}; + const auto result = std::lower_bound(keyValues.cbegin(), keyValues.cend(), sought, + animationValueLessThan); + if (result != keyValues.cend() && !animationValueLessThan(sought, *result)) return result->second; return QVariant(); @@ -552,7 +553,7 @@ QVariant QVariantAnimation::keyValueAt(qreal step) const /*! \typedef QVariantAnimation::KeyValue - This is a typedef for QPair<qreal, QVariant>. + This is a typedef for std::pair<qreal, QVariant>. */ /*! \typedef QVariantAnimation::KeyValues diff --git a/src/corelib/animation/qvariantanimation.h b/src/corelib/animation/qvariantanimation.h index 640c057ef8..4bdb971357 100644 --- a/src/corelib/animation/qvariantanimation.h +++ b/src/corelib/animation/qvariantanimation.h @@ -26,7 +26,7 @@ class Q_CORE_EXPORT QVariantAnimation : public QAbstractAnimation BINDABLE bindableEasingCurve) public: - typedef QPair<qreal, QVariant> KeyValue; + using KeyValue = std::pair<qreal, QVariant>; typedef QList<KeyValue> KeyValues; QVariantAnimation(QObject *parent = nullptr); |