Qt4Reactor
Using the QtReactor
-------------------
Before running / importing any other Twisted code, invoke:
::
app = QApplication(sys.argv) # your code to init QtCore
from twisted.application import reactors
reactors.installReactor('pyqt4')
or
::
app = QApplication(sys.argv) # your code to init QtCore
from twisted.application import reactors
reactors.installReactor('pyside4')
alternatively (gui example):
::
app = PyQt4.QtGui(sys.argv) # your code to init QtGui
from qtreactor import pyqt4reactor
pyqt4reactor.install()
Testing
~~~~~~~
::
trial --reactor=pyqt4 [twisted] [twisted.test] [twisted.test.test_internet]
Testing with a Gui
~~~~~~~~~~~~~~~~~~
Twisted trial can be run for a Gui test using gtrial. Run Trial in the
same directory as bin/gtrial and it pops up a trivial gui... hit the
buton and it all runs the same... don't use the --reactor option when
calling gtrial... but all the other options appear to work.
::
cp gtrial <test-directory>
cd <test-directory> && trial
If you're writing a conventional Qt application and just want twisted as
an addon, you can get that by calling reactor.runReturn() instead of
run(). This call needs to occur after your installation of of the
reactor and after QApplication.exec\_() (or QCoreApplication.exec\_()
whichever you are using.
reactor.run() will also work as expected in a typical twisted
application
Note that if a QApplication or QCoreApplication instance isn't
constructed prior to calling reactor run, an internally owned
QCoreApplication is created and destroyed. This won't work if you call
runReturn instead of run unless you take responsibility for destroying
QCoreApplication yourself...
However, most users want this reactor to do gui stuff so this shouldn't
be an issue.
Performance impact of Qt has been reduced by minimizing use of signaling
which is expensive.
Examples / tests in ghtTests
Using the QtReactor
-------------------
Before running / importing any other Twisted code, invoke:
::
app = QApplication(sys.argv) # your code to init QtCore
from twisted.application import reactors
reactors.installReactor('pyqt4')
or
::
app = QApplication(sys.argv) # your code to init QtCore
from twisted.application import reactors
reactors.installReactor('pyside4')
alternatively (gui example):
::
app = PyQt4.QtGui(sys.argv) # your code to init QtGui
from qtreactor import pyqt4reactor
pyqt4reactor.install()
Testing
~~~~~~~
::
trial --reactor=pyqt4 [twisted] [twisted.test] [twisted.test.test_internet]
Testing with a Gui
~~~~~~~~~~~~~~~~~~
Twisted trial can be run for a Gui test using gtrial. Run Trial in the
same directory as bin/gtrial and it pops up a trivial gui... hit the
buton and it all runs the same... don't use the --reactor option when
calling gtrial... but all the other options appear to work.
::
cp gtrial <test-directory>
cd <test-directory> && trial
If you're writing a conventional Qt application and just want twisted as
an addon, you can get that by calling reactor.runReturn() instead of
run(). This call needs to occur after your installation of of the
reactor and after QApplication.exec\_() (or QCoreApplication.exec\_()
whichever you are using.
reactor.run() will also work as expected in a typical twisted
application
Note that if a QApplication or QCoreApplication instance isn't
constructed prior to calling reactor run, an internally owned
QCoreApplication is created and destroyed. This won't work if you call
runReturn instead of run unless you take responsibility for destroying
QCoreApplication yourself...
However, most users want this reactor to do gui stuff so this shouldn't
be an issue.
Performance impact of Qt has been reduced by minimizing use of signaling
which is expensive.
Examples / tests in ghtTests
Metadata
Release files for qt4reactor 1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| qt4reactor-1.6.tar.gz | 15.6 kB | Details |
Release files / qt4reactor-1.6.tar.gz
| Download URL | qt4reactor-1.6.tar.gz |
|---|---|
| Size | 15.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
43d44d6d96c6f6a76184db1f0e3138c1e25875bc3557a661e728c0e8f419b616
|
|
BLAKE2b-256 checksum How to use checksums |
c77b3433ca2a74fa31d7dd5f455ee6ff8ee772bef433c950e1e24c7f057c03a4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |