From: Dave P. <dpe...@en...> - 2009-04-28 17:31:15
|
Darren Dale wrote: > On Tue, Apr 28, 2009 at 12:19 PM, Pierre Raybaut <co...@py... > <mailto:co...@py...>> wrote: > > 2009/4/28 John Hunter <jd...@gm... <mailto:jd...@gm...>>: > > > > > > On Tue, Apr 28, 2009 at 8:18 AM, Pierre Raybaut > <co...@py... <mailto:co...@py...>> > > 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 |