QSignalTransition

The QSignalTransition class provides a transition based on a Qt signal. More

Inheritance diagram of PySide2.QtCore.QSignalTransition

New in version 4.6.

Synopsis

Functions

Detailed Description

Typically you would use the overload of addTransition() that takes a sender and signal as arguments, rather than creating QSignalTransition objects directly. QSignalTransition is part of The State Machine Framework .

You can subclass QSignalTransition and reimplement eventTest() to make a signal transition conditional; the event object passed to eventTest() will be a SignalEvent object. Example:

class CheckedTransition : public QSignalTransition
{
public:
    CheckedTransition(QCheckBox *check)
        : QSignalTransition(check, SIGNAL(stateChanged(int))) {}
protected:
    bool eventTest(QEvent *e) {
        if (!QSignalTransition::eventTest(e))
            return false;
        QStateMachine::SignalEvent *se = static_cast<QStateMachine::SignalEvent*>(e);
        return (se->arguments().at(0).toInt() == Qt::Checked);
    }
};

...

QCheckBox *check = new QCheckBox();
check->setTristate(true);

QState *s1 = new QState();
QState *s2 = new QState();
CheckedTransition *t1 = new CheckedTransition(check);
t1->setTargetState(s2);
s1->addTransition(t1);
class PySide2.QtCore.QSignalTransition(arg__1[, arg__2=None])

PySide2.QtCore.QSignalTransition([sourceState=None])

PySide2.QtCore.QSignalTransition(sender, signal[, sourceState=None])

param sourceState

PySide2.QtCore.QState

param signal

str

param arg__1

object

param arg__2

PySide2.QtCore.QState

param sender

PySide2.QtCore.QObject

Constructs a new signal transition with the given sourceState .

Constructs a new signal transition associated with the given signal of the given sender , and with the given sourceState .

PySide2.QtCore.QSignalTransition.senderObject()
Return type

PySide2.QtCore.QObject

This property holds the sender object that this signal transition is associated with.

PySide2.QtCore.QSignalTransition.setSenderObject(sender)
Parameters

senderPySide2.QtCore.QObject

This property holds the sender object that this signal transition is associated with.

PySide2.QtCore.QSignalTransition.setSignal(signal)
Parameters

signalPySide2.QtCore.QByteArray

This property holds the signal that this signal transition is associated with.

PySide2.QtCore.QSignalTransition.signal()
Return type

PySide2.QtCore.QByteArray

This property holds the signal that this signal transition is associated with.