103 if (action.toBinding)
105 if (action.fromBinding) {
106 auto property = action.property;
109 if (action.event && action.event->changesBindings()) {
111 action.event->clearBindings();
127 if (
auto binding = action.toBinding; binding) {
128 binding.installOn(action.property);
129 }
else if (!action.event) {
131 }
else if (action.event->isReversable()) {
132 if (action.reverseEvent)
133 action.event->reverse();
135 action.event->execute();
140 for (
auto it = applyList.
begin(), eit = applyList.end();
it != eit; ++
it) {
142 it->event->saveTargetValues();
146 if (
it->toBinding || !
it->toValue.isValid())
147 it->toValue = prop.
read();
153 if (action.event->isReversable()) {
154 action.event->clearBindings();
155 action.event->rewind();
156 action.event->clearBindings();
161 if (action.toBinding) {
162 auto property = action.property;
171 QList<QQmlProperty> touched;
181 return action.actionDone;
183 if (touched.contains(action.property)) {
184 if (action.toValue != action.fromValue)
192 applyList.removeIf(isHandledInTransition);
200 if (action.event && !action.event->changesBindings()) {
201 if (action.event->isReversable() && action.reverseEvent)
202 action.event->reverse();
204 action.event->execute();
205 }
else if (!action.event && !action.toBinding) {
206 action.property.write(action.toValue);
209 if (lcStates().isDebugEnabled()) {
212 qCDebug(lcStates) <<
"no transition for event:" << action.event->type();
214 qCDebug(lcStates) <<
"no transition for:" << action.property.object()
215 << action.property.name() <<
"from:" << action.fromValue
216 <<
"to:" << action.toValue;