##// END OF EJS Templates
Merge pull request #3601 from minrk/headingmath2...
Merge pull request #3601 from minrk/headingmath2 Markdown in heading cells (take 2) closes #3053 closes #3597

File last commit:

r11131:ad2364d8
r11432:ae04a0df merge
Show More
manager.py
52 lines | 1.5 KiB | text/x-python | PythonLexer
MinRK
add QtKernelManager with restarter
r10308 """ Defines a KernelClient that provides signals and slots.
"""
from IPython.external.qt import QtCore
# Local imports
Thomas Kluyver
Remove unused imports in IPython.qt
r11131 from IPython.utils.traitlets import Bool
MinRK
add QtKernelManager with restarter
r10308
from IPython.kernel import KernelManager
from IPython.kernel.restarter import KernelRestarter
from .kernel_mixins import QtKernelManagerMixin, QtKernelRestarterMixin
class QtKernelRestarter(KernelRestarter, QtKernelRestarterMixin):
def start(self):
if self._timer is None:
self._timer = QtCore.QTimer()
self._timer.timeout.connect(self.poll)
self._timer.start(self.time_to_dead * 1000)
def stop(self):
self._timer.stop()
def poll(self):
super(QtKernelRestarter, self).poll()
class QtKernelManager(KernelManager, QtKernelManagerMixin):
"""A KernelManager with Qt signals for restart"""
autorestart = Bool(True, config=True)
def start_restarter(self):
if self.autorestart and self.has_kernel:
if self._restarter is None:
self._restarter = QtKernelRestarter(
kernel_manager=self,
MinRK
use `parent=self` throughout IPython...
r11064 parent=self,
MinRK
add QtKernelManager with restarter
r10308 log=self.log,
)
MinRK
s/register_callback/add_callback/
r10317 self._restarter.add_callback(self._handle_kernel_restarted)
MinRK
add QtKernelManager with restarter
r10308 self._restarter.start()
def stop_restarter(self):
if self.autorestart:
if self._restarter is not None:
self._restarter.stop()
def _handle_kernel_restarted(self):
self.kernel_restarted.emit()