Index of Section 3 Manual Pages

Interix / SUAXkbComputeShapeBounds.3Interix / SUA

XkbComputeShapeBounds(3)  XKB FUNCTIONS  XkbComputeShapeBounds(3)



NAME
       XkbComputeShapeBounds  -  Updates  the  bounding  box of a
       shape

SYNOPSIS
       Bool XkbComputeShapeBounds ( shape )
             XkbShapePtr shape;

ARGUMENTS
       - shape
              shape to be examined

DESCRIPTION
       Xkb provides a number of convenience functions to help use
       a keyboard geometry. These include functions to return the
       bounding box of a shape's top surface and  to  update  the
       bounding box of a shape row or section.

       A  shape  is made up of a number of outlines. Each outline
       is a polygon made up of a number of points.  The  bounding
       box  of  a shape is a rectangle that contains all the out-
       lines of that shape.

       A ShapeRec contains a BoundsRec that describes the  bounds
       of the shape. If you add or delete an outline to or from a
       shape, the bounding box must be updated.

       XkbComputeShapeBounds updates the BoundsRec  contained  in
       the  shape  by examining all the outlines of the shape and
       setting the BoundsRec to the minimum x and minimum y,  and
       maximum  x  and  maximum y values found in those outlines.
       XkbComputeShapeBounds returns False if shape is NULL or if
       there are no outlines for the shape; otherwise, it returns
       True.

       If you add or delete a key to or from a  row,  or  if  you
       update  the  shape of one of the keys in that row, you may
       need to update the bounding box of that row. To update the
       bounding box of a row, use XkbComputeRowBounds.

STRUCTURES
       typedef struct _XkbShape {
           Atom           name;         /* shape's name */
           unsigned short num_outlines; /* number of outlines for the shape */
           unsigned short sz_outlines;  /* size of the outlines array */
           XkbOutlinePtr  outlines;     /* array of outlines for the shape */
           XkbOutlinePtr  approx;       /* pointer into the array to the approximating outline */
           XkbOutlinePtr  primary;      /* pointer into the array to the primary outline */
           XkbBoundsRec   bounds;       /* bounding box for the shape; encompasses all outlines */
       } XkbShapeRec, *XkbShapePtr;

       typedef struct _XkbBounds {
           short x1,y1;    /* upper left corner of the bounds, in mm/10 */
           short x2,y2;    /* lower right corner of the bounds, in mm/10 */
       } XkbBoundsRec, *XkbBoundsPtr;


SEE ALSO
       XkbComputeRowBounds(3)




X Version 11               libX11 1.1.5  XkbComputeShapeBounds(3)

Interix / SUAHosted at SUA Community for Interix, SUA and SFUInterix / SUA