Le 25/02/2012 22:59, John Hunter a écrit :


On Sat, Feb 25, 2012 at 1:54 PM, Benjamin Root <ben.r...@ou.edu> wrote:

>
>> >     I would be interested in accelerating the schedule.  Since this is a
>> >     bug-fix release and not a major release, we can presume the tree is
>> >     pretty stable.  How about we aim for an release candidate rc1 the
>> >     week after next?  Are there any issues or pull requests that should
>> >     hold the release?  If so, let's tag them with release-critical.
>> >
>> >     After we get the bugfix out I'd like to gear up for a major python3
>> >     release.
>> >
>> >
>> > The QT4 event handling bugs needs a qt expert on them. I tried looking
>> > into them and there is no obvious reason to me why they aren't working.
>>
>> Are you referring to  771, 707, and 525?  771 would appear to be the
>> most urgent.
>
>
>   711 and 707.  Didn't even notice 525, but it is probably related to
> 707.  If true, then 707 and 525 are likely focus issues (maybe
> window-manager dependent?).  711 definitely seem to be release blocking.
>
>

 Hi Pierre, we are still having trouble with the close event in mpl figure
windows not being emitted.  I see you posted on this subject in 2009 and
did some monkey patching to work around the problem for spyder


http://old.nabble.com/Qt4-backend%3A-critical-bug-with-PyQt4-v4.6%2B-td26205716.html

This was a while ago so I don't know if your suggestions are still
appropriate for recent pyqt and mpl.  Would you have a minute to take a
look at this mpl issue

 https://github.com/matplotlib/matplotlib/issues/711

 and advise us on a fix?

 Thanks,
JDH




Hi John,

Replacing this (backend_qt4.py, class "FigureCanvasQT", line 141):
        QtCore.QObject.connect(self, QtCore.SIGNAL('destroyed()'),
                               self.close_event)
by this:
        QtCore.QObject.connect(self, QtCore.SIGNAL('destroyed()'),
                               lambda: self.close_event())
will solve this issue.

The reason is that PyQt fails (silently) to call a method of this object
just before detroying it. Using a lambda function will work, exactly the
same as using a function (which is not bound to the object to be destroyed).

Side note: I'm not sure that it's the intended behavior for PyQt...

HTH,
Pierre
------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Reply via email to