configuring X Windows on HP-UX (other graphics cards)

hp Fire GL-UX configuration hints

hp Fire GL-UX configuration hints

overlay visuals and overlay transparency

HP Fire GL-UX devices have one visual in the overlay planes, depth-8 PseudoColor. To allow applications to determine which visuals are in the overlay planes, overlay visuals are listed in the "SERVER_OVERLAY_VISUALS" property attached to the root window. The default overlay visual has a transparent type of "1" (Transparent- Pixel).

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;

XVisualInfogetVis;

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)

72

Chapter 3