diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2019-08-15 13:09:55 +0200 |
---|---|---|
committer | Alexandru Croitor <alexandru.croitor@qt.io> | 2019-08-15 16:53:19 +0200 |
commit | c7ec7cd2a1ae9bec31113fae1f1e549b2bf98e0b (patch) | |
tree | fc81fba4e7815ea061da277cf3bcf3102866932f /src/corelib/tools/qtimeline.cpp | |
parent | 7947032e2d1d68b2c0f79874db7adcf560851f29 (diff) | |
parent | 6132260da394a9627947f0fe6a279c20863b6ad2 (diff) |
Merge branch 'wip/qt6' into wip/cmake
Change-Id: I50ac36b8803c296998149e98cc61e38687cdd14b
Diffstat (limited to 'src/corelib/tools/qtimeline.cpp')
-rw-r--r-- | src/corelib/tools/qtimeline.cpp | 35 |
1 files changed, 15 insertions, 20 deletions
diff --git a/src/corelib/tools/qtimeline.cpp b/src/corelib/tools/qtimeline.cpp index fa6c45aa11..0b11e7c77b 100644 --- a/src/corelib/tools/qtimeline.cpp +++ b/src/corelib/tools/qtimeline.cpp @@ -526,29 +526,24 @@ QTimeLine::CurveShape QTimeLine::curveShape() const return EaseInOutCurve; } -void QTimeLine::setCurveShape(CurveShape shape) +static QEasingCurve::Type convert(QTimeLine::CurveShape shape) { switch (shape) { - default: - case EaseInOutCurve: - setEasingCurve(QEasingCurve(QEasingCurve::InOutSine)); - break; - case EaseInCurve: - setEasingCurve(QEasingCurve(QEasingCurve::InCurve)); - break; - case EaseOutCurve: - setEasingCurve(QEasingCurve(QEasingCurve::OutCurve)); - break; - case LinearCurve: - setEasingCurve(QEasingCurve(QEasingCurve::Linear)); - break; - case SineCurve: - setEasingCurve(QEasingCurve(QEasingCurve::SineCurve)); - break; - case CosineCurve: - setEasingCurve(QEasingCurve(QEasingCurve::CosineCurve)); - break; +#define CASE(x, y) case QTimeLine::x: return QEasingCurve::y + CASE(EaseInOutCurve, InOutSine); + CASE(EaseInCurve, InCurve); + CASE(EaseOutCurve, OutCurve); + CASE(LinearCurve, Linear); + CASE(SineCurve, SineCurve); + CASE(CosineCurve, CosineCurve); +#undef CASE } + Q_UNREACHABLE(); +} + +void QTimeLine::setCurveShape(CurveShape shape) +{ + setEasingCurve(convert(shape)); } /*! |