##// END OF EJS Templates
Backport PR #5458: Add support for PyQt5....
Backport PR #5458: Add support for PyQt5. This PR adds the new `QT_API_PYQT5` to `IPython/external/qt_loaders.py ` and allows to embed the IPython console in Qt5 Applications. In case of PyQt5, the loader returns a union of `PyQt5.QtGui` and `PyQt5.QtWidgets` acting as a Qt4-QtGui compatibility module. One small fix to `InProcessChannel.__init__` was necessary though. For some reason, when constructing `QtInProcessShellChannel`, the `QtCore.QObject.__init__` initializer from `SuperQObject` indirectly calls the `InProcessChannel.__init__` function, which doesn't have a default constructor and thus fails. I assume this has something to do with the metaclass/multiple inheritance approach IPython uses on QObject. Adding a default value for `client` in `InProcessChannel.__init__` solved the problem for me.

File last commit:

r7777:2255c2b8
r18784:3b30bb89
Show More
test_example.txt
24 lines | 730 B | text/plain | TextLexer
=====================================
Tests in example form - pure python
=====================================
This file contains doctest examples embedded as code blocks, using normal
Python prompts. See the accompanying file for similar examples using IPython
prompts (you can't mix both types within one file). The following will be run
as a test::
>>> 1+1
2
>>> print ("hello")
hello
More than one example works::
>>> s="Hello World"
>>> s.upper()
'HELLO WORLD'
but you should note that the *entire* test file is considered to be a single
test. Individual code blocks that fail are printed separately as ``example
failures``, but the whole file is still counted and reported as one test.