105 if (action.toBinding)
107 if (action.fromBinding) {
108 auto property = action.property;
111 if (action.event && action.event->changesBindings()) {
113 action.event->clearBindings();
129 if (
auto binding = action.toBinding; binding) {
130 binding.installOn(action.property);
131 }
else if (!action.event) {
133 }
else if (action.event->isReversable()) {
134 if (action.reverseEvent)
135 action.event->reverse();
137 action.event->execute();
142 for (
auto it = applyList.
begin(), eit = applyList.end();
it != eit; ++
it) {
144 it->event->saveTargetValues();
148 if (
it->toBinding || !
it->toValue.isValid())
149 it->toValue = prop.
read();
155 if (action.event->isReversable()) {
156 action.event->clearBindings();
157 action.event->rewind();
158 action.event->clearBindings();
163 if (action.toBinding) {
164 auto property = action.property;
173 QList<QQmlProperty> touched;
183 return action.actionDone;
185 if (touched.contains(action.property)) {
186 if (action.toValue != action.fromValue)
194 applyList.removeIf(isHandledInTransition);
202 if (action.event && !action.event->changesBindings()) {
203 if (action.event->isReversable() && action.reverseEvent)
204 action.event->reverse();
206 action.event->execute();
207 }
else if (!action.event && !action.toBinding) {
208 action.property.write(action.toValue);
211 if (lcStates().isDebugEnabled()) {
214 qCDebug(lcStates) <<
"no transition for event:" << action.event->type();
216 qCDebug(lcStates) <<
"no transition for:" << action.property.object()
217 << action.property.name() <<
"from:" << action.fromValue
218 <<
"to:" << action.toValue;