diff options
Diffstat (limited to 'src/quick/util/qquicktimeline_p_p.h')
-rw-r--r-- | src/quick/util/qquicktimeline_p_p.h | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/src/quick/util/qquicktimeline_p_p.h b/src/quick/util/qquicktimeline_p_p.h index 80076f7030..367bbf8c7d 100644 --- a/src/quick/util/qquicktimeline_p_p.h +++ b/src/quick/util/qquicktimeline_p_p.h @@ -26,7 +26,7 @@ class QQuickTimeLineValue; class QQuickTimeLineCallback; struct QQuickTimeLinePrivate; class QQuickTimeLineObject; -class Q_QUICK_PRIVATE_EXPORT QQuickTimeLine : public QObject, QAbstractAnimationJob +class Q_QUICK_EXPORT QQuickTimeLine : public QObject, QAbstractAnimationJob { Q_OBJECT public: @@ -134,29 +134,21 @@ template<class T> class QQuickTimeLineValueProxy : public QQuickTimeLineValue { public: - QQuickTimeLineValueProxy(T *cls, void (T::*func)(qreal), qreal v = 0.) - : QQuickTimeLineValue(v), _class(cls), _setFunctionReal(func), _setFunctionInt(nullptr) + QQuickTimeLineValueProxy(T *object, void (T::*func)(qreal), qreal v = 0.) + : QQuickTimeLineValue(v), object(object), setter(func) { - Q_ASSERT(_class); - } - - QQuickTimeLineValueProxy(T *cls, void (T::*func)(int), qreal v = 0.) - : QQuickTimeLineValue(v), _class(cls), _setFunctionReal(0), _setFunctionInt(func) - { - Q_ASSERT(_class); + Q_ASSERT(object); } void setValue(qreal v) override { QQuickTimeLineValue::setValue(v); - if (_setFunctionReal) (_class->*_setFunctionReal)(v); - else if (_setFunctionInt) (_class->*_setFunctionInt)((int)v); + (object->*setter)(v); } private: - T *_class; - void (T::*_setFunctionReal)(qreal); - void (T::*_setFunctionInt)(int); + T *object; + void (T::*setter)(qreal); }; QT_END_NAMESPACE |