David Gilbert wrote:
Clemens Eisserer wrote:
It hasn't. The default mode is not outline AFAIK. So if you enabled
outline, it's all your fault!
I disagree here, Swing does provide the outline mode as a public API,
it worked great in the past and now its broken.
Its not deprecated, not even mentioned in the documentation that it
should better not be used.
Even the Swing team has not removed all uses of Xor, so I guess this
can't be expected from an average external developer.
Thanks, Clemens
I've had this problem drawn to my attention. I use XOR in JFreeChart
for drawing the zoom rectangle on a ChartPanel, so that it can be
updated without redrawing the underlying chart (which might take too
long if it is a complex chart). So this is causing a problem for all
IMO if it takes too long to draw a chart it needs to be cached in
an image (VolatileImage, for example).
the people using JFreeChart in Swing applications (there's quite a few
out there). I'm testing a workaround for the next release where, if the
ChartPanel is using a buffer for the chart, XOR won't be used.
I agree with Clemens that this worked fine in the past, hasn't been
deprecated, and doesn't work too well now. If it can't be fixed, I
suggest deprecating the method, or updating the documentation to note
that some implementations won't be able to handle the method efficiently.
As I mentioned, I was joking. Of course it's a regression that needs to
be addressed. I don't think it's worth deprecating the method because
one pipeline can't handle it efficiently.
However, so far I have seen very few examples where the use of Xor
paint mode is required.
Thanks,
Dmitri
Best regards,
Dave Gilbert
JFreeChart Project Leader