def set_up_machine(self): self.machine = QStateMachine(self) self.welcome = self._make_welcome() self.machine.setInitialState(self.welcome) dead = QFinalState(self.machine) death = QEventTransition(self, QEvent.Close) death.setTargetState(dead) self.machine.addTransition(death)
def setup(self): self.machine = QStateMachine(self) self.run = QState(self.machine) abort = self._make_abort() transition = QEventTransition(self, QEvent.Close) transition.setTargetState(abort) self.run.addTransition(transition) welcome = self._make_welcome() welcome.entered.connect(self._handle_welcome_entered) self.machine.setInitialState(self.run) self.run.setInitialState(welcome) self.machine.start()
def testBasic(self): '''QStateMachine.configuration converting QSet to python set''' machine = QStateMachine() s1 = QState() machine.addState(s1) machine.setInitialState(s1) machine.start() QTimer.singleShot(100, self.app.quit) self.app.exec_() configuration = machine.configuration() self.assertTrue(isinstance(configuration, set)) self.assertTrue(s1 in configuration)
def testBasic(self): self.machine = QStateMachine() s1 = QState() s2 = QState() s3 = QFinalState() QObject.connect(self.machine, SIGNAL("started()"), self.cb) self.anim = QParallelAnimationGroup() self.machine.addState(s1) self.machine.addState(s2) self.machine.addState(s3) self.machine.setInitialState(s1) self.machine.addDefaultAnimation(self.anim) self.machine.start() QTimer.singleShot(100, self.app.quit) self.app.exec_()
def testCase(self): check = QCheckBox() check.setTristate(True) s1 = QState() s2 = QState() t1 = CheckedTransition(check) t1.setTargetState(s2) s1.addTransition(t1) machine = QStateMachine() machine.addState(s1) machine.addState(s2) machine.setInitialState(s1) machine.start() check.stateChanged[int].emit(1) check.show() self.app.exec_() self.assertTrue(t1.eventTested)
from PySide2.QtCore import QStateMachine, QState mach = QStateMachine() state = QState(mach) print(state.machine())