diff options
author | Michael Brasser <michael.brasser@nokia.com> | 2010-04-22 00:58:39 (GMT) |
---|---|---|
committer | Michael Brasser <michael.brasser@nokia.com> | 2010-04-22 01:27:48 (GMT) |
commit | 9487cbbeba7654200339c1850503b494b46158d1 (patch) | |
tree | d5757a0feb7a9e5e54915a55b295c22aa72606ce /src/declarative/util/qdeclarativeanimation.cpp | |
parent | 141b48584633189c0fa83e9ca04f017048a5c5ff (diff) | |
download | Qt-9487cbbeba7654200339c1850503b494b46158d1.zip Qt-9487cbbeba7654200339c1850503b494b46158d1.tar.gz Qt-9487cbbeba7654200339c1850503b494b46158d1.tar.bz2 |
Add duration and easing properties to AnchorAnimation.
Diffstat (limited to 'src/declarative/util/qdeclarativeanimation.cpp')
-rw-r--r-- | src/declarative/util/qdeclarativeanimation.cpp | 63 |
1 files changed, 62 insertions, 1 deletions
diff --git a/src/declarative/util/qdeclarativeanimation.cpp b/src/declarative/util/qdeclarativeanimation.cpp index 27f37df..4f7719b 100644 --- a/src/declarative/util/qdeclarativeanimation.cpp +++ b/src/declarative/util/qdeclarativeanimation.cpp @@ -1674,7 +1674,7 @@ void QDeclarativePropertyAnimationPrivate::init() /*! \qmlproperty int PropertyAnimation::duration - This property holds the duration of the transition, in milliseconds. + This property holds the duration of the animation, in milliseconds. The default value is 250. */ @@ -2690,6 +2690,67 @@ QDeclarativeListProperty<QDeclarativeItem> QDeclarativeAnchorAnimation::targets( return QDeclarativeListProperty<QDeclarativeItem>(this, d->targets); } +/*! + \qmlproperty int AnchorAnimation::duration + This property holds the duration of the animation, in milliseconds. + + The default value is 250. +*/ +int QDeclarativeAnchorAnimation::duration() const +{ + Q_D(const QDeclarativeAnchorAnimation); + return d->va->duration(); +} + +void QDeclarativeAnchorAnimation::setDuration(int duration) +{ + if (duration < 0) { + qmlInfo(this) << tr("Cannot set a duration of < 0"); + return; + } + + Q_D(QDeclarativeAnchorAnimation); + if (d->va->duration() == duration) + return; + d->va->setDuration(duration); + emit durationChanged(duration); +} + +/*! + \qmlproperty enumeration AnchorAnimation::easing.type + \qmlproperty real AnchorAnimation::easing.amplitude + \qmlproperty real AnchorAnimation::easing.overshoot + \qmlproperty real AnchorAnimation::easing.period + \brief the easing curve used for the animation. + + To specify an easing curve you need to specify at least the type. For some curves you can also specify + amplitude, period and/or overshoot. The default easing curve is + Linear. + + \qml + AnchorAnimation { easing.type: "InOutQuad" } + \endqml + + See the \l{PropertyAnimation::easing.type} documentation for information + about the different types of easing curves. +*/ + +QEasingCurve QDeclarativeAnchorAnimation::easing() const +{ + Q_D(const QDeclarativeAnchorAnimation); + return d->va->easingCurve(); +} + +void QDeclarativeAnchorAnimation::setEasing(const QEasingCurve &e) +{ + Q_D(QDeclarativeAnchorAnimation); + if (d->va->easingCurve() == e) + return; + + d->va->setEasingCurve(e); + emit easingChanged(e); +} + void QDeclarativeAnchorAnimation::transition(QDeclarativeStateActions &actions, QDeclarativeProperties &modified, TransitionDirection direction) |