Data Definitions for libX11

This section contains standard data definitions that describe system data. 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.

ISO C serves as the LSB 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.

X11/X.h






typedef unsigned long XID;
typedef unsigned long Atom;
typedef unsigned long VisualID;
typedef unsigned long 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 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 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

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;

X11/Xcms.h



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


typedef unsigned long 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
{
  Display *dpy;
  int screenNumber;
  Visual *visual;
  XcmsColor clientWhitePt;
  XcmsCompressionProc gamutCompProc;
  XPointer gamutCompClientData;
  XcmsWhiteAdjustProc whitePtAdjProc;
  XPointer whitePtAdjClientData;
  XcmsPerScrnInfo *pPerScrnInfo;
}
 *XcmsCCC;


typedef XcmsConversionProc *XcmsFuncListPtr;


typedef struct _XcmsColorSpace
{
  char *prefix;
  XcmsColorFormat id;
  XcmsParseStringProc parseString;
  XcmsFuncListPtr to_CIEXYZ;
  XcmsFuncListPtr from_CIEXYZ;
  int inverse_flag;
}
XcmsColorSpace;

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 red_mask;
  unsigned long green_mask;
  unsigned long 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 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);

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;