03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/************************************************************
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncCopyright (c) 1993 by Silicon Graphics Computer Systems, Inc.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncPermission to use, copy, modify, and distribute this
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncsoftware and its documentation for any purpose and without
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncfee is hereby granted, provided that the above copyright
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncnotice appear in all copies and that both that copyright
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncnotice and this permission notice appear in supporting
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncdocumentation, and that the name of Silicon Graphics not be
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncused in advertising or publicity pertaining to distribution
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncof the software without specific prior written permission.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncSilicon Graphics makes no representation about the suitability
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncof this software for any purpose. It is provided "as is"
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncwithout any express or implied warranty.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncSILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncSOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncAND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncGRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncDAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncDATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncOR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncTHE USE OR PERFORMANCE OF THIS SOFTWARE.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync********************************************************/
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbAddGeomOverlayRow SrvXkbAddGeomOverlayRow
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbAddGeomOverlayKey SrvXkbAddGeomOverlayKey
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbFreeGeomKeyAliases SrvXkbFreeGeomKeyAliases
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbFreeGeomProperties SrvXkbFreeGeomProperties
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbOutlineIndex(s,o) ((int)((o)-&(s)->outlines[0]))
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbShapeDoodadColor(g,d) (&(g)->colors[(d)->color_ndx])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbShapeDoodadShape(g,d) (&(g)->shapes[(d)->shape_ndx])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbSetShapeDoodadColor(g,d,c) ((d)->color_ndx= (c)-&(g)->colors[0])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbSetShapeDoodadShape(g,d,s) ((d)->shape_ndx= (s)-&(g)->shapes[0])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbTextDoodadColor(g,d) (&(g)->colors[(d)->color_ndx])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbSetTextDoodadColor(g,d,c) ((d)->color_ndx= (c)-&(g)->colors[0])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbIndicatorDoodadShape(g,d) (&(g)->shapes[(d)->shape_ndx])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbIndicatorDoodadOnColor(g,d) (&(g)->colors[(d)->on_color_ndx])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbIndicatorDoodadOffColor(g,d) (&(g)->colors[(d)->off_color_ndx])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbLogoDoodadColor(g,d) (&(g)->colors[(d)->color_ndx])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbLogoDoodadShape(g,d) (&(g)->shapes[(d)->shape_ndx])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbSetLogoDoodadColor(g,d,c) ((d)->color_ndx= (c)-&(g)->colors[0])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbSetLogoDoodadShape(g,d,s) ((d)->shape_ndx= (s)-&(g)->shapes[0])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbKeyShape(g,k) (&(g)->shapes[(k)->shape_ndx])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbKeyColor(g,k) (&(g)->colors[(k)->color_ndx])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbSetKeyShape(g,k,s) ((k)->shape_ndx= (s)-&(g)->shapes[0])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbSetKeyColor(g,k,c) ((k)->color_ndx= (c)-&(g)->colors[0])
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define XkbGeomColorIndex(g,c) ((int)((c)-&(g)->colors[0]))
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * Specifies which items should be cleared in an XKB geometry array
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * when the array is reallocated.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsynctypedef enum {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XKB_GEOM_CLEAR_NONE, /* Don't clear any items, just reallocate. */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XKB_GEOM_CLEAR_EXCESS, /* Clear new extra items after reallocation. */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XKB_GEOM_CLEAR_ALL /* Clear all items after reallocation. */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern XkbPropertyPtr XkbAddGeomProperty(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char * /* name */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char * /* value */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern XkbKeyAliasPtr XkbAddGeomKeyAlias(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char * /* alias */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char * /* real */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern XkbColorPtr XkbAddGeomColor(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char * /* spec */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync unsigned int /* pixel */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern XkbOutlinePtr XkbAddGeomOutline(XkbShapePtr /* shape */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* sz_points */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern XkbShapePtr XkbAddGeomShape(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* sz_outlines */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern XkbRowPtr XkbAddGeomRow(XkbSectionPtr /* section */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* sz_keys */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern XkbSectionPtr XkbAddGeomSection(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* sz_rows */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* sz_doodads */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* sz_overlays */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern XkbOverlayPtr XkbAddGeomOverlay(XkbSectionPtr /* section */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* sz_rows */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern XkbOverlayRowPtr XkbAddGeomOverlayRow(XkbOverlayPtr /* overlay */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* row_under */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* sz_keys */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern XkbOverlayKeyPtr XkbAddGeomOverlayKey(XkbOverlayPtr /* overlay */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char * /* over */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char * /* under */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern XkbDoodadPtr XkbAddGeomDoodad(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nDoodads */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XkbFreeGeomOverlayKeys(XkbOverlayRowPtr /* row */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XkbFreeGeomOverlayRows(XkbOverlayPtr /* overlay */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* first */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync unsigned int /* which */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* szItems */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nrItems */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* itemSize */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomProps(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nProps */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomKeyAliases(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nAliases */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomColors(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nColors */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomShapes(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nShapes */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomSections(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nSections */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomOverlays(XkbSectionPtr /* section */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* num_needed */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomOverlayRows(XkbOverlayPtr /* overlay */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* num_needed */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomOverlayKeys(XkbOverlayRowPtr /* row */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* num_needed */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomDoodads(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nDoodads */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomSectionDoodads(XkbSectionPtr /* section */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nDoodads */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomOutlines(XkbShapePtr /* shape */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nOL */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomRows(XkbSectionPtr /* section */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nRows */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomPoints(XkbOutlinePtr /* ol */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nPts */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeomKeys(XkbRowPtr /* row */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nKeys */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern Status XkbAllocGeometry(XkbDescPtr /* xkb */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XkbComputeSectionBounds(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern char *XkbFindOverlayForKey(XkbGeometryPtr /* geom */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char * /* under */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#endif /* _XKBGEOM_H_ */