Re: [matplotlib-devel] [IPython-dev] Qt api selection re. ipython and matplotlib

2011-07-05 Thread Eric Firing
On 07/04/2011 06:51 PM, MinRK wrote:
> On Mon, Jul 4, 2011 at 20:57, Eric Firing  wrote:
>> On 07/04/2011 04:26 PM, Darren Dale wrote:
>>> On Mon, Jul 4, 2011 at 9:17 PM, Fernando Perez
>>> wrote:
 Hi folks,

 Eric Firing, Darren Dale and others in the MPL team are trying to work
 out the Qt API selection issues after our own updates, but there are
 some technical questions in there that require more knowledge about Qt
 than I have.  The MPL pull request is:

 https://github.com/matplotlib/matplotlib/pull/390

 which follows our own recent changes:

 https://github.com/ipython/ipython/pull/550#issuecomment-1490217

 Evan has already done the lion's share of the work on this topic, but
 I figured I'd ping the list in case someone else can also jump in,
 since I myself am kind of useless on the details of Qt itself.
>>>
>>> Note that this is probably not specific to matplotlib, but rather
>>> IPython's qt gui support. IPython.external.qt is setting the sip api
>>> level for PyQt4 to api version 2. Version 2 is not the default for
>>> python-2, which means that ipython would not be able to run PyQt4 apps
>>> or scripts that use QString or QVariant, both of which are officially
>>> supported in the default PyQt4 api. It will impact a lot of users and
>>> a lot of projects.
>>
>> Reference:
>>
>> http://developer.qt.nokia.com/wiki/Differences_Between_PySide_and_PyQt
>>
>> It seems that the mpl qt4 backend works with Version 1 or 2 (and with
>> PyQt4 or PySide) given just a little bit of compatibility shimming.  If
>> ipython can similarly get by with a few shims, so that it does not need
>> to set the Version, then the problem is solved once those shims are
>> identified and installed.
>>
>> If I remove the version-setting from qt.py, then ipython still works
>> with mpl and PyQt4 via "ipython pylab=qt", but it does not work with
>> qtconsole or with PySide.
>
> I don't think we are going to rewrite the whole qtconsole to support
> version 1 for 0.11 this week.  What we can do is change the default
> behavior in qt_for_kernel,
> (https://github.com/ipython/ipython/blob/master/IPython/external/qt_for_kernel.py)
> which is where code that interacts with other applications gets
> imported.  Currently, we use our v2 import unless matplotlib<= 1.0.1
> is detected.  However, we can change that default to be more
> conservative.  User code (e.g. matplotlib code, integration with other
> apps) is not in the same process as the QtConsole, so we can have v1
> code in the kernel with v2 in the frontend.

I updated mpl pull request #390 and added ipython pull request #550 with 
a strawman plan based on mpl rcParams.  A quick test indicates that it 
makes qtconsole work with pylab=qt with either PyQt4 or PySide selected 
in mpl, and it also works with the ipython console with PyQt4, but not 
with PySide.  I don't know why the latter does not work.

Eric


>
> -MinRK
>
>>
>> Eric
>> ___
>> IPython-dev mailing list
>> [email protected]
>> http://mail.scipy.org/mailman/listinfo/ipython-dev
>>


--
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
___
Matplotlib-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel


Re: [matplotlib-devel] [IPython-dev] Qt api selection re. ipython and matplotlib

2011-07-05 Thread Eric Firing
On 07/04/2011 09:42 PM, Eric Firing wrote:

>
> I updated mpl pull request #390 and added ipython pull request #550 with

That should have been ipython pull request #556.

Eric

--
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
___
Matplotlib-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel