QtQml FinalState

Provides a final state.

Import Statement: import QtQml.StateMachine 1.0
Since: Qt 5.4
Inherits: QAbstractState

Detailed Description

A final state is used to communicate that (part of) a StateMachine has finished its work. When a final top-level state is entered, the state machine’s finished() signal is emitted. In general, when a final substate (a child of a State) is entered, the parent state’s finished() signal is emitted. FinalState is part of The Declarative State Machine Framework .

To use a final state, you create a FinalState object and add a transition to it from another state.

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
            DSM.TimeoutTransition {
                targetState: finalState
                timeout: 200
            }
        }
        DSM.FinalState {
            id: finalState
        }
        onFinished: console.log("state finished")
    }
}

See also StateMachine and State.