Qt Reference Documentation

# QFinalState Class Reference

The QFinalState class provides a final state. More...

     #include <QFinalState>

Inherits: QAbstractState.

This class was introduced in Qt 4.6.

- List of all members, including inherited members

## Public Functions

| QFinalState ( QState * parent = 0 )
| ~QFinalState ()

- 2 public functions inherited from QAbstractState
- 29 public functions inherited from QObject

## Reimplemented Protected Functions

virtual bool | event ( QEvent * e )
virtual void | onEntry ( QEvent * event )
virtual void | onExit ( QEvent * event )

- 3 protected functions inherited from QAbstractState
- 8 protected functions inherited from QObject

### Additional Inherited Members

- 1 property inherited from QObject
- 1 public slot inherited from QObject
- 2 signals inherited from QAbstractState
- 1 signal inherited from QObject
- 7 static public members inherited from QObject
- 3 protected functions inherited from QAbstractState
- 8 protected functions inherited from QObject

## Detailed Description

The QFinalState class provides a final state.

A final state is used to communicate that (part of) a QStateMachine 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 QState) is entered, the parent state's finished() signal is emitted. QFinalState is part of The State Machine Framework.

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

     QPushButton button;

     QStateMachine machine;
     QState *s1 = new QState();
     QFinalState *s2 = new QFinalState();
     s1->addTransition(&button, SIGNAL(clicked()), s2);
     machine.addState(s1);
     machine.addState(s2);

     QObject::connect(&machine, SIGNAL(finished()), QApplication::instance(), SLOT(quit()));
     machine.setInitialState(s1);
     machine.start();

See also QState::finished().

## Member Function Documentation

### QFinalState::QFinalState ( QState * parent = 0 )

Constructs a new QFinalState object with the given parent state.

### QFinalState::~QFinalState ()

Destroys this final state.

### bool QFinalState::event ( QEvent * e )`[virtual protected]`

Reimplemented from QObject::event().

### void QFinalState::onEntry ( QEvent * event )`[virtual protected]`

Reimplemented from QAbstractState::onEntry().

### void QFinalState::onExit ( QEvent * event )`[virtual protected]`

Reimplemented from QAbstractState::onExit().