6.2. Data Definitions for libX11

This section defines global identifiers and their values that are associated with interfaces contained in libX11. These definitions are organized into groups that correspond to system headers. This convention is used as a convenience for the reader, and does not imply the existence of these headers, or their content. Where an interface is defined as requiring a particular system header file all of the data definitions for that system header file presented here shall be in effect.

This section gives data definitions to promote binary application portability, not to repeat source interface definitions available elsewhere. System providers and application developers should use this ABI to supplement - not to replace - source interface definition specifications.

This specification uses the ISO C (1999) C Language as the reference programming language, and data definitions are specified in ISO C format. The C language is used here as a convenient notation. Using a C language description of these data objects does not preclude their use by other programming languages.

6.2.1. X11/X.h


typedef unsigned long int XID;
typedef unsigned long int Atom;
typedef unsigned long int VisualID;
typedef unsigned long int Time;
typedef XID Window;
typedef XID Font;
typedef XID Pixmap;
typedef unsigned char KeyCode;
typedef XID Drawable;
typedef XID Cursor;
typedef XID Colormap;
typedef XID GContext;
typedef XID KeySym;

#define AllTemporary	0L
#define AnyButton	0L
#define AnyKey	0L
#define AnyPropertyType	0L
#define CopyFromParent	0L
#define CurrentTime	0L
#define NoSymbol	0L
#define None	0L
#define PointerWindow	0L
#define InputFocus	1L
#define ParentRelative	1L
#define PointerRoot	1L

#define KeyPressMask	(1L<<0)
#define KeyReleaseMask	(1L<<1)
#define Button3MotionMask	(1L<<10)
#define Button4MotionMask	(1L<<11)
#define Button5MotionMask	(1L<<12)
#define ButtonMotionMask	(1L<<13)
#define KeymapStateMask	(1L<<14)
#define ExposureMask	(1L<<15)
#define VisibilityChangeMask	(1L<<16)
#define StructureNotifyMask	(1L<<17)
#define ResizeRedirectMask	(1L<<18)
#define SubstructureNotifyMask	(1L<<19)
#define ButtonPressMask	(1L<<2)
#define SubstructureRedirectMask	(1L<<20)
#define FocusChangeMask	(1L<<21)
#define PropertyChangeMask	(1L<<22)
#define ColormapChangeMask	(1L<<23)
#define OwnerGrabButtonMask	(1L<<24)
#define ButtonReleaseMask	(1L<<3)
#define EnterWindowMask	(1L<<4)
#define LeaveWindowMask	(1L<<5)
#define PointerMotionMask	(1L<<6)
#define PointerMotionHintMask	(1L<<7)
#define Button1MotionMask	(1L<<8)
#define Button2MotionMask	(1L<<9)

#define NoEventMask	0L
#define FocusOut	10
#define KeymapNotify	11
#define Expose	12
#define GraphicsExpose	13
#define NoExpose	14
#define VisibilityNotify	15
#define CreateNotify	16
#define DestroyNotify	17
#define UnmapNotify	18
#define MapNotify	19
#define KeyPress	2
#define MapRequest	20
#define ReparentNotify	21
#define ConfigureNotify	22
#define ConfigureRequest	23
#define GravityNotify	24
#define ResizeRequest	25
#define CirculateNotify	26
#define CirculateRequest	27
#define PropertyNotify	28
#define SelectionClear	29
#define KeyRelease	3
#define SelectionRequest	30
#define SelectionNotify	31
#define ColormapNotify	32
#define ClientMessage	33
#define MappingNotify	34
#define LASTEvent	35
#define ButtonPress	4
#define ButtonRelease	5
#define MotionNotify	6
#define EnterNotify	7
#define LeaveNotify	8
#define FocusIn	9

#define ShiftMask	(1<<0)
#define LockMask	(1<<1)
#define ControlMask	(1<<2)
#define Mod1Mask	(1<<3)
#define Mod2Mask	(1<<4)
#define Mod3Mask	(1<<5)
#define Mod4Mask	(1<<6)
#define Mod5Mask	(1<<7)

#define ShiftMapIndex	0
#define LockMapIndex	1
#define ControlMapIndex	2
#define Mod1MapIndex	3
#define Mod2MapIndex	4
#define Mod3MapIndex	5
#define Mod4MapIndex	6
#define Mod5MapIndex	7

#define Button3Mask	(1<<10)
#define Button4Mask	(1<<11)
#define Button5Mask	(1<<12)
#define AnyModifier	(1<<15)
#define Button1Mask	(1<<8)
#define Button2Mask	(1<<9)

#define Button1	1
#define Button2	2
#define Button3	3
#define Button4	4
#define Button5	5

#define NotifyNormal	0
#define NotifyGrab	1
#define NotifyHint	1
#define NotifyUngrab	2
#define NotifyWhileGrabbed	3

#define NotifyAncestor	0
#define NotifyVirtual	1
#define NotifyInferior	2
#define NotifyNonlinear	3
#define NotifyNonlinearVirtual	4
#define NotifyPointer	5
#define NotifyPointerRoot	6
#define NotifyDetailNone	7

#define VisibilityUnobscured	0
#define VisibilityPartiallyObscured	1
#define VisibilityFullyObscured	2

#define PlaceOnTop	0
#define PlaceOnBottom	1

#define FamilyInternet	0
#define FamilyDECnet	1
#define FamilyChaos	2

#define PropModeReplace	0
#define PropertyNewValue	0
#define PropertyDelete	1

#define ColormapUninstalled	0
#define ColormapInstalled	1

#define GrabModeSync	0
#define GrabModeAsync	1

#define GrabSuccess	0
#define AlreadyGrabbed	1
#define GrabInvalidTime	2
#define GrabNotViewable	3
#define GrabFrozen	4

#define AsyncPointer	0
#define SyncPointer	1
#define ReplayPointer	2
#define AsyncKeyboard	3
#define SyncKeyboard	4
#define ReplayKeyboard	5
#define AsyncBoth	6
#define SyncBoth	7

#define RevertToNone	(int)None
#define RevertToPointerRoot	(int)PointerRoot
#define RevertToParent	2

#define Success	0
#define BadRequest	1
#define BadAccess	10
#define BadAlloc	11
#define BadColor	12
#define FirstExtensionError	128
#define BadGC	13
#define BadIDChoice	14
#define BadName	15
#define BadLength	16
#define BadImplementation	17
#define BadValue	2
#define LastExtensionError	255
#define BadWindow	3
#define BadPixmap	4
#define BadAtom	5
#define BadCursor	6
#define BadFont	7
#define BadMatch	8
#define BadDrawable	9

#define CWX	(1<<0)
#define InputOutput	1
#define InputOnly	2

#define CWBackPixmap	(1L<<0)
#define CWBackPixel	(1L<<1)
#define CWSaveUnder	(1L<<10)
#define CWEventMask	(1L<<11)
#define CWDontPropagate	(1L<<12)
#define CWColormap	(1L<<13)
#define CWCursor	(1L<<14)
#define CWBorderPixmap	(1L<<2)
#define CWBorderPixel	(1L<<3)
#define CWBitGravity	(1L<<4)
#define CWWinGravity	(1L<<5)
#define CWBackingStore	(1L<<6)
#define CWBackingPlanes	(1L<<7)
#define CWBackingPixel	(1L<<8)
#define CWOverrideRedirect	(1L<<9)

#define CWY	(1<<1)
#define CWWidth	(1<<2)
#define CWHeight	(1<<3)
#define CWBorderWidth	(1<<4)
#define CWSibling	(1<<5)
#define CWStackMode	(1<<6)

#define ForgetGravity	0
#define UnmapGravity	0
#define NorthWestGravity	1
#define StaticGravity	10
#define NorthGravity	2
#define NorthEastGravity	3
#define WestGravity	4
#define CenterGravity	5
#define EastGravity	6
#define SouthWestGravity	7
#define SouthGravity	8
#define SouthEastGravity	9

#define NotUseful	0
#define WhenMapped	1
#define Always	2

#define IsUnmapped	0
#define IsUnviewable	1
#define IsViewable	2

#define SetModeInsert	0
#define SetModeDelete	1

#define DestroyAll	0
#define RetainPermanent	1
#define RetainTemporary	2

#define Above	0
#define Below	1
#define TopIf	2
#define BottomIf	3
#define Opposite	4

#define RaiseLowest	0
#define LowerHighest	1

#define PropModePrepend	1
#define PropModeAppend	2

#define GXclear	0x0
#define GXand	0x1
#define GXandReverse	0x2
#define GXcopy	0x3
#define GXandInverted	0x4
#define GXnoop	0x5
#define GXxor	0x6
#define GXor	0x7
#define GXnor	0x8
#define GXequiv	0x9
#define GXinvert	0xa
#define GXorReverse	0xb
#define GXcopyInverted	0xc
#define GXorInverted	0xd
#define GXnand	0xe
#define GXset	0xf

#define LineSolid	0
#define LineOnOffDash	1
#define LineDoubleDash	2

#define CapNotLast	0
#define CapButt	1
#define CapRound	2
#define CapProjecting	3

#define JoinMiter	0
#define JoinRound	1
#define JoinBevel	2

#define FillSolid	0
#define FillTiled	1
#define FillStippled	2
#define FillOpaqueStippled	3

#define EvenOddRule	0
#define WindingRule	1

#define ClipByChildren	0
#define IncludeInferiors	1

#define Unsorted	0
#define XYBitmap	0
#define YSorted	1
#define YXSorted	2
#define YXBanded	3

#define CoordModeOrigin	0
#define CoordModePrevious	1

#define Complex	0
#define Nonconvex	1
#define Convex	2

#define ArcChord	0
#define ArcPieSlice	1

#define GCFunction	(1L<<0)
#define GCPlaneMask	(1L<<1)
#define GCTile	(1L<<10)
#define GCStipple	(1L<<11)
#define GCTileStipXOrigin	(1L<<12)
#define GCTileStipYOrigin	(1L<<13)
#define GCFont	(1L<<14)
#define GCSubwindowMode	(1L<<15)
#define GCGraphicsExposures	(1L<<16)
#define GCClipXOrigin	(1L<<17)
#define GCClipYOrigin	(1L<<18)
#define GCClipMask	(1L<<19)
#define GCForeground	(1L<<2)
#define GCDashOffset	(1L<<20)
#define GCDashList	(1L<<21)
#define GCArcMode	(1L<<22)
#define GCBackground	(1L<<3)
#define GCLineWidth	(1L<<4)
#define GCLineStyle	(1L<<5)
#define GCCapStyle	(1L<<6)
#define GCJoinStyle	(1L<<7)
#define GCFillStyle	(1L<<8)
#define GCFillRule	(1L<<9)
#define GCLastBit	22
#define FontChange	255

#define FontLeftToRight	0
#define FontRightToLeft	1

#define XYPixmap	1
#define ZPixmap	2

#define AllocNone	0
#define AllocAll	1

#define DoRed	(1<<0)
#define DoGreen	(1<<1)
#define DoBlue	(1<<2)

#define CursorShape	0
#define TileShape	1
#define StippleShape	2

#define AutoRepeatModeOff	0
#define LedModeOff	0
#define AutoRepeatModeOn	1
#define LedModeOn	1
#define AutoRepeatModeDefault	2

#define KBKeyClickPercent	(1L<<0)
#define KBBellPercent	(1L<<1)
#define KBBellPitch	(1L<<2)
#define KBBellDuration	(1L<<3)
#define KBLed	(1L<<4)
#define KBLedMode	(1L<<5)
#define KBKey	(1L<<6)
#define KBAutoRepeatMode	(1L<<7)
#define MappingModifier	0
#define MappingSuccess	0
#define MappingBusy	1
#define MappingKeyboard	1
#define MappingFailed	2
#define MappingPointer	2

#define DisableScreenInterval	0
#define DisableScreenSaver	0
#define DontAllowExposures	0
#define DontPreferBlanking	0
#define AllowExposures	1
#define PreferBlanking	1
#define DefaultBlanking	2
#define DefaultExposures	2

#define ScreenSaverReset	0
#define ScreenSaverActive	1

#define HostInsert	0
#define HostDelete	1

#define DisableAccess	0
#define EnableAccess	1

#define StaticGray	0
#define GrayScale	1
#define StaticColor	2
#define PseudoColor	3
#define TrueColor	4
#define DirectColor	5

#define LSBFirst	0
#define MSBFirst	1

6.2.2. X11/XKBlib.h


extern int XkbAllocClientMap(XkbDescPtr, unsigned int, unsigned int);
extern int XkbAllocCompatMap(XkbDescPtr, unsigned int, unsigned int);
extern int XkbAllocControls(XkbDescPtr, unsigned int);
extern int XkbAllocIndicatorMaps(XkbDescPtr);
extern XkbDescPtrXkbAllocKeyboard(void);
extern int XkbAllocNames(XkbDescPtr, unsigned int, int, int);
extern int XkbAllocServerMap(XkbDescPtr, unsigned int, unsigned int);
extern int XkbApplyCompatMapToKey(XkbDescPtr, KeyCode, XkbChangesPtr);
extern int XkbBell(Display *, Window, int, Atom);
extern int XkbBellEvent(Display *, Window, int, Atom);
extern int XkbChangeEnabledControls(Display *, unsigned int, unsigned int,
				    unsigned int);
extern int XkbChangeMap(Display *, XkbDescPtr, XkbMapChangesPtr);
extern int XkbChangeNames(Display *, XkbDescPtr, XkbNameChangesPtr);
extern int XkbChangeTypesOfKey(XkbDescPtr, int, int, unsigned int, int *,
			       XkbMapChangesPtr);
extern int XkbComputeEffectiveMap(XkbDescPtr, XkbKeyTypePtr,
				  unsigned char *);
extern int XkbCopyKeyType(XkbKeyTypePtr, XkbKeyTypePtr);
extern int XkbCopyKeyTypes(XkbKeyTypePtr, XkbKeyTypePtr, int);
extern int XkbForceBell(Display *, int);
extern void XkbFreeClientMap(XkbDescPtr, unsigned int, int);
extern void XkbFreeCompatMap(XkbDescPtr, unsigned int, int);
extern void XkbFreeComponentList(XkbComponentListPtr);
extern void XkbFreeControls(XkbDescPtr, unsigned int, int);
extern void XkbFreeIndicatorMaps(XkbDescPtr);
extern void XkbFreeKeyboard(XkbDescPtr, unsigned int, int);
extern void XkbFreeNames(XkbDescPtr, unsigned int, int);
extern void XkbFreeServerMap(XkbDescPtr, unsigned int, int);
extern int XkbGetAutoRepeatRate(Display *, unsigned int, unsigned int *,
				unsigned int *);
extern int XkbGetCompatMap(Display *, unsigned int, XkbDescPtr);
extern int XkbGetControls(Display *, unsigned long int, XkbDescPtr);
extern int XkbGetIndicatorMap(Display *, unsigned long int, XkbDescPtr);
extern int XkbGetIndicatorState(Display *, unsigned int, unsigned int *);
extern int XkbGetKeyActions(Display *, unsigned int, unsigned int,
			    XkbDescPtr);
extern int XkbGetKeyBehaviors(Display *, unsigned int, unsigned int,
			      XkbDescPtr);
extern int XkbGetKeyExplicitComponents(Display *, unsigned int,
				       unsigned int, XkbDescPtr);
extern int XkbGetKeyModifierMap(Display *, unsigned int, unsigned int,
				XkbDescPtr);
extern int XkbGetKeySyms(Display *, unsigned int, unsigned int,
			 XkbDescPtr);
extern int XkbGetKeyTypes(Display *, unsigned int, unsigned int,
			  XkbDescPtr);
extern XkbDescPtrXkbGetKeyboard(Display *, unsigned int, unsigned int);
extern XkbDescPtrXkbGetKeyboardByName(Display *, unsigned int,
				      XkbComponentNamesPtr, unsigned int,
				      unsigned int, int);
extern XkbDescPtrXkbGetMap(Display *, unsigned int, unsigned int);
extern int XkbGetMapChanges(Display *, XkbDescPtr, XkbMapChangesPtr);
extern int XkbGetNamedIndicator(Display *, Atom, int *, int *,
				XkbIndicatorMapPtr, int *);
extern int XkbGetNames(Display *, unsigned int, XkbDescPtr);
extern int XkbGetState(Display *, unsigned int, XkbStatePtr);
extern int XkbGetUpdatedMap(Display *, unsigned int, XkbDescPtr);
extern int XkbGetVirtualMods(Display *, unsigned int, XkbDescPtr);
extern unsigned int XkbGetXlibControls(Display *);
extern int XkbIgnoreExtension(int);
extern int XkbInitCanonicalKeyTypes(XkbDescPtr, unsigned int, int);
extern int XkbKeyTypesForCoreSymbols(XkbDescPtr, int, KeySym *,
				     unsigned int, int *, KeySym *);
extern KeySym XkbKeycodeToKeysym(Display *, unsigned int, int, int);
extern unsigned int XkbKeysymToModifiers(Display *, KeySym);
extern int XkbLatchGroup(Display *, unsigned int, unsigned int);
extern int XkbLatchModifiers(Display *, unsigned int, unsigned int,
			     unsigned int);
extern int XkbLibraryVersion(int *, int *);
extern XkbComponentListPtrXkbListComponents(Display *, unsigned int,
					    XkbComponentNamesPtr, int *);
extern int XkbLockGroup(Display *, unsigned int, unsigned int);
extern int XkbLockModifiers(Display *, unsigned int, unsigned int,
			    unsigned int);
extern int XkbLookupKeyBinding(Display *, KeySym, unsigned int, char *,
			       int, int *);
extern int XkbLookupKeySym(Display *, KeyCode, unsigned int,
			   unsigned int *, KeySym *);
extern void XkbNoteControlsChanges(XkbControlsChangesPtr,
				   XkbControlsNotifyEvent *, unsigned int);
extern void XkbNoteMapChanges(XkbMapChangesPtr, XkbMapNotifyEvent *,
			      unsigned int);
extern void XkbNoteNameChanges(XkbNameChangesPtr, XkbNamesNotifyEvent *,
			       unsigned int);
extern Display *XkbOpenDisplay(char *, int *, int *, int *, int *, int *);
extern int XkbQueryExtension(Display *, int *, int *, int *, int *, int *);
extern int XkbRefreshKeyboardMapping(XkbMapNotifyEvent *);
extern XkbAction *XkbResizeKeyActions(XkbDescPtr, int, int);
extern KeySym *XkbResizeKeySyms(XkbDescPtr, int, int);
extern int XkbResizeKeyType(XkbDescPtr, int, int, int, int);
extern int XkbSelectEventDetails(Display *, unsigned int, unsigned int,
				 unsigned long int, unsigned long int);
