summaryrefslogtreecommitdiffstats
path: root/src/declarative/util/qmltransition.cpp
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@nokia.com>2010-02-23 12:02:52 (GMT)
committerThiago Macieira <thiago.macieira@nokia.com>2010-02-23 12:02:52 (GMT)
commitde4332a4728e739b37e9c7b04c021e150e096270 (patch)
tree619aae505826654f3d89492efa53f758214fea6f /src/declarative/util/qmltransition.cpp
parenta419d587a666aaf55310b3a18e9f9e1993fef16e (diff)
parent3db40b0be40c946f547f238ed3f0af813892115e (diff)
downloadQt-de4332a4728e739b37e9c7b04c021e150e096270.zip
Qt-de4332a4728e739b37e9c7b04c021e150e096270.tar.gz
Qt-de4332a4728e739b37e9c7b04c021e150e096270.tar.bz2
Merge remote branch 'origin/master'
Conflicts: doc/src/declarative/advtutorial1.qdoc doc/src/declarative/tutorial2.qdoc doc/src/declarative/tutorial3.qdoc src/declarative/graphicsitems/qmlgraphicsmousearea.cpp src/multimedia/playback/qmediaplayer.cpp
Diffstat (limited to 'src/declarative/util/qmltransition.cpp')
-rw-r--r--src/declarative/util/qmltransition.cpp30
1 files changed, 11 insertions, 19 deletions
diff --git a/src/declarative/util/qmltransition.cpp b/src/declarative/util/qmltransition.cpp
index 05b6f43..e2ce417 100644
--- a/src/declarative/util/qmltransition.cpp
+++ b/src/declarative/util/qmltransition.cpp
@@ -83,10 +83,10 @@ class QmlTransitionPrivate : public QObjectPrivate
{
Q_DECLARE_PUBLIC(QmlTransition)
public:
- QmlTransitionPrivate() : fromState(QLatin1String("*")), toState(QLatin1String("*"))
- , reversed(false), reversible(false), endState(0)
+ QmlTransitionPrivate()
+ : fromState(QLatin1String("*")), toState(QLatin1String("*")),
+ reversed(false), reversible(false), endState(0)
{
- animations.parent = this;
group.trans = this;
}
@@ -101,23 +101,15 @@ public:
{
endState->complete();
}
-
- class AnimationList : public QmlConcreteList<QmlAbstractAnimation *>
- {
- public:
- AnimationList() : parent(0) {}
- virtual void append(QmlAbstractAnimation *a);
- virtual void clear() { QmlConcreteList<QmlAbstractAnimation *>::clear(); } //###
-
- QmlTransitionPrivate *parent;
- };
- AnimationList animations;
+ static void append_animation(QmlListProperty<QmlAbstractAnimation> *list, QmlAbstractAnimation *a);
+ QList<QmlAbstractAnimation *> animations;
};
-void QmlTransitionPrivate::AnimationList::append(QmlAbstractAnimation *a)
+void QmlTransitionPrivate::append_animation(QmlListProperty<QmlAbstractAnimation> *list, QmlAbstractAnimation *a)
{
- QmlConcreteList<QmlAbstractAnimation *>::append(a);
- parent->group.addAnimation(a->qtAnimation());
+ QmlTransition *q = static_cast<QmlTransition *>(list->object);
+ q->d_func()->animations.append(a);
+ q->d_func()->group.addAnimation(a->qtAnimation());
a->setDisableUserControl();
}
@@ -246,10 +238,10 @@ void QmlTransition::setToState(const QString &t)
and assign that to animations the animations property.
\default
*/
-QmlList<QmlAbstractAnimation *>* QmlTransition::animations()
+QmlListProperty<QmlAbstractAnimation> QmlTransition::animations()
{
Q_D(QmlTransition);
- return &d->animations;
+ return QmlListProperty<QmlAbstractAnimation>(this, &d->animations, QmlTransitionPrivate::append_animation);
}
QT_END_NAMESPACE