|
From: Ethan A M. <merritt@u.washington.edu> - 2005-08-08 04:15:15
|
On Sunday 07 August 2005 02:48 am, Petr Mikulik wrote:
> > Amazingly enough, I think this problem may go away when you remove the
> > conditional coding of PM3D.
>
> Let's see. I've just committed the removal.
OK. I've collapsed gc_pm3d back into the main gc. That fixed the
rotated-text color bug for white or near-white backgrounds.
I've also finally understood how to apply Dave Denholm's suggestion
for avoiding color-mangling by making 2 passes. That fixes the problem
for all backgrounds, at least if the display visual is TrueColor or
DirectColor. I'm not so sure about PseudoColor visuals, but at any
rate the fall-back to "gnuplot*fastrotate: off" is still available.
I have not yet merged the pm3d and non-pm3d command protocols sent
from x11.trm to gplot_x11.c. That would remove a bit of redundant
code at each end, but I don't expect any effects on performance.
> There is yet another code which looks "suspictious" to me, because it
> was formerly surrounded by #if defined(PM3D) && defined(USE_MOUSE):
That bit is OK, I think. The xor GC is used for drawing the "rubber-band"
ruler and zoom-box lines. It would not be needed if there is no
mouse support. Or were you suspicious about something different?
> gplt_x11.c, line 5039:
>
> #ifdef USE_MOUSE
> {
> /* create the xor GC just for allocating the xor value
> * before a palette is created. This way the xor foreground
> * will be available. */
> AllocateXorPixel(cmap_ptr);
> }
> #endif
> }
>
> ---
> PM
--
Ethan A Merritt
Biomolecular Structure Center
University of Washington, Seattle 98195-7742
|