On 2011-08-10 09:55+0100 Andrew Ross wrote:

> I've now implemented driver support for arcs (including rotated arcs) in
> the Qt driver too. I'm no Qt expert, but all looks to work fine.

Your change generated a big improvement in the looks of the last page
you get from

examples/c/x27c -dev qtwidget

Thanks for bringing qt back on par with the cairo device driver again.

> There does seem to be a lot of duplicated code in the Qt driver for the
> different flavours of device. From a maintenance point of view it would
> be good to streamline this a bit. Since it is all in C++ this should be
> perfectly do-able. Another little project for the list...

To give what I remember of the history of that, it was nice compact
code at one point, but it depended on dynamic_cast which was not
working correctly in some cases (perhaps due to a bug in g++?).  So to
fix a specific issue with the external device, Hazen decided (revision
10109) to change to C-style casts for the extqt device which
proliferated some dispatch functions.  Then Alban followed with
another patch (revision 10168) to make the equivalent change across
the board (which proliferated lots more dispatch functions) because he
no longer trusted dynamic_cast at all.

So I doubt we would want to go back to dynamic_casts (unless whatever
the issue was with dynamic_cast in the Linux build tools is now
fixed). However, there are likely other ways to eliminate the
duplicated code so I hope someone here is willing to look at that.

Alan
__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state implementation
for stellar interiors (freeeos.sf.net); PLplot scientific plotting software
package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of
Linux Links project (loll.sf.net); and the Linux Brochure Project
(lbproject.sf.net).
__________________________

Linux-powered Science
__________________________

------------------------------------------------------------------------------
uberSVN's rich system and user administration capabilities and model 
configuration take the hassle out of deploying and managing Subversion and 
the tools developers use with it. Learn more about uberSVN and get a free 
download at:  http://p.sf.net/sfu/wandisco-dev2dev
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to