Hi all,<div>QSignalTransition does not accept signals when come from python extent.</div><div>When I try the following test program I get:</div><div><br></div><div>QSignalTransition: no such signal: Emitter::mySignal()</div>
<div><br></div><div>this is program </div><div><br></div><div><div><div>import PyQt4.QtCore as QtCore</div><div>import PyQt4.QtGui as QtGui</div><div>from pprint import pprint</div><div><br></div><div>class Emitter(QtGui.QPushButton):</div>
<div> def __init__(self,parent=None):</div><div> QtGui.QPushButton.__init__(self,parent)</div><div> QtCore.QObject.connect(self,QtCore.SIGNAL("clicked()"),self.emitter)</div><div> def emitter(self):</div>
<div> print "emitting"</div><div> self.emit(QtCore.SIGNAL("mySignal()"))</div><div><br></div><div><br></div><div>app=QtGui.QApplication([""])</div><div>emitter=Emitter()</div><div>
emitter.show()</div><div>machine=QtCore.QStateMachine()</div><div>state1=QtCore.QState(machine)</div><div>state2=QtCore.QState(machine)</div><div>t = QtCore.QSignalTransition(emitter,QtCore.SIGNAL("mySignal()"));</div>
<div>t.setTargetState(state2);</div><div>state1.addTransition(t);</div><div>QtCore.QObject.connect(state2,QtCore.SIGNAL("entered()"),</div><div> lambda:pprint("ENTERED!!!"))</div>
<div>machine.setInitialState(state1)</div><div>machine.start()</div><div>app.exec_()</div></div></div>