extern int XkbSelectEvents(Display *, unsigned int, unsigned int,
			   unsigned int);
extern void XkbSetAtomFuncs(XkbInternAtomFunc, XkbGetAtomNameFunc);
extern int XkbSetAutoRepeatRate(Display *, unsigned int, unsigned int,
				unsigned int);
extern int XkbSetAutoResetControls(Display *, unsigned int, unsigned int *,
				   unsigned int *);
extern int XkbSetCompatMap(Display *, unsigned int, XkbDescPtr, int);
extern int XkbSetControls(Display *, unsigned long int, XkbDescPtr);
extern int XkbSetDebuggingFlags(Display *, unsigned int, unsigned int,
				char *, unsigned int, unsigned int,
				unsigned int *, unsigned int *);
extern int XkbSetDetectableAutoRepeat(Display *, int, int *);
extern int XkbSetIgnoreLockMods(Display *, unsigned int, unsigned int,
				unsigned int, unsigned int, unsigned int);
extern int XkbSetIndicatorMap(Display *, unsigned long int, XkbDescPtr);
extern int XkbSetMap(Display *, unsigned int, XkbDescPtr);
extern int XkbSetNamedIndicator(Display *, Atom, int, int, int,
				XkbIndicatorMapPtr);
extern int XkbSetNames(Display *, unsigned int, unsigned int, unsigned int,
		       XkbDescPtr);
extern int XkbSetServerInternalMods(Display *, unsigned int, unsigned int,
				    unsigned int, unsigned int,
				    unsigned int);
extern unsigned int XkbSetXlibControls(Display *, unsigned int,
				       unsigned int);
extern char XkbToControl(char);
extern int XkbTranslateKeyCode(XkbDescPtr, KeyCode, unsigned int,
			       unsigned int *, KeySym *);
extern int XkbTranslateKeySym(Display *, KeySym *, unsigned int, char *,
			      int, int *);
extern int XkbUpdateMapFromCore(XkbDescPtr, KeyCode, int, int, KeySym *,
				XkbChangesPtr);
extern int XkbUseExtension(Display *, int *, int *);
extern int XkbVirtualModsToReal(XkbDescPtr, unsigned int, unsigned int *);

6.2.3. X11/Xauth.h


typedef struct xauth {
    unsigned short family;
    unsigned short address_length;
    char *address;
    unsigned short number_length;
    char *number;
    unsigned short name_length;
    char *name;
    unsigned short data_length;
    char *data;
} Xauth;
extern void XauDisposeAuth(Xauth *);
extern char *XauFileName(void);
extern Xauth *XauGetBestAuthByAddr(unsigned int, unsigned int,
				   const char *, unsigned int, char *, int,
				   char **, int *);
extern Xauth *XauReadAuth(FILE *);

6.2.4. X11/Xcms.h


typedef struct _XcmsFunctionSet {
    XcmsColorSpace **DDColorSpaces;
    XcmsScreenInitProc screenInitProc;
    XcmsScreenFreeProc screenFreeProc;
} XcmsFunctionSet;

typedef unsigned long int XcmsColorFormat;
typedef double XcmsFloat;
typedef struct {
    unsigned short red;
    unsigned short green;
    unsigned short blue;
} XcmsRGB;
typedef struct {
    XcmsFloat red;
    XcmsFloat green;
    XcmsFloat blue;
} XcmsRGBi;
typedef struct {
    XcmsFloat X;
    XcmsFloat Y;
    XcmsFloat Z;
} XcmsCIEXYZ;
typedef struct {
    XcmsFloat u_prime;
    XcmsFloat v_prime;
    XcmsFloat Y;
} XcmsCIEuvY;
typedef struct {
    XcmsFloat x;
    XcmsFloat y;
    XcmsFloat Y;
} XcmsCIExyY;
typedef struct {
    XcmsFloat L_star;
    XcmsFloat a_star;
    XcmsFloat b_star;
} XcmsCIELab;
typedef struct {
    XcmsFloat L_star;
    XcmsFloat u_star;
    XcmsFloat v_star;
} XcmsCIELuv;
typedef struct {
    XcmsFloat H;
    XcmsFloat V;
    XcmsFloat C;
} XcmsTekHVC;
typedef struct {
    XcmsFloat pad0;
    XcmsFloat pad1;
    XcmsFloat pad2;
    XcmsFloat pad3;
} XcmsPad;

typedef union {
    XcmsRGB RGB;
    XcmsRGBi RGBi;
    XcmsCIEXYZ CIEXYZ;
    XcmsCIEuvY CIEuvY;
    XcmsCIExyY CIExyY;
    XcmsCIELab CIELab;
    XcmsCIELuv CIELuv;
    XcmsTekHVC TekHVC;
    XcmsPad Pad;
} XcmsColor;

typedef struct _XcmsPerScrnInfo {
    XcmsColor screenWhitePt;
    XPointer functionSet;
    XPointer screenData;
    unsigned char state;
    char pad[1];
} XcmsPerScrnInfo;

typedef int (*XcmsCompressionProc) (void);
typedef int (*XcmsWhiteAdjustProc) (void);
typedef int (*XcmsScreenInitProc) (void);
typedef void (*XcmsScreenFreeProc) (void);
typedef int (*XcmsConversionProc) (void);
typedef int (*XcmsParseStringProc) (void);

typedef struct _XcmsCCC *XcmsCCC;

typedef XcmsConversionProc *XcmsFuncListPtr;

typedef struct _XcmsColorSpace {
    char *prefix;
    XcmsColorFormat id;
    XcmsParseStringProc parseString;
    XcmsFuncListPtr to_CIEXYZ;
    XcmsFuncListPtr from_CIEXYZ;
    int inverse_flag;
} XcmsColorSpace;
extern int XcmsAddColorSpace(XcmsColorSpace *);
extern int XcmsAddFunctionSet(XcmsFunctionSet *);
extern int XcmsAllocColor(Display *, Colormap, XcmsColor *,
			  XcmsColorFormat);
extern int XcmsAllocNamedColor(Display *, Colormap, const char *,
			       XcmsColor *, XcmsColor *, XcmsColorFormat);
extern XcmsCCC XcmsCCCOfColormap(Display *, Colormap);
extern int XcmsCIELabClipL(XcmsCCC, XcmsColor *, unsigned int,
			   unsigned int, int *);
extern int XcmsCIELabClipLab(XcmsCCC, XcmsColor *, unsigned int,
			     unsigned int, int *);
extern int XcmsCIELabClipab(XcmsCCC, XcmsColor *, unsigned int,
			    unsigned int, int *);
extern int XcmsCIELabQueryMaxC(XcmsCCC, XcmsFloat, XcmsFloat, XcmsColor *);
extern int XcmsCIELabQueryMaxL(XcmsCCC, XcmsFloat, XcmsFloat, XcmsColor *);
extern int XcmsCIELabQueryMaxLC(XcmsCCC, XcmsFloat, XcmsColor *);
extern int XcmsCIELabQueryMinL(XcmsCCC, XcmsFloat, XcmsFloat, XcmsColor *);
extern int XcmsCIELabToCIEXYZ(XcmsCCC, XcmsColor *, XcmsColor *,
			      unsigned int);
extern int XcmsCIELabWhiteShiftColors(XcmsCCC, XcmsColor *, XcmsColor *,
				      XcmsColorFormat, XcmsColor *,
				      unsigned int, int *);
extern int XcmsCIELuvClipL(XcmsCCC, XcmsColor *, unsigned int,
			   unsigned int, int *);
extern int XcmsCIELuvClipLuv(XcmsCCC, XcmsColor *, unsigned int,
			     unsigned int, int *);
extern int XcmsCIELuvClipuv(XcmsCCC, XcmsColor *, unsigned int,
			    unsigned int, int *);
extern int XcmsCIELuvQueryMaxC(XcmsCCC, XcmsFloat, XcmsFloat, XcmsColor *);
extern int XcmsCIELuvQueryMaxL(XcmsCCC, XcmsFloat, XcmsFloat, XcmsColor *);
extern int XcmsCIELuvQueryMaxLC(XcmsCCC, XcmsFloat, XcmsColor *);
extern int XcmsCIELuvQueryMinL(XcmsCCC, XcmsFloat, XcmsFloat, XcmsColor *);
extern int XcmsCIELuvToCIEuvY(XcmsCCC, XcmsColor *, XcmsColor *,
			      unsigned int);
extern int XcmsCIELuvWhiteShiftColors(XcmsCCC, XcmsColor *, XcmsColor *,
				      XcmsColorFormat, XcmsColor *,
				      unsigned int, int *);
extern int XcmsCIEXYZToCIELab(XcmsCCC, XcmsColor *, XcmsColor *,
			      unsigned int);
extern int XcmsCIEXYZToCIEuvY(XcmsCCC, XcmsColor *, XcmsColor *,
			      unsigned int);
extern int XcmsCIEXYZToCIExyY(XcmsCCC, XcmsColor *, XcmsColor *,
			      unsigned int);
extern int XcmsCIEXYZToRGBi(XcmsCCC, XcmsColor *, unsigned int, int *);
extern int XcmsCIEuvYToCIELuv(XcmsCCC, XcmsColor *, XcmsColor *,
			      unsigned int);
