diff --git a/IPython/core/pylabtools.py b/IPython/core/pylabtools.py index 5f00e92..69e4872 100644 --- a/IPython/core/pylabtools.py +++ b/IPython/core/pylabtools.py @@ -35,7 +35,9 @@ backends = {'tk': 'TkAgg', 'wx': 'WXAgg', 'qt': 'Qt4Agg', # qt3 not supported 'qt4': 'Qt4Agg', + 'qt5': 'Qt5Agg', 'osx': 'MacOSX', + 'nbagg': 'nbAgg', 'inline' : 'module://IPython.kernel.zmq.pylab.backend_inline'} # We also need a reverse backends2guis mapping that will properly choose which diff --git a/IPython/kernel/zmq/eventloops.py b/IPython/kernel/zmq/eventloops.py index 3e195a3..98ee7d2 100644 --- a/IPython/kernel/zmq/eventloops.py +++ b/IPython/kernel/zmq/eventloops.py @@ -14,6 +14,7 @@ # Imports #----------------------------------------------------------------------------- +import os import sys # System library imports @@ -64,6 +65,11 @@ def loop_qt4(kernel): start_event_loop_qt4(kernel.app) +def loop_qt5(kernel): + """Start a kernel with PyQt5 event loop integration""" + os.environ['QT_API'] = 'pyqt5' + return loop_qt4(kernel) + def loop_wx(kernel): """Start a kernel with wx event loop support.""" @@ -228,7 +234,9 @@ def loop_cocoa(kernel): loop_map = { 'qt' : loop_qt4, 'qt4': loop_qt4, + 'qt5': loop_qt5, 'inline': None, + 'nbagg': None, 'osx': loop_cocoa, 'wx' : loop_wx, 'tk' : loop_tk,