##// END OF EJS Templates
Avoid crashing if interrupt the kernel during completion....
Avoid crashing if interrupt the kernel during completion. This is likely due to completion taking too long, so just return what we have so far, and ignore the interrupt. closes #10733

File last commit:

r21944:f34eb22e
r23907:1ad6a295
Show More
gui-gtk3.py
37 lines | 773 B | text/x-python | PythonLexer
#!/usr/bin/env python
"""Simple Gtk example to manually test event loop integration.
This is meant to run tests manually in ipython as:
In [1]: %gui gtk3
In [2]: %run gui-gtk3.py
"""
from gi.repository import Gtk
def hello_world(wigdet, data=None):
print("Hello World")
def delete_event(widget, event, data=None):
return False
def destroy(widget, data=None):
Gtk.main_quit()
window = Gtk.Window(type=Gtk.WindowType.TOPLEVEL)
window.connect("delete_event", delete_event)
window.connect("destroy", destroy)
button = Gtk.Button(label="Hello World")
button.connect("clicked", hello_world, None)
window.add(button)
button.show()
window.show()
try:
from IPython.lib.inputhook import enable_gui
enable_gui('gtk3')
except ImportError:
Gtk.main()