Standalone WX GUI support is broken #645

fperez opened this Issue Jul 30, 2011 · 6 comments


None yet

4 participants

fperez commented Jul 30, 2011

The example in docs/lib/ doesn't currently work, and I've failed in all simple attempts at fixing it. Since we can't hold the 0.11 release for any longer, I'm marking this as a known bug in the release notes, but we should get to the bottom of it.

The other three examples (Qt, GTK, Tk) do run fine.

fperez commented Jul 30, 2011

When fixing this, don't forget to update the GUI section in the docs/source/interactive/reference.txt file that has warnings about this issue.


Not sure what to expect from this example but here's what worked for me. I got the pop-up and the buttons worked.

BTW: what does %gui wx do?


$ git diff
diff --git a/docs/examples/lib/ b/docs/examples/lib/
index c55ce4f..a374024 100755
--- a/docs/examples/lib/
+++ b/docs/examples/lib/
@@ -105,13 +105,19 @@ class MyApp(wx.App):

 if __name__ == '__main__':
-    raise NotImplementedError(
-        'Standalone WX GUI support is currently broken. '
-        'See for details')
+    #raise NotImplementedError(
+    #    'Standalone WX GUI support is currently broken. '
+    #    'See for details')

     app = wx.GetApp()
     if app is None:
         app = MyApp(redirect=False, clearSigInt=False)
+    else:
+        frame = MyFrame(None, "Simple wxPython App")
+        app.SetTopWindow(frame)
+        print "Print statements go to this stdout window by default."
+        frame.Show(True)

         from IPython.lib.inputhook import enable_wx

@piotradam : Were you able to continue running commands in IPython while the Wx window was displayed?


Yes. I just tried it. I even imported pylab and made a simple plot. The funny thing is that it showed as Tk window.


@takluyver it event continued to work after I close the window :)


After you close the window is the easy bit ;-). Normally, if you ran a GUI app inside IPython, IPython would lock up until you close the new window. It's keeping both the window and the shell interactive at the same time that takes work.

I imagine matplotlib will just use your default backend.

@fperez : Can you now get this working as well?

@minrk minrk closed this in 6e492bd Feb 7, 2012
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment