<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=utf-8">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page Section1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.Section1
        {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]-->
</head>

<body lang=FR link=blue vlink=purple>

<div class=Section1>

<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Hi igor,<o:p></o:p></span></p>

<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Ok I see you want to instanciate wx object from within the shell.<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>I haven’t tested GUI direct call within the widget.<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>As the widget is wx one, there should not have error and could
be possible. I had a discussion with a guy previously on this mailing because
he wanted to play with wx/qt/etc with ipython widget.<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>The main problem is that in that case he needed in fact that
ipython shell run in it’s own process separated from wx one.<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>In your case, do you want to only interact with YOUR wx loop
(that is the wx ipython widget loop)?<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>If yes, should be possible. I will take a look at your bug
tonight (in ~12hours).<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Sure it can work, and moreover should be really interesting to
do that </span><span lang=EN-US style='font-size:11.0pt;font-family:Wingdings;
color:#1F497D'>J</span><span lang=EN-US style='font-size:11.0pt;font-family:
"Calibri","sans-serif";color:#1F497D'>!<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>I suspect that the ipython instance (not the widget) behind the
scene has not the same globals/locals scope as your root app.<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>So it can directly interact with wx loop. (perhaps, I’m saying
dumb things).<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>I think we have to pass globals/locals to the ipython shell.(there
is parameters for this, but haven’t tried it this well)<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Will try tonight.<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>By the way on which linux are you working? (version needed too,
to reproduce the bug)<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>On windows, doing that just spawn a window, and kill it
instantaneously…<o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Regards,<o:p></o:p></span></p>

<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Laurent<o:p></o:p></span></p>

<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p>&nbsp;</o:p></span></p>

<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'>

<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>De&nbsp;:</span></b><span
style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> igorsyl@gmail.com
[mailto:igorsyl@gmail.com] <b>De la part de</b> Igor Sylvester<br>
<b>Envoyé&nbsp;:</b> vendredi 25 avril 2008 07:32<br>
<b>À&nbsp;:</b> Laurent Dufréchou; ipython-dev<br>
<b>Objet&nbsp;:</b> wxIPython and wx<o:p></o:p></span></p>

</div>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>Hi Laurent,<br>
<br>
I was playing with wxIPython today and I wasn't able to spawn new wx objects
within the shell.<br>
<br>
I ran:<br>
<br>
&gt;&gt;&gt; import wxIPython<br>
&gt;&gt;&gt; wxIPython.MyApp().MainLoop()<br>
<br>
Then, in the wxIPython shell, I typed:<br>
<br>
&gt;&gt;&gt; import wx<br>
&gt;&gt;&gt; wx.Frame(None).Show()<br>
<br>
And the python process died with the following.<br>
<br>
Warning! Hook 'show_in_pager' is not one of ['editor', 'fix_error_editor', 'result_display',
'input_prefilter', 'shutdown_hook', 'late_startup_hook', 'generate_prompt',
'generate_output_prompt']<br>
Warning! Hook 'shell_hook' is not one of ['editor', 'fix_error_editor',
'result_display', 'input_prefilter', 'shutdown_hook', 'late_startup_hook',
'generate_prompt', 'generate_output_prompt']<br>
^[[A^[[BXlib: unexpected async reply (sequence 0x31e8)!<br>
Xlib: sequence lost (0x131e8 &gt; 0x4bd8) in reply type 0x0!<br>
The program 'python' received an X Window System error.<br>
This probably reflects a bug in the program.<br>
The error was 'BadImplementation (server does not implement operation)'.<br>
&nbsp; (Details: serial 12776 error_code 17 request_code 20 minor_code 0)<br>
&nbsp; (Note to programmers: normally, X errors are reported asynchronously;<br>
&nbsp;&nbsp; that is, you will receive the error a while after causing it.<br>
&nbsp;&nbsp; To debug your program, run it with the --sync command line<br>
&nbsp;&nbsp; option to change this behavior. You can then get a meaningful<br>
&nbsp;&nbsp; backtrace from your debugger if you break on the gdk_x_error()
function.)<br>
<br>
I am about to look at the editra source to see how you embed an ipython
shell.&nbsp; But, I'd appreciate if you have any insight into this.&nbsp;
Specifically, are you able to reproduce this error, or is it a bug in my X?<br>
<br>
Thanks.<br>
<br>
Igor<o:p></o:p></p>

</div>

</body>

</html>