diff --git a/src/widgets/graphicsview/qgraphicsitemanimation.cpp b/src/widgets/graphicsview/qgraphicsitemanimation.cpp index e5f0149d64..214a66ac41 100644 --- a/src/widgets/graphicsview/qgraphicsitemanimation.cpp +++ b/src/widgets/graphicsview/qgraphicsitemanimation.cpp @@ -124,21 +124,22 @@ public: qreal step; qreal value; }; - QList xPosition; - QList yPosition; - QList rotation; - QList verticalScale; - QList horizontalScale; - QList verticalShear; - QList horizontalShear; - QList xTranslation; - QList yTranslation; + QVector xPosition; + QVector yPosition; + QVector rotation; + QVector verticalScale; + QVector horizontalScale; + QVector verticalShear; + QVector horizontalShear; + QVector xTranslation; + QVector yTranslation; - qreal linearValueForStep(qreal step, QList *source, qreal defaultValue = 0); - void insertUniquePair(qreal step, qreal value, QList *binList, const char* method); + qreal linearValueForStep(qreal step, QVector *source, qreal defaultValue = 0); + void insertUniquePair(qreal step, qreal value, QVector *binList, const char* method); }; +Q_DECLARE_TYPEINFO(QGraphicsItemAnimationPrivate::Pair, Q_PRIMITIVE_TYPE); -qreal QGraphicsItemAnimationPrivate::linearValueForStep(qreal step, QList *source, qreal defaultValue) +qreal QGraphicsItemAnimationPrivate::linearValueForStep(qreal step, QVector *source, qreal defaultValue) { if (source->isEmpty()) return defaultValue; @@ -168,14 +169,14 @@ qreal QGraphicsItemAnimationPrivate::linearValueForStep(qreal step, QList return valueBefore + (valueAfter - valueBefore) * ((step - stepBefore) / (stepAfter - stepBefore)); } -void QGraphicsItemAnimationPrivate::insertUniquePair(qreal step, qreal value, QList *binList, const char* method) +void QGraphicsItemAnimationPrivate::insertUniquePair(qreal step, qreal value, QVector *binList, const char* method) { if (!check_step_valid(step, method)) return; Pair pair(step, value); - QList::iterator result = std::lower_bound(binList->begin(), binList->end(), pair); + const QVector::iterator result = std::lower_bound(binList->begin(), binList->end(), pair); if ((result != binList->end()) && !(pair < *result)) result->value = value; else {