extern int XcmsCIEuvYToCIEXYZ(XcmsCCC, XcmsColor *, XcmsColor *,
			      unsigned int);
extern int XcmsCIEuvYToTekHVC(XcmsCCC, XcmsColor *, XcmsColor *,
			      unsigned int);
extern int XcmsCIExyYToCIEXYZ(XcmsCCC, XcmsColor *, XcmsColor *,
			      unsigned int);
extern XcmsColor *XcmsClientWhitePointOfCCC(XcmsCCC);
extern int XcmsConvertColors(XcmsCCC, XcmsColor *, unsigned int,
			     XcmsColorFormat, int *);
extern XcmsCCC XcmsCreateCCC(Display *, int, Visual *, XcmsColor *,
			     XcmsCompressionProc, XPointer,
			     XcmsWhiteAdjustProc, XPointer);
extern XcmsCCC XcmsDefaultCCC(Display *, int);
extern Display *XcmsDisplayOfCCC(XcmsCCC);
extern XcmsColorFormat XcmsFormatOfPrefix(char *);
extern void XcmsFreeCCC(XcmsCCC);
extern int XcmsLookupColor(Display *, Colormap, const char *, XcmsColor *,
			   XcmsColor *, XcmsColorFormat);
extern char *XcmsPrefixOfFormat(XcmsColorFormat);
extern int XcmsQueryBlack(XcmsCCC, XcmsColorFormat, XcmsColor *);
extern int XcmsQueryBlue(XcmsCCC, XcmsColorFormat, XcmsColor *);
extern int XcmsQueryColor(Display *, Colormap, XcmsColor *,
			  XcmsColorFormat);
extern int XcmsQueryColors(Display *, Colormap, XcmsColor *, unsigned int,
			   XcmsColorFormat);
extern int XcmsQueryGreen(XcmsCCC, XcmsColorFormat, XcmsColor *);
extern int XcmsQueryRed(XcmsCCC, XcmsColorFormat, XcmsColor *);
extern int XcmsQueryWhite(XcmsCCC, XcmsColorFormat, XcmsColor *);
extern int XcmsRGBToRGBi(XcmsCCC, XcmsColor *, unsigned int, int *);
extern int XcmsRGBiToCIEXYZ(XcmsCCC, XcmsColor *, unsigned int, int *);
extern int XcmsRGBiToRGB(XcmsCCC, XcmsColor *, unsigned int, int *);
extern int XcmsScreenNumberOfCCC(XcmsCCC);
extern XcmsColor *XcmsScreenWhitePointOfCCC(XcmsCCC);
extern XcmsCCC XcmsSetCCCOfColormap(Display *, Colormap, XcmsCCC);
extern XcmsCompressionProc XcmsSetCompressionProc(XcmsCCC,
						  XcmsCompressionProc,
						  XPointer);
extern XcmsWhiteAdjustProc XcmsSetWhiteAdjustProc(XcmsCCC,
						  XcmsWhiteAdjustProc,
						  XPointer);
extern int XcmsSetWhitePoint(XcmsCCC, XcmsColor *);
extern int XcmsStoreColor(Display *, Colormap, XcmsColor *);
extern int XcmsStoreColors(Display *, Colormap, XcmsColor *, unsigned int,
			   int *);
extern int XcmsTekHVCClipC(XcmsCCC, XcmsColor *, unsigned int,
			   unsigned int, int *);
extern int XcmsTekHVCClipV(XcmsCCC, XcmsColor *, unsigned int,
			   unsigned int, int *);
extern int XcmsTekHVCClipVC(XcmsCCC, XcmsColor *, unsigned int,
			    unsigned int, int *);
extern int XcmsTekHVCQueryMaxC(XcmsCCC, XcmsFloat, XcmsFloat, XcmsColor *);
extern int XcmsTekHVCQueryMaxV(XcmsCCC, XcmsFloat, XcmsFloat, XcmsColor *);
extern int XcmsTekHVCQueryMaxVC(XcmsCCC, XcmsFloat, XcmsColor *);
extern int XcmsTekHVCQueryMaxVSamples(XcmsCCC, XcmsFloat, XcmsColor *,
				      unsigned int);
extern int XcmsTekHVCQueryMinV(XcmsCCC, XcmsFloat, XcmsFloat, XcmsColor *);
extern int XcmsTekHVCToCIEuvY(XcmsCCC, XcmsColor *, XcmsColor *,
			      unsigned int);
extern int XcmsTekHVCWhiteShiftColors(XcmsCCC, XcmsColor *, XcmsColor *,
				      XcmsColorFormat, XcmsColor *,
				      unsigned int, int *);
extern Visual *XcmsVisualOfCCC(XcmsCCC);

6.2.5. X11/Xlib.h


struct _XDisplay;
typedef struct XColor;
typedef void *XVaNestedList;
typedef int (*XErrorHandler) (void);
typedef int (*XIOErrorHandler) (void);
typedef void (*XConnectionWatchProc) (void);

typedef char *XPointer;

typedef struct _XExtData {
    int number;
    struct _XExtData *next;
    int (*free_private) (struct _XExtData * extension);
    XPointer private_data;
} XExtData;
typedef struct XExtCodes;

typedef struct XPixmapFormatValues;

typedef struct XGCValues;

typedef struct _XGC *GC;

typedef struct Visual;

typedef struct Depth;

typedef struct Screen;

typedef struct ScreenFormat;

typedef struct XSetWindowAttributes;
typedef struct XWindowAttributes;

typedef struct XHostAddress;

typedef struct _XImage {
    int width;
    int height;
    int xoffset;
    int format;
    char *data;
    int byte_order;
    int bitmap_unit;
    int bitmap_bit_order;
    int bitmap_pad;
    int depth;
    int bytes_per_line;
    int bits_per_pixel;
    unsigned long int red_mask;
    unsigned long int green_mask;
    unsigned long int blue_mask;
    XPointer obdata;
    struct funcs f;
} XImage;

typedef struct XWindowChanges;

typedef struct XSegment;
typedef struct XPoint;
typedef struct XRectangle;
typedef struct XArc;

typedef struct XKeyboardControl;

typedef struct XKeyboardState;

typedef struct XTimeCoord;

typedef struct XModifierKeymap;

typedef struct _XDisplay Display;

typedef struct XKeyEvent;
typedef XKeyEvent XKeyPressedEvent;
typedef XKeyEvent XKeyReleasedEvent;
typedef struct XButtonEvent;
typedef XButtonEvent XButtonPressedEvent;
typedef XButtonEvent XButtonReleasedEvent;
typedef struct XMotionEvent;
typedef XMotionEvent XPointerMovedEvent;
typedef struct XCrossingEvent;
typedef XCrossingEvent XEnterWindowEvent;
typedef XCrossingEvent XLeaveWindowEvent;
typedef struct XFocusChangeEvent;
typedef XFocusChangeEvent XFocusInEvent;
typedef XFocusChangeEvent XFocusOutEvent;
typedef struct XKeymapEvent;
typedef struct XExposeEvent;
typedef struct XGraphicsExposeEvent;
typedef struct XNoExposeEvent;
typedef struct XVisibilityEvent;
typedef struct XCreateWindowEvent;
typedef struct XDestroyWindowEvent;
typedef struct XUnmapEvent;
typedef struct XMapEvent;
typedef struct XMapRequestEvent;
typedef struct XReparentEvent;
typedef struct XConfigureEvent;
typedef struct XGravityEvent;
typedef struct XResizeRequestEvent;
typedef struct XConfigureRequestEvent;
typedef struct XCirculateEvent;
typedef struct XCirculateRequestEvent;
typedef struct XPropertyEvent;
typedef struct XSelectionClearEvent;
typedef struct XSelectionRequestEvent;
typedef struct XSelectionEvent;
typedef struct XColormapEvent;
typedef union XClientMessageEvent;
typedef struct XMappingEvent;
typedef struct XErrorEvent;
typedef struct XAnyEvent;

typedef union _XEvent {
    int type;
    XAnyEvent xany;
    XKeyEvent xkey;
    XButtonEvent xbutton;
    XMotionEvent xmotion;
    XCrossingEvent xcrossing;
    XFocusChangeEvent xfocus;
    XExposeEvent xexpose;
    XGraphicsExposeEvent xgraphicsexpose;
    XNoExposeEvent xnoexpose;
    XVisibilityEvent xvisibility;
    XCreateWindowEvent xcreatewindow;
    XDestroyWindowEvent xdestroywindow;
    XUnmapEvent xunmap;
    XMapEvent xmap;
    XMapRequestEvent xmaprequest;
    XReparentEvent xreparent;
    XConfigureEvent xconfigure;
    XGravityEvent xgravity;
    XResizeRequestEvent xresizerequest;
    XConfigureRequestEvent xconfigurerequest;
    XCirculateEvent xcirculate;
    XCirculateRequestEvent xcirculaterequest;
    XPropertyEvent xproperty;
    XSelectionClearEvent xselectionclear;
    XSelectionRequestEvent xselectionrequest;
    XSelectionEvent xselection;
    XColormapEvent xcolormap;
    XClientMessageEvent xclient;
    XMappingEvent xmapping;
    XErrorEvent xerror;
    XKeymapEvent xkeymap;
    long int pad[1];
} XEvent;

typedef struct XCharStruct;

typedef struct XFontProp;
typedef struct XFontStruct;
typedef struct XFontSetExtents;

typedef struct XTextItem;
typedef struct XChar2b;
typedef struct XTextItem16;

typedef union XEDataObject;

typedef struct _XOM *XOM;
typedef struct _XOC *XOC;
typedef struct _XOC *XFontSet;

typedef struct XmbTextItem;
typedef struct XwcTextItem;

typedef struct _XIM *XIM;
typedef struct _XIC *XIC;
typedef void (*XIDProc) (void);
extern int XActivateScreenSaver(Display *);
extern int XAddConnectionWatch(Display *, XConnectionWatchProc, XPointer);
extern XExtCodes *XAddExtension(Display *);
extern int XAddHost(Display *, XHostAddress *);
extern int XAddHosts(Display *, XHostAddress *, int);
extern int XAddToExtensionList(struct _XExtData **, XExtData *);
extern int XAddToSaveSet(Display *, Window);
extern unsigned long int XAllPlanes(void);
extern int XAllocColor(Display *, Colormap, XColor *);
extern int XAllocColorCells(Display *, Colormap, int, unsigned long int *,
			    unsigned int, unsigned long int *,
			    unsigned int);
extern int XAllocColorPlanes(Display *, Colormap, int, unsigned long int *,
			     int, int, int, int, unsigned long int *,
			     unsigned long int *, unsigned long int *);
extern int XAllocNamedColor(Display *, Colormap, const char *, XColor *,
			    XColor *);
extern int XAllowEvents(Display *, int, Time);
extern int XAutoRepeatOff(Display *);
extern int XAutoRepeatOn(Display *);
extern char *XBaseFontNameListOfFontSet(XFontSet);
extern int XBell(Display *, int);
extern int XBitmapBitOrder(Display *);
extern int XBitmapPad(Display *);
extern int XBitmapUnit(Display *);
extern unsigned long int XBlackPixel(Display *, int);
extern unsigned long int XBlackPixelOfScreen(Screen *);
extern int XCellsOfScreen(Screen *);
extern int XChangeActivePointerGrab(Display *, unsigned int, Cursor, Time);
extern int XChangeGC(Display *, GC, unsigned long int, XGCValues *);
extern int XChangeKeyboardControl(Display *, unsigned long int,
				  XKeyboardControl *);
extern int XChangeKeyboardMapping(Display *, int, int, KeySym *, int);
extern int XChangePointerControl(Display *, int, int, int, int, int);
extern int XChangeProperty(Display *, Window, Atom, Atom, int, int,
			   const unsigned char *, int);
extern int XChangeSaveSet(Display *, Window, int);
extern int XChangeWindowAttributes(Display *, Window, unsigned long int,
				   XSetWindowAttributes *);
extern int XCheckIfEvent(Display *, XEvent *, int (*XIDProc) (void)
			 , XPointer);
extern int XCheckMaskEvent(Display *, long int, XEvent *);
extern int XCheckTypedEvent(Display *, int, XEvent *);
extern int XCheckTypedWindowEvent(Display *, Window, int, XEvent *);
extern int XCheckWindowEvent(Display *, Window, long int, XEvent *);
extern int XCirculateSubwindows(Display *, Window, int);
extern int XCirculateSubwindowsDown(Display *, Window);
extern int XCirculateSubwindowsUp(Display *, Window);
extern int XClearArea(Display *, Window, int, int, unsigned int,
		      unsigned int, int);
extern int XClearWindow(Display *, Window);
extern int XCloseDisplay(Display *);
extern int XCloseIM(XIM);
extern int XCloseOM(XOM);
extern int XConfigureWindow(Display *, Window, unsigned int,
			    XWindowChanges *);
extern int XConnectionNumber(Display *);
extern int XContextDependentDrawing(XFontSet);
extern int XContextualDrawing(XFontSet);
extern int XConvertSelection(Display *, Atom, Atom, Atom, Window, Time);
extern int XCopyArea(Display *, Drawable, Drawable, GC, int, int,
		     unsigned int, unsigned int, int, int);
extern Colormap XCopyColormapAndFree(Display *, Colormap);
extern int XCopyGC(Display *, GC, unsigned long int, GC);
extern int XCopyPlane(Display *, Drawable, Drawable, GC, int, int,
		      unsigned int, unsigned int, int, int,
		      unsigned long int);
extern Pixmap XCreateBitmapFromData(Display *, Drawable, const char *,
				    unsigned int, unsigned int);
extern Colormap XCreateColormap(Display *, Window, Visual *, int);
extern Cursor XCreateFontCursor(Display *, unsigned int);
extern XFontSet XCreateFontSet(Display *, const char *, char ***, int *,
			       char **);
extern GC XCreateGC(Display *, Drawable, unsigned long int, XGCValues *);
extern Cursor XCreateGlyphCursor(Display *, Font, Font, unsigned int,
				 unsigned int, XColor *, XColor *);
extern XIC XCreateIC(XIM, ...);
extern XImage *XCreateImage(Display *, Visual *, unsigned int, int, int,
			    char *, unsigned int, unsigned int, int, int);
extern XOC XCreateOC(XOM, ...);
extern Pixmap XCreatePixmap(Display *, Drawable, unsigned int,
			    unsigned int, unsigned int);
extern Cursor XCreatePixmapCursor(Display *, Pixmap, Pixmap, XColor *,
				  XColor *, unsigned int, unsigned int);
extern Pixmap XCreatePixmapFromBitmapData(Display *, Drawable, char *,
					  unsigned int, unsigned int,
					  unsigned long int,
					  unsigned long int, unsigned int);
extern Window XCreateSimpleWindow(Display *, Window, int, int,
				  unsigned int, unsigned int, unsigned int,
				  unsigned long int, unsigned long int);
extern Window XCreateWindow(Display *, Window, int, int, unsigned int,
			    unsigned int, unsigned int, int, unsigned int,
			    Visual *, unsigned long int,
			    XSetWindowAttributes *);
extern Colormap XDefaultColormap(Display *, int);
extern Colormap XDefaultColormapOfScreen(Screen *);
extern int XDefaultDepth(Display *, int);
extern int XDefaultDepthOfScreen(Screen *);
extern GC XDefaultGC(Display *, int);
extern GC XDefaultGCOfScreen(Screen *);
extern Window XDefaultRootWindow(Display *);
extern int XDefaultScreen(Display *);
extern Screen *XDefaultScreenOfDisplay(Display *);
extern Visual *XDefaultVisual(Display *, int);
extern Visual *XDefaultVisualOfScreen(Screen *);
extern int XDefineCursor(Display *, Window, Cursor);
extern XModifierKeymap *XDeleteModifiermapEntry(XModifierKeymap *,
						unsigned int, int);
extern int XDeleteProperty(Display *, Window, Atom);
extern void XDestroyIC(XIC);
extern void XDestroyOC(XOC);
extern int XDestroySubwindows(Display *, Window);
extern int XDestroyWindow(Display *, Window);
extern int XDirectionalDependentDrawing(XFontSet);
extern int XDisableAccessControl(Display *);
extern int XDisplayCells(Display *, int);
extern int XDisplayHeight(Display *, int);
extern int XDisplayHeightMM(Display *, int);
extern int XDisplayKeycodes(Display *, int *, int *);
extern unsigned long int XDisplayMotionBufferSize(Display *);
extern char *XDisplayName(const char *);
extern Display *XDisplayOfIM(XIM);
extern Display *XDisplayOfOM(XOM);
extern Display *XDisplayOfScreen(Screen *);
extern int XDisplayPlanes(Display *, int);
extern char *XDisplayString(Display *);
extern int XDisplayWidth(Display *, int);
extern int XDisplayWidthMM(Display *, int);
extern int XDoesBackingStore(Screen *);
extern int XDoesSaveUnders(Screen *);
extern int XDrawArc(Display *, Drawable, GC, int, int, unsigned int,
		    unsigned int, int, int);
extern int XDrawArcs(Display *, Drawable, GC, XArc *, int);
extern int XDrawImageString(Display *, Drawable, GC, int, int,
			    const char *, int);
extern int XDrawImageString16(Display *, Drawable, GC, int, int, XChar2b *,
			      int);
extern int XDrawLine(Display *, Drawable, GC, int, int, int, int);
extern int XDrawLines(Display *, Drawable, GC, XPoint *, int, int);
extern int XDrawPoint(Display *, Drawable, GC, int, int);
extern int XDrawPoints(Display *, Drawable, GC, XPoint *, int, int);
extern int XDrawRectangle(Display *, Drawable, GC, int, int, unsigned int,
			  unsigned int);
extern int XDrawRectangles(Display *, Drawable, GC, XRectangle *, int);
extern int XDrawSegments(Display *, Drawable, GC, XSegment *, int);
extern int XDrawString(Display *, Drawable, GC, int, int, const char *,
		       int);
extern int XDrawString16(Display *, Drawable, GC, int, int, XChar2b *,
			 int);
extern int XDrawText(Display *, Drawable, GC, int, int, XTextItem *, int);
extern int XDrawText16(Display *, Drawable, GC, int, int, XTextItem16 *,
		       int);
extern XExtData **XEHeadOfExtensionList(XEDataObject);
extern int XESetBeforeFlush(void);
extern int *XESetCloseDisplay(void);
extern int XESetCopyGC(void);
extern int XESetCreateFont(void);
extern int XESetCreateGC(void);
extern int XESetError(void);
extern int XESetErrorString(void);
extern int XESetEventToWire(void);
extern int XESetFlushGC(void);
extern int XESetFreeFont(void);
extern int XESetFreeGC(void);
extern int XESetPrintErrorValues(void);
extern int XESetWireToError(void);
extern int XESetWireToEvent(void);
extern int XEnableAccessControl(Display *);
extern long int XEventMaskOfScreen(Screen *);
extern int XEventsQueued(Display *, int);
extern long int XExtendedMaxRequestSize(Display *);
extern XFontSetExtents *XExtentsOfFontSet(XFontSet);
extern char *XFetchBuffer(Display *, int *, int);
extern char *XFetchBytes(Display *, int *);
extern int XFetchName(Display *, Window, char **);
extern int XFillArc(Display *, Drawable, GC, int, int, unsigned int,
		    unsigned int, int, int);
extern int XFillArcs(Display *, Drawable, GC, XArc *, int);
extern int XFillPolygon(Display *, Drawable, GC, XPoint *, int, int, int);
extern int XFillRectangle(Display *, Drawable, GC, int, int, unsigned int,
			  unsigned int);
extern int XFillRectangles(Display *, Drawable, GC, XRectangle *, int);
extern int XFilterEvent(XEvent *, Window);
extern XExtData *XFindOnExtensionList(XExtData * *, int);
extern int XFlush(Display *);
extern void XFlushGC(Display *, GC);
extern int XFontsOfFontSet(XFontSet, XFontStruct * **, char ***);
extern int XForceScreenSaver(Display *, int);
extern int XFree(void *);
extern int XFreeColormap(Display *, Colormap);
extern int XFreeColors(Display *, Colormap, unsigned long int *, int,
		       unsigned long int);
extern int XFreeCursor(Display *, Cursor);
extern int XFreeExtensionList(char **);
extern int XFreeFont(Display *, XFontStruct *);
extern int XFreeFontInfo(char **, XFontStruct *, int);
extern int XFreeFontNames(char **);
extern int XFreeFontPath(char **);
extern void XFreeFontSet(Display *, XFontSet);
extern int XFreeGC(Display *, GC);
extern int XFreeModifiermap(XModifierKeymap *);
extern int XFreePixmap(Display *, Pixmap);
extern void XFreeStringList(char **);
extern GContext XGContextFromGC(GC);
extern int XGeometry(Display *, int, const char *, const char *,
		     unsigned int, unsigned int, unsigned int, int, int,
		     int *, int *, int *, int *);
extern char *XGetAtomName(Display *, Atom);
extern int XGetAtomNames(Display *, Atom *, int, char **);
extern int XGetCommand(Display *, Window, char ***, int *);
extern char *XGetDefault(Display *, const char *, const char *);
extern int XGetErrorDatabaseText(Display *, const char *, const char *,
				 const char *, char *, int);
extern int XGetErrorText(Display *, int, char *, int);
extern char **XGetFontPath(Display *, int *);
extern int XGetFontProperty(XFontStruct *, Atom, unsigned long int *);
extern int XGetGCValues(Display *, GC, unsigned long int, XGCValues *);
extern int XGetGeometry(Display *, Drawable, Window *, int *, int *,
			unsigned int *, unsigned int *, unsigned int *,
			unsigned int *);
extern char *XGetICValues(XIC, ...);
extern char *XGetIMValues(XIM, ...);
extern int XGetIconName(Display *, Window, char **);
extern XImage *XGetImage(Display *, Drawable, int, int, unsigned int,
			 unsigned int, unsigned long int, int);
extern int XGetInputFocus(Display *, Window *, int *);
extern int XGetKeyboardControl(Display *, XKeyboardState *);
extern KeySym *XGetKeyboardMapping(Display *, unsigned int, int, int *);
extern XModifierKeymap *XGetModifierMapping(Display *);
extern XTimeCoord *XGetMotionEvents(Display *, Window, Time, Time, int *);
extern char *XGetOCValues(XOC, ...);
extern char *XGetOMValues(XOM, ...);
extern int XGetPointerControl(Display *, int *, int *, int *);
extern int XGetPointerMapping(Display *, unsigned char *, int);
extern int XGetScreenSaver(Display *, int *, int *, int *, int *);
extern Window XGetSelectionOwner(Display *, Atom);
extern XImage *XGetSubImage(Display *, Drawable, int, int, unsigned int,
			    unsigned int, unsigned long int, int, XImage *,
			    int, int);
extern int XGetTransientForHint(Display *, Window, Window *);
extern int XGetWMColormapWindows(Display *, Window, Window * *, int *);
extern int XGetWMProtocols(Display *, Window, Atom * *, int *);
extern int XGetWindowAttributes(Display *, Window, XWindowAttributes *);
extern int XGetWindowProperty(Display *, Window, Atom, long int, long int,
			      int, Atom, Atom *, int *,
			      unsigned long int *, unsigned long int *,
			      unsigned char **);
extern int XGrabButton(Display *, unsigned int, unsigned int, Window, int,
		       unsigned int, int, int, Window, Cursor);
extern int XGrabKey(Display *, int, unsigned int, Window, int, int, int);
extern int XGrabKeyboard(Display *, Window, int, int, int, Time);
extern int XGrabPointer(Display *, Window, int, unsigned int, int, int,
			Window, Cursor, Time);
extern int XGrabServer(Display *);
extern int XHeightMMOfScreen(Screen *);
extern int XHeightOfScreen(Screen *);
extern XIM XIMOfIC(XIC);
extern int XIconifyWindow(Display *, Window, int);
extern int XIfEvent(Display *, XEvent *, int (*XIDProc) (void)
		    , XPointer);
extern int XImageByteOrder(Display *);
extern XExtCodes *XInitExtension(Display *, const char *);
extern int XInitImage(XImage *);
extern int XInitThreads(void);
extern XModifierKeymap *XInsertModifiermapEntry(XModifierKeymap *,
						unsigned int, int);
extern int XInstallColormap(Display *, Colormap);
extern Atom XInternAtom(Display *, const char *, int);
extern int XInternAtoms(Display *, char **, int, int, Atom *);
extern int XInternalConnectionNumbers(Display *, int **, int *);
extern KeySym XKeycodeToKeysym(Display *, unsigned int, int);
extern KeyCode XKeysymToKeycode(Display *, KeySym);
extern char *XKeysymToString(KeySym);
extern int XKillClient(Display *, XID);
extern unsigned long int XLastKnownRequestProcessed(Display *);
extern int *XListDepths(Display *, int, int *);
extern char **XListExtensions(Display *, int *);
extern char **XListFonts(Display *, const char *, int, int *);
extern char **XListFontsWithInfo(Display *, const char *, int, int *,
				 XFontStruct * *);
extern XHostAddress *XListHosts(Display *, int *, int *);
extern Colormap *XListInstalledColormaps(Display *, Window, int *);
extern XPixmapFormatValues *XListPixmapFormats(Display *, int *);
extern Atom *XListProperties(Display *, Window, int *);
extern Font XLoadFont(Display *, const char *);
extern XFontStruct *XLoadQueryFont(Display *, const char *);
extern char *XLocaleOfFontSet(XFontSet);
extern char *XLocaleOfIM(XIM);
extern char *XLocaleOfOM(XOM);
extern void XLockDisplay(Display *);
extern int XLookupColor(Display *, Colormap, const char *, XColor *,
			XColor *);
extern KeySym XLookupKeysym(XKeyEvent *, int);
extern int XLowerWindow(Display *, Window);
extern int XMapRaised(Display *, Window);
extern int XMapSubwindows(Display *, Window);
extern int XMapWindow(Display *, Window);
extern int XMaskEvent(Display *, long int, XEvent *);
extern int XMaxCmapsOfScreen(Screen *);
extern long int XMaxRequestSize(Display *);
extern int XMinCmapsOfScreen(Screen *);
extern int XMoveResizeWindow(Display *, Window, int, int, unsigned int,
			     unsigned int);
extern int XMoveWindow(Display *, Window, int, int);
extern XModifierKeymap *XNewModifiermap(int);
extern int XNextEvent(Display *, XEvent *);
extern unsigned long int XNextRequest(Display *);
extern int XNoOp(Display *);
extern XOM XOMOfOC(XOC);
extern Display *XOpenDisplay(const char *);
extern XIM XOpenIM(Display *, struct _XrmHashBucketRec *, char *, char *);
extern XOM XOpenOM(Display *, struct _XrmHashBucketRec *, const char *,
		   const char *);
extern int XParseColor(Display *, Colormap, const char *, XColor *);
extern int XParseGeometry(const char *, int *, int *, unsigned int *,
			  unsigned int *);
extern int XPeekEvent(Display *, XEvent *);
extern int XPeekIfEvent(Display *, XEvent *, int (*XIDProc) (void)
			, XPointer);
extern int XPending(Display *);
extern int XPlanesOfScreen(Screen *);
extern void XProcessInternalConnection(Display *, int);
extern int XProtocolRevision(Display *);
extern int XProtocolVersion(Display *);
extern int XPutBackEvent(Display *, XEvent *);
extern int XPutImage(Display *, Drawable, GC, XImage *, int, int, int, int,
		     unsigned int, unsigned int);
extern int XQLength(Display *);
extern int XQueryBestCursor(Display *, Drawable, unsigned int,
			    unsigned int, unsigned int *, unsigned int *);
extern int XQueryBestSize(Display *, int, Drawable, unsigned int,
			  unsigned int, unsigned int *, unsigned int *);
extern int XQueryBestStipple(Display *, Drawable, unsigned int,
			     unsigned int, unsigned int *, unsigned int *);
extern int XQueryBestTile(Display *, Drawable, unsigned int, unsigned int,
			  unsigned int *, unsigned int *);
extern int XQueryColor(Display *, Colormap, XColor *);
extern int XQueryColors(Display *, Colormap, XColor *, int);
extern int XQueryExtension(Display *, const char *, int *, int *, int *);
extern XFontStruct *XQueryFont(Display *, XID);
extern int XQueryKeymap(Display *, char);
extern int XQueryPointer(Display *, Window, Window *, Window *, int *,
			 int *, int *, int *, unsigned int *);
extern int XQueryTextExtents(Display *, XID, const char *, int, int *,
			     int *, int *, XCharStruct *);
extern int XQueryTextExtents16(Display *, XID, XChar2b *, int, int *,
			       int *, int *, XCharStruct *);
extern int XQueryTree(Display *, Window, Window *, Window *, Window * *,
		      unsigned int *);
extern int XRaiseWindow(Display *, Window);
extern int XReadBitmapFile(Display *, Drawable, const char *,
			   unsigned int *, unsigned int *, Pixmap *, int *,
			   int *);
extern int XReadBitmapFileData(const char *, unsigned int *,
			       unsigned int *, unsigned char **, int *,
			       int *);
extern int XRebindKeysym(Display *, KeySym, KeySym *, int,
			 const unsigned char *, int);
extern int XRecolorCursor(Display *, Cursor, XColor *, XColor *);
extern int XReconfigureWMWindow(Display *, Window, int, unsigned int,
				XWindowChanges *);
extern int XRefreshKeyboardMapping(XMappingEvent *);
extern int XRegisterIMInstantiateCallback(Display *,
					  struct _XrmHashBucketRec *,
					  char *, char *, XIDProc,
					  XPointer);
extern void XRemoveConnectionWatch(Display *, XConnectionWatchProc,
				   XPointer);
extern int XRemoveFromSaveSet(Display *, Window);
extern int XRemoveHost(Display *, XHostAddress *);
extern int XRemoveHosts(Display *, XHostAddress *, int);
extern int XReparentWindow(Display *, Window, Window, int, int);
extern int XResetScreenSaver(Display *);
extern int XResizeWindow(Display *, Window, unsigned int, unsigned int);
extern char *XResourceManagerString(Display *);
extern int XRestackWindows(Display *, Window *, int);
extern Window XRootWindow(Display *, int);
extern Window XRootWindowOfScreen(Screen *);
extern int XRotateBuffers(Display *, int);
extern int XRotateWindowProperties(Display *, Window, Atom *, int, int);
extern int XScreenCount(Display *);
extern int XScreenNumberOfScreen(Screen *);
extern Screen *XScreenOfDisplay(Display *, int);
extern char *XScreenResourceString(Screen *);
extern int XSelectInput(Display *, Window, long int);
extern int XSendEvent(Display *, Window, int, long int, XEvent *);
extern char *XServerVendor(Display *);
extern int XSetAccessControl(Display *, int);
extern int (*XSetAfterFunction(void))
 (Display *);
extern int XSetArcMode(Display *, GC, int);
extern void XSetAuthorization(char *, int, char *, int);
extern int XSetBackground(Display *, GC, unsigned long int);
extern int XSetClipMask(Display *, GC, Pixmap);
extern int XSetClipOrigin(Display *, GC, int, int);
extern int XSetClipRectangles(Display *, GC, int, int, XRectangle *, int,
			      int);
extern int XSetCloseDownMode(Display *, int);
extern int XSetCommand(Display *, Window, char **, int);
extern int XSetDashes(Display *, GC, int, const char *, int);
extern XErrorHandler XSetErrorHandler(XErrorHandler);
extern int XSetFillRule(Display *, GC, int);
extern int XSetFillStyle(Display *, GC, int);
extern int XSetFont(Display *, GC, Font);
extern int XSetFontPath(Display *, char **, int);
extern int XSetForeground(Display *, GC, unsigned long int);
extern int XSetFunction(Display *, GC, int);
extern int XSetGraphicsExposures(Display *, GC, int);
extern void XSetICFocus(XIC);
extern char *XSetICValues(XIC, ...);
extern XIOErrorHandler XSetIOErrorHandler(XIOErrorHandler);
extern int XSetIconName(Display *, Window, const char *);
extern int XSetInputFocus(Display *, Window, int, Time);
extern int XSetLineAttributes(Display *, GC, unsigned int, int, int, int);
extern char *XSetLocaleModifiers(const char *);
extern int XSetModifierMapping(Display *, XModifierKeymap *);
extern char *XSetOCValues(XOC, ...);
extern char *XSetOMValues(XOM, ...);
extern int XSetPlaneMask(Display *, GC, unsigned long int);
extern int XSetPointerMapping(Display *, const unsigned char *, int);
extern int XSetScreenSaver(Display *, int, int, int, int);
extern int XSetSelectionOwner(Display *, Atom, Window, Time);
extern int XSetState(Display *, GC, unsigned long int, unsigned long int,
		     int, unsigned long int);
extern int XSetStipple(Display *, GC, Pixmap);
extern int XSetSubwindowMode(Display *, GC, int);
extern int XSetTSOrigin(Display *, GC, int, int);
extern int XSetTile(Display *, GC, Pixmap);
extern int XSetTransientForHint(Display *, Window, Window);
extern int XSetWMColormapWindows(Display *, Window, Window *, int);
extern int XSetWMProtocols(Display *, Window, Atom *, int);
extern int XSetWindowBackground(Display *, Window, unsigned long int);
extern int XSetWindowBackgroundPixmap(Display *, Window, Pixmap);
extern int XSetWindowBorder(Display *, Window, unsigned long int);
extern int XSetWindowBorderPixmap(Display *, Window, Pixmap);
extern int XSetWindowBorderWidth(Display *, Window, unsigned int);
extern int XSetWindowColormap(Display *, Window, Colormap);
extern int XStoreBuffer(Display *, const char *, int, int);
extern int XStoreBytes(Display *, const char *, int);
extern int XStoreColor(Display *, Colormap, XColor *);
extern int XStoreColors(Display *, Colormap, XColor *, int);
extern int XStoreName(Display *, Window, const char *);
extern int XStoreNamedColor(Display *, Colormap, const char *,
			    unsigned long int, int);
extern KeySym XStringToKeysym(const char *);
extern int XSupportsLocale(void);
extern int XSync(Display *, int);
extern int (*XSynchronize(void))
 (Display *);
extern int XTextExtents(XFontStruct *, const char *, int, int *, int *,
			int *, XCharStruct *);
extern int XTextExtents16(XFontStruct *, XChar2b *, int, int *, int *,
			  int *, XCharStruct *);
extern int XTextWidth(XFontStruct *, const char *, int);
extern int XTextWidth16(XFontStruct *, XChar2b *, int);
extern int XTranslateCoordinates(Display *, Window, Window, int, int,
				 int *, int *, Window *);
extern int XUndefineCursor(Display *, Window);
extern int XUngrabButton(Display *, unsigned int, unsigned int, Window);
extern int XUngrabKey(Display *, int, unsigned int, Window);
extern int XUngrabKeyboard(Display *, Time);
extern int XUngrabPointer(Display *, Time);
extern int XUngrabServer(Display *);
extern int XUninstallColormap(Display *, Colormap);
extern int XUnloadFont(Display *, Font);
extern void XUnlockDisplay(Display *);
extern int XUnmapSubwindows(Display *, Window);
extern int XUnmapWindow(Display *, Window);
extern int XUnregisterIMInstantiateCallback(Display *,
					    struct _XrmHashBucketRec *,
					    char *, char *, XIDProc,
					    XPointer);
extern void XUnsetICFocus(XIC);
extern XVaNestedList XVaCreateNestedList(int, ...);
extern int XVendorRelease(Display *);
extern VisualID XVisualIDFromVisual(Visual *);
extern int XWarpPointer(Display *, Window, Window, int, int, unsigned int,
			unsigned int, int, int);
extern unsigned long int XWhitePixel(Display *, int);
extern unsigned long int XWhitePixelOfScreen(Screen *);
extern int XWidthMMOfScreen(Screen *);
extern int XWidthOfScreen(Screen *);
extern int XWindowEvent(Display *, Window, long int, XEvent *);
extern int XWithdrawWindow(Display *, Window, int);
extern int XWriteBitmapFile(Display *, const char *, Pixmap, unsigned int,
			    unsigned int, int, int);
extern void XmbDrawImageString(Display *, Drawable, XFontSet, GC, int, int,
			       const char *, int);
extern void XmbDrawString(Display *, Drawable, XFontSet, GC, int, int,
			  const char *, int);
extern void XmbDrawText(Display *, Drawable, GC, int, int, XmbTextItem *,
			int);
extern int XmbLookupString(XIC, XKeyPressedEvent *, char *, int, KeySym *,
			   int *);
extern char *XmbResetIC(XIC);
extern int XmbTextEscapement(XFontSet, const char *, int);
extern int XmbTextExtents(XFontSet, const char *, int, XRectangle *,
			  XRectangle *);
