--- a/src/declarative/util/qdeclarativestateoperations.cpp Fri Sep 17 08:34:18 2010 +0300
+++ b/src/declarative/util/qdeclarativestateoperations.cpp Mon Oct 04 01:19:32 2010 +0300
@@ -161,6 +161,7 @@
/*!
\preliminary
\qmlclass ParentChange QDeclarativeParentChange
+ \ingroup qml-state-elements
\brief The ParentChange element allows you to reparent an Item in a state change.
ParentChange reparents an item while preserving its visual appearance (position, size,
@@ -589,6 +590,7 @@
/*!
\qmlclass StateChangeScript QDeclarativeStateChangeScript
+ \ingroup qml-state-elements
\brief The StateChangeScript element allows you to run a script in a state.
A StateChangeScript is run upon entering a state. You can optionally use
@@ -693,6 +695,7 @@
/*!
\qmlclass AnchorChanges QDeclarativeAnchorChanges
+ \ingroup qml-state-elements
\brief The AnchorChanges element allows you to change the anchors of an item in a state.
The AnchorChanges element is used to modify the anchors of an item in a \l State.
@@ -1424,6 +1427,7 @@
if (!d->target)
return;
+ //### should this (saving "from" values) be moved to saveCurrentValues()?
d->fromX = d->target->x();
d->fromY = d->target->y();
d->fromWidth = d->target->width();
@@ -1483,22 +1487,8 @@
return;
QDeclarativeItemPrivate *targetPrivate = QDeclarativeItemPrivate::get(d->target);
- //restore previous anchors
- if (d->rewindLeft.anchorLine != QDeclarativeAnchorLine::Invalid)
- targetPrivate->anchors()->setLeft(d->rewindLeft);
- if (d->rewindRight.anchorLine != QDeclarativeAnchorLine::Invalid)
- targetPrivate->anchors()->setRight(d->rewindRight);
- if (d->rewindHCenter.anchorLine != QDeclarativeAnchorLine::Invalid)
- targetPrivate->anchors()->setHorizontalCenter(d->rewindHCenter);
- if (d->rewindTop.anchorLine != QDeclarativeAnchorLine::Invalid)
- targetPrivate->anchors()->setTop(d->rewindTop);
- if (d->rewindBottom.anchorLine != QDeclarativeAnchorLine::Invalid)
- targetPrivate->anchors()->setBottom(d->rewindBottom);
- if (d->rewindVCenter.anchorLine != QDeclarativeAnchorLine::Invalid)
- targetPrivate->anchors()->setVerticalCenter(d->rewindVCenter);
- if (d->rewindBaseline.anchorLine != QDeclarativeAnchorLine::Invalid)
- targetPrivate->anchors()->setBaseline(d->rewindBaseline);
+ //restore previous values (but not previous bindings, i.e. anchors)
d->target->setX(d->rewindX);
d->target->setY(d->rewindY);
if (targetPrivate->widthValid) {