The QFinalState class provides a final state. More...
#include <QFinalState>
Inherits: QAbstractState.
This class was introduced in Qt 4.6.
QFinalState ( QState * parent = 0 ) | |
~QFinalState () |
virtual bool | event ( QEvent * e ) |
virtual void | onEntry ( QEvent * event ) |
virtual void | onExit ( QEvent * event ) |
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 QStateMachine::finished() and QState::finished().
Constructs a new QFinalState object with the given parent state.
Destroys this final state.
Reimplemented from QObject::event().
Reimplemented from QAbstractState::onEntry().
Reimplemented from QAbstractState::onExit().
© 2008-2011 Nokia Corporation and/or its subsidiaries. Nokia, Qt and their respective logos are trademarks of Nokia Corporation in Finland and/or other countries worldwide.
All other trademarks are property of their respective owners. Privacy Policy
Licensees holding valid Qt Commercial licenses may use this document in accordance with the Qt Commercial License Agreement provided with the Software or, alternatively, in accordance with the terms contained in a written agreement between you and Nokia.
Alternatively, this document may be used under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation.