GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
XkbComputeShapeBounds(3) XKB FUNCTIONS XkbComputeShapeBounds(3)

XkbComputeShapeBounds - Updates the bounding box of a shape

Bool XkbComputeShapeBounds (XkbShapePtr shape);

- shape
shape to be examined

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 outlines 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.

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;

XkbComputeRowBounds(3)

libX11 1.7.2 X Version 11

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.