summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* redo statecharts in proper UML notation, expand documentationKent Hansen2009-05-128-22/+150
|
* Don't interrupt test before animation finishesEskil Abrahamsen Blomfeldt2009-05-121-2/+4
| | | | | | | We're testing if both animations actually run and finish, so we need to make sure one of the polished signals is emitted last, and then react to this. I've done this by setting the duration of the animation which animated the property set by s2Child, so that it's sufficient to listen to this polished signal.
* Kill warning in removeDefaultAnimation() testEskil Abrahamsen Blomfeldt2009-05-121-2/+5
| | | | Warning about animating non-existent properties.
* Fixes crash when calling QState::setErrorState() with null pointerEskil Abrahamsen Blomfeldt2009-05-121-1/+1
| | | | When the state is null, it isn't the root state.
* Avoid warnings in assignPropertyWithAnimation testEskil Abrahamsen Blomfeldt2009-05-121-0/+8
| | | | | They added a warning when you animate a non-existent property, so we make sure the properties are defined.
* Make selecting plugins more user friendly and platform independentEskil Abrahamsen Blomfeldt2009-05-115-18/+66
| | | | | | Using *.dll was just a placeholder here. The code is mostly copied from the Plug&Paint example, and goes through all the plugins to find the compatible ones with some hacks to find out the application directory on windows and mac.
* Merge branch 'kinetic-animations' into kinetic-statemachineKent Hansen2009-05-084-44/+114
|\
| * Doc: Work on QAnimationGroup class description.Geir Vattekar2009-05-081-12/+40
| |
| * Correct spelling. setConsitentTiming -> setConsistentTimingMichael Brasser2009-05-082-2/+2
| |
| * Merge branch 'kinetic-animations' of git@scm.dev.nokia.troll.no:qt/kinetic ↵Geir Vattekar2009-05-0768-321/+1124
| |\ | | | | | | | | | into kinetic-animations
| | * change the API of private class for QAbstractAnimation to allow settingThierry Bastian2009-05-072-14/+35
| | | | | | | | | | | | | | | | | | the timer interval. We also export the private clas so it can be used by other modules
| * | Doc: Work on QPropertyAnimation class descriptionGeir Vattekar2009-05-071-18/+39
| | |
* | | gracefully handle deletion of transition's target stateKent Hansen2009-05-084-4/+30
| | |
* | | get rid of warningsKent Hansen2009-05-081-2/+0
| | |
* | | Test what happens when target state doesn't have a parentKent Hansen2009-05-081-0/+25
| | |
* | | make sure connections and event filters are removed when state machine haltsKent Hansen2009-05-083-0/+21
| | |
* | | don't create transition to null stateKent Hansen2009-05-082-4/+28
| | |
* | | don't add signal transition if target is null or signal doesn't existKent Hansen2009-05-072-2/+30
| | |
* | | Make it impossible to have root state as source or target of transition or ↵Eskil Abrahamsen Blomfeldt2009-05-074-6/+31
| |/ |/| | | | | | | | | | | | | | | | | | | as error state Since the root state has no ancestors, it cannot be source or target in transitions since there will be no LCA for the transition, which is required for the algorithm of enterStates and exitStates. In SCXML the root state cannot be target or source of a transition. By the same logic, it cannot be an error state. The root state will always have a valid machine, since it's added to a machine immediately, which makes this code possible.
* | Merge branch 'kinetic-animations' into kinetic-statemachineKent Hansen2009-05-074-5/+21
|\ \
| * | Addeed a warning if one is trying to animate a property that's not partThierry Bastian2009-05-072-2/+5
| | | | | | | | | | | | | | | | | | of the object Task-number: 251763
| * | Provide a way in private API to have a consistent timer for animations.Thierry Bastian2009-05-072-3/+16
| | | | | | | | | | | | | | | | | | | | | | | | This allows for better testing because from now on we can rely on the results to be always the same and not rely on timer accuracy any more. Task-number: 251764 Reviewed-by: leo
* | | add QStateMachine::isRunning()Kent Hansen2009-05-073-0/+55
| | |
* | | store top-level animation in dedicated variableKent Hansen2009-05-071-3/+4
| | | | | | | | | | | | The animation itself is used by subsequent code, so we mustn't change it.
* | | doc: Add documentation for NoCommonAncestorForTransitionError enumEskil Abrahamsen Blomfeldt2009-05-071-0/+5
| | |
* | | Rename NoDefaultStateInHistoryState -> NoDefaultStateInHistoryStateError for ↵Eskil Abrahamsen Blomfeldt2009-05-073-6/+6
| | | | | | | | | | | | | | | | | | consistency The other error values have Error in the name for namespacing purposes.
* | | Fix infinite loop when source and target of transition are in different treesEskil Abrahamsen Blomfeldt2009-05-073-18/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The SCXML algorithm depends on the guarantee that there is always an LCA regardless of the state list. The case where the targets are in a different tree than the source (e.g. if you have not given the target state a parent) is a bug. The fix is to set an error when this happens in exitStates() and exit states as if the pending error states were the target states. In enterStates we will detect the error and skip the step of selecting states to enter, and instead just enter the pending error states. This breaks transitions to and from the root state, which is not supported by the SCXML algorithm.
* | | Fix tests for history state and entering root stateEskil Abrahamsen Blomfeldt2009-05-071-5/+3
| | | | | | | | | | | | | | | | | | Change expectation for entering the root state. We should never have the root state in the configuration. Also fix the expected error message in historyStateHasNowhereToGo since this has changed along with the API.
* | | Make sure machine enters error state if history state has no default stateEskil Abrahamsen Blomfeldt2009-05-071-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | Keep searching the parent hierarchy for error states even if a state in the hierarchy cannot be cast to QState. Also make currentErrorState==0 an assert, since there should always be an error state (we default to the special initialErrorState if we are unable to find anything else), otherwise the machine might get into an undefined state (e.g. configuration is empty)
* | | Compile with new APIEskil Abrahamsen Blomfeldt2009-05-071-2/+2
|/ / | | | | | | addHistoryState() is gone and onTransition() now takes an argument.
* | Remove superfluous codeEskil Abrahamsen Blomfeldt2009-05-061-7/+0
| | | | | | | | | | | | | | We have gone back to the old definition of implicit start values where the a new default start value is sniffed every time the animation is restarted, so we do not need to emulate this behavior ourselves anymore. Behavior should be identical.
* | Fix bogus default start value when interrupting an animation that has anEskil Abrahamsen Blomfeldt2009-05-061-5/+7
| | | | | | | | | | | | | | | | implicit end value. We need to stop the animation prior to setting the end value to an invalid variant, otherwise the current value of the property will be updated based on the new end value and randomness will occur.
* | Instead of adding animations for all properties to all transitions, we useEskil Abrahamsen Blomfeldt2009-05-061-7/+11
| | | | | | | | the default animation concept, since this is its intended use.
* | Add chase state and ability to detect and fire at other tanks. This reveals anEskil Abrahamsen Blomfeldt2009-05-062-4/+92
| | | | | | | | assert in the state machine which needs to be debugged.
* | Avoid passage where the walls meet the edge of the scene rect.Eskil Abrahamsen Blomfeldt2009-05-061-5/+6
| |
* | get rid of marginKent Hansen2009-05-051-1/+2
| |
* | doc improvementsKent Hansen2009-05-054-23/+51
| |
* | get rid of warningsKent Hansen2009-05-052-1/+3
| |
* | Merge branch 'kinetic-animations' into kinetic-statemachineKent Hansen2009-05-052-100/+153
|\ \ | |/
| * Doc: Work on QAbstractAnimation class descriptionGeir Vattekar2009-05-051-46/+49
| |
| * Doc: Git merge conflict in QVariantAnimationGeir Vattekar2009-05-051-7/+0
| |
| * Doc: Updated QVariantAnimation class descriptionGeir Vattekar2009-05-052-47/+114
| |
| * Small refactor of QVariantAnimation::updateCurrentValueThierry Bastian2009-04-291-17/+7
| | | | | | | | | | | | we only test the inequality of the new value compared to the previous one in case we have something conected to currentValueChanged signal. The comparison is quite heavy in QVariant. So avoiding it a good thing.
* | add event as argument to onEntry(), onExit() and onTransition()Kent Hansen2009-05-0542-130/+140
| | | | | | | | | | | | | | | | | | Accessing the event can be useful. E.g., onEntry() can do some common event processing regardless of which transition caused the state to be entered; onTransition() can be used in combination with eventTest(), where eventTest() would first check that the input matches some criteria, and then the actual processing of that input would be done in onTransition.
* | Add randomness.Eskil Abrahamsen Blomfeldt2009-05-051-2/+2
| |
* | Make sure target state is set correctly. Also make sure eventTest() actuallyEskil Abrahamsen Blomfeldt2009-05-051-5/+8
| | | | | | | | overrides the virtual function.
* | Set collidedLine for the implicit walls around the scene to allow for collisionEskil Abrahamsen Blomfeldt2009-05-051-4/+21
| | | | | | | | response.
* | Make sure the correct position/direction is actually set at the end of aEskil Abrahamsen Blomfeldt2009-05-051-10/+16
| | | | | | | | loop. Also make sure we set the direction to an angle within 360 degrees.
* | Fix support reverse actions. Logic was broken and would always return falseEskil Abrahamsen Blomfeldt2009-05-051-2/+2
| | | | | | | | immediately for reverse actions, thus immediately stopping them.
* | ignore QState::assignProperty() calls where the target object is 0Kent Hansen2009-05-042-0/+8
| |