State QML Type
Provides a general-purpose state for StateMachine. More...
Import Statement: | import QtQml.StateMachine 1.0 |
Since: | Qt 5.4 |
Inherits: |
Properties
- childMode : enumeration
- errorState : QAbstractState
- initialState : QAbstractState
Signals
- finished()
Detailed Description
State objects can have child states as well as transitions to other states. State is part of The Declarative State Machine Framework.
States with Child States
The childMode property determines how child states are treated. For non-parallel state groups, the initialState property must be used to set the initial state. The child states are mutually exclusive states, and the state machine needs to know which child state to enter when the parent state is the target of a transition.
The state emits the State::finished() signal when a final child state (FinalState) is entered.
The errorState sets the state's error state. The error state is the state that the state machine will transition to if an error is detected when attempting to enter the state (e.g. because no initial state has been set).
Example Usage
import QtQuick 2.0 import QtQml.StateMachine 1.0 as DSM Rectangle { DSM.StateMachine { id: stateMachine initialState: state running: true DSM.State { id: state } } }
See also StateMachine and FinalState.
Property Documentation
The child mode of this state
The default value of this property is QState.ExclusiveStates.
This enum specifies how a state's child states are treated:
- QState.ExclusiveStates The child states are mutually exclusive and an initial state must be set by setting initialState property.
- QState.ParallelStates The child states are parallel. When the parent state is entered, all its child states are entered in parallel.
errorState : QAbstractState |
The error state of this state.
initialState : QAbstractState |
The initial state of this state (one of its child states).
Signal Documentation
This signal is emitted when a final child state of this state is entered.
The corresponding handler is onFinished
.
See also QAbstractState::active, QAbstractState::entered, and QAbstractState::exited.
© 2015 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.