##// END OF EJS Templates
Allow widget views to be loaded from require modules...
Allow widget views to be loaded from require modules This required refactoring things that create widget views to use callbacks instead of return values.

File last commit:

r16414:422c5094
r18142:c01bab24
Show More
qt.py
23 lines | 806 B | text/x-python | PythonLexer
""" A Qt API selector that can be used to switch between PyQt4/5 and PySide.
This uses the ETS 4.0 selection pattern of:
PySide first, PyQt4 (API v2.) second, then PyQt5.
Do not use this if you need PyQt4 with the old QString/QVariant API.
"""
import os
from IPython.external.qt_loaders import (load_qt, QT_API_PYSIDE,
QT_API_PYQT, QT_API_PYQT5)
QT_API = os.environ.get('QT_API', None)
if QT_API not in [QT_API_PYSIDE, QT_API_PYQT, QT_API_PYQT5, None]:
raise RuntimeError("Invalid Qt API %r, valid values are: %r, %r, %r" %
(QT_API, QT_API_PYSIDE, QT_API_PYQT, QT_API_PYQT5))
if QT_API is None:
api_opts = [QT_API_PYSIDE, QT_API_PYQT, QT_API_PYQT5]
else:
api_opts = [QT_API]
QtCore, QtGui, QtSvg, QT_API = load_qt(api_opts)