extern int XmbTextPerCharExtents(XFontSet, const char *, int, XRectangle *,
				 XRectangle *, int, int *, XRectangle *,
				 XRectangle *);
extern void XrmInitialize(void);
extern void XwcDrawImageString(Display *, Drawable, XFontSet, GC, int, int,
			       wchar_t *, int);
extern void XwcDrawString(Display *, Drawable, XFontSet, GC, int, int,
			  wchar_t *, int);
extern void XwcDrawText(Display *, Drawable, GC, int, int, XwcTextItem *,
			int);
extern int XwcLookupString(XIC, XKeyPressedEvent *, wchar_t *, int,
			   KeySym *, int *);
extern wchar_t *XwcResetIC(XIC);
extern int XwcTextEscapement(XFontSet, wchar_t *, int);
extern int XwcTextExtents(XFontSet, wchar_t *, int, XRectangle *,
			  XRectangle *);
extern int XwcTextPerCharExtents(XFontSet, wchar_t *, int, XRectangle *,
				 XRectangle *, int, int *, XRectangle *,
				 XRectangle *);

6.2.6. X11/Xresource.h


extern void XrmCombineDatabase(XrmDatabase, XrmDatabase *, int);
extern int XrmCombineFileDatabase(const char *, XrmDatabase *, int);
extern void XrmDestroyDatabase(XrmDatabase);
extern int XrmEnumerateDatabase(XrmDatabase, XrmNameList, XrmClassList,
				int, int, XPointer);
extern XrmDatabase XrmGetDatabase(Display *);
extern XrmDatabase XrmGetFileDatabase(const char *);
extern int XrmGetResource(XrmDatabase, const char *, const char *, char **,
			  XrmValue *);
extern XrmDatabase XrmGetStringDatabase(const char *);
extern const char *XrmLocaleOfDatabase(XrmDatabase);
extern void XrmMergeDatabases(XrmDatabase, XrmDatabase *);
extern void XrmParseCommand(XrmDatabase *, XrmOptionDescList, int,
			    const char *, int *, char **);
extern XrmQuark XrmPermStringToQuark(const char *);
extern void XrmPutFileDatabase(XrmDatabase, const char *);
extern void XrmPutLineResource(XrmDatabase *, const char *);
extern void XrmPutResource(XrmDatabase *, const char *, const char *,
			   XrmValue *);
extern void XrmPutStringResource(XrmDatabase *, const char *,
				 const char *);
extern int XrmQGetResource(XrmDatabase, XrmNameList, XrmClassList,
			   XrmRepresentation *, XrmValue *);
extern int XrmQGetSearchList(XrmDatabase, XrmNameList, XrmClassList,
			     XrmSearchList, int);
extern int XrmQGetSearchResource(XrmSearchList, XrmName, XrmClass,
				 XrmRepresentation *, XrmValue *);
extern void XrmQPutResource(XrmDatabase *, XrmBindingList, XrmQuarkList,
			    XrmRepresentation, XrmValue *);
extern void XrmQPutStringResource(XrmDatabase *, XrmBindingList,
				  XrmQuarkList, const char *);
extern XrmString XrmQuarkToString(XrmQuark);
extern void XrmSetDatabase(Display *, XrmDatabase);
extern void XrmStringToBindingQuarkList(const char *, XrmBindingList,
					XrmQuarkList);
extern XrmQuark XrmStringToQuark(const char *);
extern void XrmStringToQuarkList(const char *, XrmQuarkList);
extern XrmQuark XrmUniqueQuark(void);

6.2.7. X11/Xutil.h


typedef struct XSizeHints;
typedef struct XWMHints;
typedef struct XTextProperty;
typedef struct XIconSize;
typedef struct XClassHint;
typedef struct _XComposeStatus {
    XPointer compose_ptr;
    int chars_matched;
} XComposeStatus;
typedef struct _XRegion *Region;
typedef struct XVisualInfo;
typedef struct XStandardColormap;
typedef int XContext;
typedef enum XICCEncodingStyle;
extern int XAddPixel(void);
extern XClassHint *XAllocClassHint(void);
extern XIconSize *XAllocIconSize(void);
extern XSizeHints *XAllocSizeHints(void);
extern XStandardColormap *XAllocStandardColormap(void);
extern XWMHints *XAllocWMHints(void);
extern int XClipBox(Region, XRectangle *);
extern void XConvertCase(KeySym, KeySym *, KeySym *);
extern Region XCreateRegion(void);
extern const char *XDefaultString(void);
extern int XDeleteContext(Display *, XID, XContext);
extern int XDestroyImage(XImage *);
extern int XDestroyRegion(Region);
extern int XEmptyRegion(Region);
extern int XEqualRegion(Region, Region);
extern int XFindContext(Display *, XID, XContext, XPointer *);
extern int XGetClassHint(Display *, Window, XClassHint *);
extern int XGetIconSizes(Display *, Window, XIconSize * *, int *);
extern int XGetNormalHints(Display *, Window, XSizeHints *);
extern unsigned long int XGetPixel(void);
extern int XGetRGBColormaps(Display *, Window, XStandardColormap * *,
			    int *, Atom);
extern int XGetSizeHints(Display *, Window, XSizeHints *, Atom);
extern int XGetStandardColormap(Display *, Window, XStandardColormap *,
				Atom);
extern int XGetTextProperty(Display *, Window, XTextProperty *, Atom);
extern XVisualInfo *XGetVisualInfo(Display *, long int, XVisualInfo *,
				   int *);
extern int XGetWMClientMachine(Display *, Window, XTextProperty *);
extern XWMHints *XGetWMHints(Display *, Window);
extern int XGetWMIconName(Display *, Window, XTextProperty *);
extern int XGetWMName(Display *, Window, XTextProperty *);
extern int XGetWMNormalHints(Display *, Window, XSizeHints *, long int *);
extern int XGetWMSizeHints(Display *, Window, XSizeHints *, long int *,
			   Atom);
extern int XGetZoomHints(Display *, Window, XSizeHints *);
extern int XIntersectRegion(Region, Region, Region);
extern int XLookupString(XKeyEvent *, char *, int, KeySym *,
			 XComposeStatus *);
extern int XMatchVisualInfo(Display *, int, int, int, XVisualInfo *);
extern int XOffsetRegion(Region, int, int);
extern int XPointInRegion(Region, int, int);
extern Region XPolygonRegion(XPoint *, int, int);
extern int XPutPixel(void);
extern int XRectInRegion(Region, int, int, unsigned int, unsigned int);
extern int XSaveContext(Display *, XID, XContext, const char *);
extern int XSetClassHint(Display *, Window, XClassHint *);
extern int XSetIconSizes(Display *, Window, XIconSize *, int);
extern int XSetNormalHints(Display *, Window, XSizeHints *);
extern void XSetRGBColormaps(Display *, Window, XStandardColormap *, int,
			     Atom);
extern int XSetRegion(Display *, GC, Region);
extern int XSetSizeHints(Display *, Window, XSizeHints *, Atom);
extern void XSetStandardColormap(Display *, Window, XStandardColormap *,
				 Atom);
extern int XSetStandardProperties(Display *, Window, const char *,
				  const char *, Pixmap, char **, int,
				  XSizeHints *);
extern void XSetTextProperty(Display *, Window, XTextProperty *, Atom);
extern void XSetWMClientMachine(Display *, Window, XTextProperty *);
extern int XSetWMHints(Display *, Window, XWMHints *);
extern void XSetWMIconName(Display *, Window, XTextProperty *);
extern void XSetWMName(Display *, Window, XTextProperty *);
extern void XSetWMNormalHints(Display *, Window, XSizeHints *);
extern void XSetWMProperties(Display *, Window, XTextProperty *,
			     XTextProperty *, char **, int, XSizeHints *,
			     XWMHints *, XClassHint *);
extern void XSetWMSizeHints(Display *, Window, XSizeHints *, Atom);
extern int XSetZoomHints(Display *, Window, XSizeHints *);
extern int XShrinkRegion(Region, int, int);
extern int XStringListToTextProperty(char **, int, XTextProperty *);
extern XImage *XSubImage(void);
extern int XSubtractRegion(Region, Region, Region);
extern int XTextPropertyToStringList(XTextProperty *, char ***, int *);
extern int XUnionRectWithRegion(XRectangle *, Region, Region);
extern int XUnionRegion(Region, Region, Region);
extern int XWMGeometry(Display *, int, const char *, const char *,
		       unsigned int, XSizeHints *, int *, int *, int *,
		       int *, int *);
extern int XXorRegion(Region, Region, Region);
extern void XmbSetWMProperties(Display *, Window, const char *,
			       const char *, char **, int, XSizeHints *,
			       XWMHints *, XClassHint *);
extern int XmbTextListToTextProperty(Display *, char **, int,
				     XICCEncodingStyle, XTextProperty *);
extern int XmbTextPropertyToTextList(Display *, XTextProperty *, char ***,
				     int *);
extern void XwcFreeStringList(wchar_t * *);
extern int XwcTextListToTextProperty(Display *, wchar_t * *, int,
				     XICCEncodingStyle, XTextProperty *);
extern int XwcTextPropertyToTextList(Display *, XTextProperty *,
				     wchar_t * **, int *);
extern int Xutf8TextPropertyToTextList(Display *, XTextProperty *,
				       char ***, int *);
extern int Xutf8TextListToTextProperty(Display *, char **, int,
				       XICCEncodingStyle, XTextProperty *);