Overlay Transparency on the HCRX-24[Z], HP VISUALIZE-24, and HP VISUALIZE-48[XP]

The HCRX-24[Z], HP VISUALIZE-24, and HP VISUALIZE-48[XP] have two visuals in the overlay planes, both depth-8 PseudoColor.

The default overlay visual has 256 entries per colormap and no transparency.

The second overlay visual has 255 entries per colormap and supports transparency in the same way as the CRX-24[Z]. As on the CRX-24[Z] and CRX-48Z, the screen option EnableOverlayTransparency can be used to include the transparent index in the colormap size (256 entries instead of 255).

To allow applications to determine which visuals are in the overlay planes, both overlay visuals are listed in the SERVER_OVERLAY_VISUALS property attached to the root window. The default overlay visual has a transparent type of 0 (None) while the transparent overlay visual has a transparent type of 1 (TransparentPixel).

If you need an overlay colormap that supports transparency, create the colormap using the visual that has transparency in its SERVER_OVERLAY_VISUALS property. To look at the contents of this property, you would use code similar to the following:

{

 

 

typedef struct {

 

VisualID

overlayVisualID;

Card32

transparentType;/* None, TransparentPixel, TransparentMask */

Card32

value;

/* Either pixel value or pixel mask */

Card32

layer;

 

} OverlayVisualPropertyRec;

OverlayVisualPropertyRec *pOverlayVisuals, *pOVis;

XVisualInfo

 

getVis;

XVisualInfo

 

*pVisuals;

Atom

overlayVisualsAtom, actualType;

...

 

 

/* Get the visuals for this screen and allocate. */ getVis.screen = screen;

pVisuals = XGetVisualInfo(display, VisualScreenMask, &getVis, &nVisuals); pOverlayVisuals = (OverlayVisualPropertyRec *)

malloc ( (size_t)nVisuals * sizeof(OverlayVisualPropertyRec) );

/* Get the overlay visual information for this screen. Obtain

*this information from the SERVER_OVERLAY_VISUALS property. */ overlayVisualsAtom = XInternAtom(display, "SERVER_OVERLAY_VISUALS", True); if (overlayVisualsAtom != None)

Page 62

Graphics Administration Guide for HP-UX 10.20