| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Result of API review.
|
|
|
|
| |
applied after entering.
|
| |
|
| |
|
| |
|
|
|
|
| |
the initial state. Done by No'am, integrated by me.
|
|
|
|
| |
Result of API review.
|
|
|
|
|
|
| |
Result of API review. A == comparison of the modifiers is not useful.
The common case is you want to test if one or more modifiers are set,
i.e. a mask check.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Decided in API review. The intention of QHistoryState not being
constructible was so that people wouldn't subclass it and reimplement
onEntry()/onExit(), thinking that those functions would actually get
called (which they won't). However, we recently added the entered()
signal to QAbstractState, so people are going to connect to it and
ask why they never get the signal for a QHistoryState. We might as
well make QHistoryState constructible and just document that it
doesn't make sense to subclass it.
|
|
|
|
| |
It's useful and it's simple for us to expose, so let's.
|
| |
|
|
|
|
| |
Doesn't belong in the abstract base class.
|
| |
|
|
|
|
|
| |
if there is a transition from one of them (even if the target state of the
transition is inside the region.)
|
|
|
|
|
|
|
| |
This test checks for the behavior I expected, but that's apparently not how
it's defined in the SCXML algorithm. Currently it XFAILs, and we'll either have
to fix the algorithm or the test when we get word back on what the correct
semantics are.
|
|
|
|
|
|
| |
Added cannon firing. There are some problems left: For some reason the parallel
state group does not work properly, so only one tank moves even if you add more.
There also seems to be something wrong with historyState->setDefaultState().
|
| |
|
| |
|
|
|
|
|
| |
Not worth it having two public classes when the same can be achieved
by having a signal.
|
|
|
|
|
|
| |
Comparing pointers meant that the order could be different each run.
Now the entry/exit order will be consistent, even for states that are
in disjoint parts of the hierarchy.
|
|
|
|
| |
work at all.
|
|
|
|
|
| |
one such plugin will have a run time error, so the game server needs to use
errorState for handling errors.
|
|\
| |
| |
| |
| | |
Conflicts:
examples/animation/piemenu/qgraphicspiemenu_p.h
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | | |
use case for this, so it has been removed. If the requirement arises we can
add it back in later. Since it no longer makes sense to have it in
QAbstractState, the RestorePolicy enum has been moved to QStateMachine.
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
have changed to something which is more intuitive, so it is no longer useful
for this case.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It just didn't give us that much.
Typically you just reimplement onEntry/onExit/onTransition
when you want to do something.
We go back to the signals-and-slots approach: states have
entered() and exited() signals that you can connect to.
It's still possible to have an action-based API, but then
you build it on top of the core API, which is OK.
Replacing 4 public classes (and one layer in the hierarchy)
with 2 signals feels good.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
precedence:
1. Specific animation for transition
2. Default animation for source state
3. Default animation for target state
4. Default animation
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
useful when using the RestoreProperties policy, because this is intended to
allow you to build a state machine without having each state consider all the
possible properties that may be set by some state at some point. Default
animations provide the same convenience for animated properties.
|
| | |
| | |
| | |
| | | |
have been ported to the new API and added to the QStateMachine autotest instead.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
when it is added. Reduces the number of temporary variables you have to declare
in your code since you can do things like:
state->addTransition(new Transition())->addAnimation(new Animation());
Could also be used for error checking.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The bug was in easeOutBounce_helper(), where the last else-block
adjusted t wrong. It should adjust t so that the peak is at t == 0,
but it adjusted it too little.
The old code did t -= (2.25f/2.75f), but it should have been 21/22.
The rest of the changes in that function is just simple mathematical
rewrites (use a more readable fraction), and removed the b argument,
since that was always 0.
Finally, fixing the original bug also revealed a bug in the first
line of easeOutBounce_helper(), where we always returned
1.0 for t == 1.0. That was wrong since it did not respect c.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The default start value is updated when the animation changes from
Stopped to Running state.
Reviewed-by: Jan-Arve
|
| | | |
|
| | |
| | |
| | |
| | | |
These interpolator functions might be useful for other internal classes.
|
| |/
|/|
| |
| |
| |
| |
| |
| | |
When the start value is not explicitly defined, the property animation
will set the default start to be the current property value when updating
the animation's state to Running.
Reviewed-by: Jan-Arve
|
|/ |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
The child animation was removed twice from the group because in
QAnimationGroup::insertAnimationAt the insertion in the list was done
before removing the animation.
Reviewed-by: Jan-Arve
|