QEventTransition Class | Qt Core 5.6

Qt 5.6 | Qt Core | C++ Classes | QEventTransition

Qt 5.6.2 Reference Documentation

# QEventTransition Class

The QEventTransition class provides a QObject-specific transition for Qt events. More...

Header: | #include <QEventTransition>
qmake: | QT += core
Since: | Qt 4.6
Inherits: | QAbstractTransition

- List of all members, including inherited members

## Properties

- eventSource : QObject *
- eventType : QEvent::Type

- 4 properties inherited from QAbstractTransition
- 1 property inherited from QObject

## Public Functions

| QEventTransition(QState *sourceState = Q_NULLPTR)
| QEventTransition(QObject *object, QEvent::Type type, QState *sourceState = Q_NULLPTR)
| ~QEventTransition()
QObject * | eventSource() const
QEvent::Type | eventType() const
void | setEventSource(QObject *object)
void | setEventType(QEvent::Type type)

- 11 public functions inherited from QAbstractTransition
- 31 public functions inherited from QObject

## Reimplemented Protected Functions

virtual bool | event(QEvent *e)
virtual bool | eventTest(QEvent *event)
virtual void | onTransition(QEvent *event)

- 3 protected functions inherited from QAbstractTransition
- 9 protected functions inherited from QObject

### Additional Inherited Members

- 1 public slot inherited from QObject
- 3 signals inherited from QAbstractTransition
- 2 signals inherited from QObject
- 11 static public members inherited from QObject
- 3 protected functions inherited from QAbstractTransition
- 9 protected functions inherited from QObject

## Detailed Description

The QEventTransition class provides a QObject-specific transition for Qt events.

A QEventTransition object binds an event to a particular QObject. QEventTransition is part of The State Machine Framework.

Example:

      QPushButton *button = ...;
      QState *s1 = ...;
      QState *s2 = ...;
      // If in s1 and the button receives an Enter event, transition to s2
      QEventTransition *enterTransition = new QEventTransition(button, QEvent::Enter);
      enterTransition->setTargetState(s2);
      s1->addTransition(enterTransition);
      // If in s2 and the button receives an Exit event, transition back to s1
      QEventTransition *leaveTransition = new QEventTransition(button, QEvent::Leave);
      leaveTransition->setTargetState(s1);
      s2->addTransition(leaveTransition);

### Subclassing

When reimplementing the eventTest() function, you should first call the base implementation to verify that the event is a QStateMachine::WrappedEvent for the proper object and event type. You may then cast the event to a QStateMachine::WrappedEvent and get the original event by calling QStateMachine::WrappedEvent::event(), and perform additional checks on that object.

See also QState::addTransition().

## Property Documentation

### eventSource : QObject *

This property holds the event source that this event transition is associated with.

Access functions:

QObject * | eventSource() const
void | setEventSource(QObject *object)

### eventType : QEvent::Type

This property holds the type of event that this event transition is associated with.

Access functions:

QEvent::Type | eventType() const
void | setEventType(QEvent::Type type)

## Member Function Documentation

### QEventTransition::QEventTransition(QState *sourceState = Q_NULLPTR)

Constructs a new QEventTransition object with the given sourceState.

### QEventTransition::QEventTransition(QObject *object, QEvent::Type type, QState *sourceState = Q_NULLPTR)

Constructs a new QEventTransition object associated with events of the given type for the given object, and with the given sourceState.

### QEventTransition::~QEventTransition()

Destroys this QObject event transition.

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

Reimplemented from QObject::event().

### QObject *QEventTransition::eventSource() const

Returns the event source associated with this event transition.

Note: Getter function for property eventSource.

See also setEventSource().

### `[virtual protected]` bool QEventTransition::eventTest(QEvent *event)

Reimplemented from QAbstractTransition::eventTest().

### QEvent::Type QEventTransition::eventType() const

Returns the event type that this event transition is associated with.

Note: Getter function for property eventType.

See also setEventType().

### `[virtual protected]` void QEventTransition::onTransition(QEvent *event)

Reimplemented from QAbstractTransition::onTransition().

### void QEventTransition::setEventSource(QObject *object)

Sets the event source associated with this event transition to be the given object.

Note: Setter function for property eventSource.

See also eventSource().

### void QEventTransition::setEventType(QEvent::Type type)

Sets the event type that this event transition is associated with.

Note: Setter function for property eventType.

See also eventType().