> Darren Dale wrote:
>
> On Tue, Apr 28, 2009 at 12:19 PM, Pierre Raybaut <
contact-QtrjXdzn5eVWk0Htik3J/w@public.gmane.org>
> wrote:
>>
>> 2009/4/28 John Hunter <
jdh2358-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>:
>> >
>> >
>> > On Tue, Apr 28, 2009 at 8:18 AM, Pierre Raybaut <
contact-QtrjXdzn5eVWk0Htik3J/w@public.gmane.org>
>> > wrote:
>> >>
>> >> Hi all,
>> >>
>> >> I would like to contribute to matplotlib with this enhancement for the
>> >> PyQt4 backend: the idea is to add a toolbar button to configure figure
>> >> options (axes, curves, ...).
>> >>
>> >> It's based on a tiny module called formlayout to generate PyQt4 form
>> >> dialog automatically.
>> >>
>> >> Some screenshots:
>> >>
http://code.google.com/p/formlayout/
>> >>
>> >> So, if you're interested (all the following is GPL2):
>> >>
>> >> *matplotlib patch*
>> >>
>> >> In FigureManagerQT.__init__, added:
>> >> self.canvas.axes = self.canvas.figure.add_subplot(111)
>> >>
>> >> In NavigationToolbar2QT._init_toolbar, added:
>> >> a = self.addAction(self._icon("customize.png"), 'Customize',
>> >> self.edit_parameters)
>> >> a.setToolTip('Edit curves line and axes parameters')
>> >>
>> >> Added the following method in NavigationToolbar2QT:
>> >> def edit_parameters(self):
>> >> from figureoptions import figure_edit
>> >> figure_edit(self.canvas, self)
>> >>
>> >> *additionnal modules and data*
>> >>
>> >> formlayout.py (
http://code.google.com/p/formlayout/)
>> >> figureoptions.py (
http://code.google.com/p/PyQtShell/)
>> >> customize.png (
http://code.google.com/p/PyQtShell/)
>> >
>> > Hi Pierre -- this looks very nice (the last link is broken though , I
>> > get a
>> > 404 error). We would be happy to include this in matplotlib or as a
>>
>> Here is the last link:
>>
http://code.google.com/p/pyqtshell/
>>
>> > toolkit. To contribute it to to mpl, the license needs to be
>> > matplotlib
>> > compatible
>> > (
http://matplotlib.sourceforge.net/devel/coding_guide.html#licenses) but
>> > we
>> > have more licensing flexibility in a toolkit, though we prefer to keep
>> > everything BSD compatible where possible. And of course you would need
>> > to
>> > agree to maintain it

but I think many users would appreciate a GUI
>> > plot
>> > configuration dialog.
>>
>> I was not aware of this license restriction in matplotlib... I fully
>> understand the motivation, of course, but still: I wrote all this on
>> my free time which means no PyQt4 commercial license, so it can't be
>> anything but GPL. Sorry...
>
> I think you have overlooked a subtlety of PyQt4's license. The author of
> PyQt4 wrote on the enthought-dev mailing list:
>
> "PyQt is GPL but has exceptions that allow it to be used with BSD code -
> hence it's Ok for TraitsBackendQt to be BSD.
>
> However, the exception imposes additional conditions which, to all intents
> and purposes, infects the code with the GPL. To be fair to people that
> should be made clear in any text.
>
> It's still a good idea for TraitsBackendQt to use a BSD license because it
> allows commercial (ie. non-GPL) users to use it without problems."
>
> Darren
>
> I think it might be worth contacting the PyQt folks (Phil Thompson) about
> this. I think there might be some differences here because Phil was the
> author of TraitsBackendQt and thus his efforts didn't quite fall under the
> "develop under a free license, your results needs to be GPL" clause Qt/PyQt
> have in their licensing.
>
> -- Dave
>
>