summaryrefslogtreecommitdiffstats
path: root/src/corelib/statemachine/qstate_p.h
Commit message (Collapse)AuthorAgeFilesLines
* Update licenseheader text in source filesJyri Tahtela2011-05-131-17/+17
| | | | | | | Updated version of LGPL and FDL licenseheaders. Apply release phase licenseheaders for all source files. Reviewed-by: Trust Me
* Update copyright year to 2011.Jason McDonald2011-01-101-1/+1
| | | | Reviewed-by: Trust Me
* Update copyright year to 2010Jason McDonald2010-01-061-1/+1
| | | | Reviewed-by: Trust Me
* Rename QState::polished() signal to "propertiesAssigned"Eskil Abrahamsen Blomfeldt2009-11-031-1/+1
| | | | | | | | | "Polished" was never a very descriptive word, and it already has a meaning attached in the QStyle API. Additionally, "propertiesAssigned" has the benefit of giving the relation to the assignProperty() function as part of the name. Reviewed-by: Kent Hansen
* Cache QState's child statesKent Hansen2009-10-291-0/+2
| | | | | | | | | | | | | This is the same type of optimization as that done for transitions in commit 5d8dcd57cd13fdd9c8643fa3bdda9f197a4351ff. The idea is to avoid calling qobject_cast() because it's very expensive. Obtaining child states needs to be as fast as possible because it's in the critical path of the state machine algorithm; it's called by a ton of internal functions, like isCompound(), isAtomic(), isInFinalState(). It's also called heavily for parallel state groups. Reviewed-by: Eskil Abrahamsen Blomfeldt
* Greatly improve the performance of obtaining a state's transitionsKent Hansen2009-10-281-0/+2
| | | | | | | | | | | | | | | | | | | Transitions are children of their source state. We use QObject::children() and qobject_cast() each child to a QAbstractTransition to see if it is indeed a transition. However, calling qobject_cast() is very expensive. This commit introduces a cached list of transitions. The list is invalidated after a child object has been added or removed. In the typical case we expect the object hierarchy to remain fairly constant once the state machine has been started (states, child states and transitions are usually "static"), in other words the cached list is not likely to be invalidated much. Obtaining a state's transitions needs to be as fast as possible because it's in the critical path of the state machine algorithm. Reviewed-by: Eskil Abrahamsen Blomfeldt
* Update license headers again.Jason McDonald2009-09-091-4/+4
| | | | Reviewed-by: Trust Me
* Update tech preview license header for files that are new in 4.6.Jason McDonald2009-08-311-13/+13
| | | | Reviewed-by: Trust Me
* Update contact URL in license headers.Jason McDonald2009-08-121-1/+1
| | | | Reviewed-by: Trust Me
* fix issues reported by CoverityKent Hansen2009-08-101-1/+1
|
* Update license headers in files that are new in 4.6.Jason McDonald2009-06-171-2/+2
| | | | Reviewed-by: Trust Me
* prepend private/ for included private headersMartin Jones2009-06-011-1/+1
|
* Compile qstatemachine autotestOlivier Goffart2009-05-281-1/+1
|
* Removed some export to symbols that don't need itThierry Bastian2009-05-251-3/+3
| | | | ...hopefully
* kill QStateMachine::animationsFinished(), introduce QState::polished()Kent Hansen2009-04-291-0/+3
|
* replace QState::Type with QState::childMode propertyKent Hansen2009-04-291-1/+1
| | | | Result of API review.
* move assignProperty() to QStateKent Hansen2009-04-291-0/+19
| | | | Doesn't belong in the abstract base class.
* replace QStateFinished{Event,Transition} by QState::finished() signalKent Hansen2009-04-271-0/+2
| | | | | Not worth it having two public classes when the same can be achieved by having a signal.
* kill the stateactions apiKent Hansen2009-04-221-2/+2
| | | | | | | | | | | | 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.
* Initial import of statemachine branch from the old kinetic repositoryAlexis Menard2009-04-171-0/+84