Path: blob/master/thirdparty/linuxbsd_headers/X11/Xlib.h
9898 views
/*12Copyright 1985, 1986, 1987, 1991, 1998 The Open Group34Permission to use, copy, modify, distribute, and sell this software and its5documentation for any purpose is hereby granted without fee, provided that6the above copyright notice appear in all copies and that both that7copyright notice and this permission notice appear in supporting8documentation.910The above copyright notice and this permission notice shall be included in11all copies or substantial portions of the Software.1213THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR14IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,15FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE16OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN17AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN18CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.1920Except as contained in this notice, the name of The Open Group shall not be21used in advertising or otherwise to promote the sale, use or other dealings22in this Software without prior written authorization from The Open Group.2324*/252627/*28* Xlib.h - Header definition and support file for the C subroutine29* interface library (Xlib) to the X Window System Protocol (V11).30* Structures and symbols starting with "_" are private to the library.31*/32#ifndef _X11_XLIB_H_33#define _X11_XLIB_H_3435#define XlibSpecificationRelease 63637#include <sys/types.h>3839#if defined(__SCO__) || defined(__UNIXWARE__)40#include <stdint.h>41#endif4243#include <X11/X.h>4445/* applications should not depend on these two headers being included! */46#include <X11/Xfuncproto.h>47#include <X11/Xosdefs.h>4849#ifndef X_WCHAR50#include <stddef.h>51#else52#ifdef __UNIXOS2__53#include <stdlib.h>54#else55/* replace this with #include or typedef appropriate for your system */56typedef unsigned long wchar_t;57#endif58#endif596061extern int62_Xmblen(63char *str,64int len65);6667/* API mentioning "UTF8" or "utf8" is an XFree86 extension, introduced in68November 2000. Its presence is indicated through the following macro. */69#define X_HAVE_UTF8_STRING 17071/* The Xlib structs are full of implicit padding to properly align members.72We can't clean that up without breaking ABI, so tell clang not to bother73complaining about it. */74#ifdef __clang__75#pragma clang diagnostic push76#pragma clang diagnostic ignored "-Wpadded"77#endif7879typedef char *XPointer;8081#define Bool int82#define Status int83#define True 184#define False 08586#define QueuedAlready 087#define QueuedAfterReading 188#define QueuedAfterFlush 28990#define ConnectionNumber(dpy) (((_XPrivDisplay)(dpy))->fd)91#define RootWindow(dpy, scr) (ScreenOfDisplay(dpy,scr)->root)92#define DefaultScreen(dpy) (((_XPrivDisplay)(dpy))->default_screen)93#define DefaultRootWindow(dpy) (ScreenOfDisplay(dpy,DefaultScreen(dpy))->root)94#define DefaultVisual(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_visual)95#define DefaultGC(dpy, scr) (ScreenOfDisplay(dpy,scr)->default_gc)96#define BlackPixel(dpy, scr) (ScreenOfDisplay(dpy,scr)->black_pixel)97#define WhitePixel(dpy, scr) (ScreenOfDisplay(dpy,scr)->white_pixel)98#define AllPlanes ((unsigned long)~0L)99#define QLength(dpy) (((_XPrivDisplay)(dpy))->qlen)100#define DisplayWidth(dpy, scr) (ScreenOfDisplay(dpy,scr)->width)101#define DisplayHeight(dpy, scr) (ScreenOfDisplay(dpy,scr)->height)102#define DisplayWidthMM(dpy, scr)(ScreenOfDisplay(dpy,scr)->mwidth)103#define DisplayHeightMM(dpy, scr)(ScreenOfDisplay(dpy,scr)->mheight)104#define DisplayPlanes(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_depth)105#define DisplayCells(dpy, scr) (DefaultVisual(dpy,scr)->map_entries)106#define ScreenCount(dpy) (((_XPrivDisplay)(dpy))->nscreens)107#define ServerVendor(dpy) (((_XPrivDisplay)(dpy))->vendor)108#define ProtocolVersion(dpy) (((_XPrivDisplay)(dpy))->proto_major_version)109#define ProtocolRevision(dpy) (((_XPrivDisplay)(dpy))->proto_minor_version)110#define VendorRelease(dpy) (((_XPrivDisplay)(dpy))->release)111#define DisplayString(dpy) (((_XPrivDisplay)(dpy))->display_name)112#define DefaultDepth(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_depth)113#define DefaultColormap(dpy, scr)(ScreenOfDisplay(dpy,scr)->cmap)114#define BitmapUnit(dpy) (((_XPrivDisplay)(dpy))->bitmap_unit)115#define BitmapBitOrder(dpy) (((_XPrivDisplay)(dpy))->bitmap_bit_order)116#define BitmapPad(dpy) (((_XPrivDisplay)(dpy))->bitmap_pad)117#define ImageByteOrder(dpy) (((_XPrivDisplay)(dpy))->byte_order)118#define NextRequest(dpy) (((_XPrivDisplay)(dpy))->request + 1)119#define LastKnownRequestProcessed(dpy) (((_XPrivDisplay)(dpy))->last_request_read)120121/* macros for screen oriented applications (toolkit) */122#define ScreenOfDisplay(dpy, scr)(&((_XPrivDisplay)(dpy))->screens[scr])123#define DefaultScreenOfDisplay(dpy) ScreenOfDisplay(dpy,DefaultScreen(dpy))124#define DisplayOfScreen(s) ((s)->display)125#define RootWindowOfScreen(s) ((s)->root)126#define BlackPixelOfScreen(s) ((s)->black_pixel)127#define WhitePixelOfScreen(s) ((s)->white_pixel)128#define DefaultColormapOfScreen(s)((s)->cmap)129#define DefaultDepthOfScreen(s) ((s)->root_depth)130#define DefaultGCOfScreen(s) ((s)->default_gc)131#define DefaultVisualOfScreen(s)((s)->root_visual)132#define WidthOfScreen(s) ((s)->width)133#define HeightOfScreen(s) ((s)->height)134#define WidthMMOfScreen(s) ((s)->mwidth)135#define HeightMMOfScreen(s) ((s)->mheight)136#define PlanesOfScreen(s) ((s)->root_depth)137#define CellsOfScreen(s) (DefaultVisualOfScreen((s))->map_entries)138#define MinCmapsOfScreen(s) ((s)->min_maps)139#define MaxCmapsOfScreen(s) ((s)->max_maps)140#define DoesSaveUnders(s) ((s)->save_unders)141#define DoesBackingStore(s) ((s)->backing_store)142#define EventMaskOfScreen(s) ((s)->root_input_mask)143144/*145* Extensions need a way to hang private data on some structures.146*/147typedef struct _XExtData {148int number; /* number returned by XRegisterExtension */149struct _XExtData *next; /* next item on list of data for structure */150int (*free_private)( /* called to free private storage */151struct _XExtData *extension152);153XPointer private_data; /* data private to this extension. */154} XExtData;155156/*157* This file contains structures used by the extension mechanism.158*/159typedef struct { /* public to extension, cannot be changed */160int extension; /* extension number */161int major_opcode; /* major op-code assigned by server */162int first_event; /* first event number for the extension */163int first_error; /* first error number for the extension */164} XExtCodes;165166/*167* Data structure for retrieving info about pixmap formats.168*/169170typedef struct {171int depth;172int bits_per_pixel;173int scanline_pad;174} XPixmapFormatValues;175176177/*178* Data structure for setting graphics context.179*/180typedef struct {181int function; /* logical operation */182unsigned long plane_mask;/* plane mask */183unsigned long foreground;/* foreground pixel */184unsigned long background;/* background pixel */185int line_width; /* line width */186int line_style; /* LineSolid, LineOnOffDash, LineDoubleDash */187int cap_style; /* CapNotLast, CapButt,188CapRound, CapProjecting */189int join_style; /* JoinMiter, JoinRound, JoinBevel */190int fill_style; /* FillSolid, FillTiled,191FillStippled, FillOpaqueStippled */192int fill_rule; /* EvenOddRule, WindingRule */193int arc_mode; /* ArcChord, ArcPieSlice */194Pixmap tile; /* tile pixmap for tiling operations */195Pixmap stipple; /* stipple 1 plane pixmap for stippling */196int ts_x_origin; /* offset for tile or stipple operations */197int ts_y_origin;198Font font; /* default text font for text operations */199int subwindow_mode; /* ClipByChildren, IncludeInferiors */200Bool graphics_exposures;/* boolean, should exposures be generated */201int clip_x_origin; /* origin for clipping */202int clip_y_origin;203Pixmap clip_mask; /* bitmap clipping; other calls for rects */204int dash_offset; /* patterned/dashed line information */205char dashes;206} XGCValues;207208/*209* Graphics context. The contents of this structure are implementation210* dependent. A GC should be treated as opaque by application code.211*/212213typedef struct _XGC214#ifdef XLIB_ILLEGAL_ACCESS215{216XExtData *ext_data; /* hook for extension to hang data */217GContext gid; /* protocol ID for graphics context */218/* there is more to this structure, but it is private to Xlib */219}220#endif221*GC;222223/*224* Visual structure; contains information about colormapping possible.225*/226typedef struct {227XExtData *ext_data; /* hook for extension to hang data */228VisualID visualid; /* visual id of this visual */229#if defined(__cplusplus) || defined(c_plusplus)230int c_class; /* C++ class of screen (monochrome, etc.) */231#else232int class; /* class of screen (monochrome, etc.) */233#endif234unsigned long red_mask, green_mask, blue_mask; /* mask values */235int bits_per_rgb; /* log base 2 of distinct color values */236int map_entries; /* color map entries */237} Visual;238239/*240* Depth structure; contains information for each possible depth.241*/242typedef struct {243int depth; /* this depth (Z) of the depth */244int nvisuals; /* number of Visual types at this depth */245Visual *visuals; /* list of visuals possible at this depth */246} Depth;247248/*249* Information about the screen. The contents of this structure are250* implementation dependent. A Screen should be treated as opaque251* by application code.252*/253254struct _XDisplay; /* Forward declare before use for C++ */255256typedef struct {257XExtData *ext_data; /* hook for extension to hang data */258struct _XDisplay *display;/* back pointer to display structure */259Window root; /* Root window id. */260int width, height; /* width and height of screen */261int mwidth, mheight; /* width and height of in millimeters */262int ndepths; /* number of depths possible */263Depth *depths; /* list of allowable depths on the screen */264int root_depth; /* bits per pixel */265Visual *root_visual; /* root visual */266GC default_gc; /* GC for the root root visual */267Colormap cmap; /* default color map */268unsigned long white_pixel;269unsigned long black_pixel; /* White and Black pixel values */270int max_maps, min_maps; /* max and min color maps */271int backing_store; /* Never, WhenMapped, Always */272Bool save_unders;273long root_input_mask; /* initial root input mask */274} Screen;275276/*277* Format structure; describes ZFormat data the screen will understand.278*/279typedef struct {280XExtData *ext_data; /* hook for extension to hang data */281int depth; /* depth of this image format */282int bits_per_pixel; /* bits/pixel at this depth */283int scanline_pad; /* scanline must padded to this multiple */284} ScreenFormat;285286/*287* Data structure for setting window attributes.288*/289typedef struct {290Pixmap background_pixmap; /* background or None or ParentRelative */291unsigned long background_pixel; /* background pixel */292Pixmap border_pixmap; /* border of the window */293unsigned long border_pixel; /* border pixel value */294int bit_gravity; /* one of bit gravity values */295int win_gravity; /* one of the window gravity values */296int backing_store; /* NotUseful, WhenMapped, Always */297unsigned long backing_planes;/* planes to be preserved if possible */298unsigned long backing_pixel;/* value to use in restoring planes */299Bool save_under; /* should bits under be saved? (popups) */300long event_mask; /* set of events that should be saved */301long do_not_propagate_mask; /* set of events that should not propagate */302Bool override_redirect; /* boolean value for override-redirect */303Colormap colormap; /* color map to be associated with window */304Cursor cursor; /* cursor to be displayed (or None) */305} XSetWindowAttributes;306307typedef struct {308int x, y; /* location of window */309int width, height; /* width and height of window */310int border_width; /* border width of window */311int depth; /* depth of window */312Visual *visual; /* the associated visual structure */313Window root; /* root of screen containing window */314#if defined(__cplusplus) || defined(c_plusplus)315int c_class; /* C++ InputOutput, InputOnly*/316#else317int class; /* InputOutput, InputOnly*/318#endif319int bit_gravity; /* one of bit gravity values */320int win_gravity; /* one of the window gravity values */321int backing_store; /* NotUseful, WhenMapped, Always */322unsigned long backing_planes;/* planes to be preserved if possible */323unsigned long backing_pixel;/* value to be used when restoring planes */324Bool save_under; /* boolean, should bits under be saved? */325Colormap colormap; /* color map to be associated with window */326Bool map_installed; /* boolean, is color map currently installed*/327int map_state; /* IsUnmapped, IsUnviewable, IsViewable */328long all_event_masks; /* set of events all people have interest in*/329long your_event_mask; /* my event mask */330long do_not_propagate_mask; /* set of events that should not propagate */331Bool override_redirect; /* boolean value for override-redirect */332Screen *screen; /* back pointer to correct screen */333} XWindowAttributes;334335/*336* Data structure for host setting; getting routines.337*338*/339340typedef struct {341int family; /* for example FamilyInternet */342int length; /* length of address, in bytes */343char *address; /* pointer to where to find the bytes */344} XHostAddress;345346/*347* Data structure for ServerFamilyInterpreted addresses in host routines348*/349typedef struct {350int typelength; /* length of type string, in bytes */351int valuelength; /* length of value string, in bytes */352char *type; /* pointer to where to find the type string */353char *value; /* pointer to where to find the address */354} XServerInterpretedAddress;355356/*357* Data structure for "image" data, used by image manipulation routines.358*/359typedef struct _XImage {360int width, height; /* size of image */361int xoffset; /* number of pixels offset in X direction */362int format; /* XYBitmap, XYPixmap, ZPixmap */363char *data; /* pointer to image data */364int byte_order; /* data byte order, LSBFirst, MSBFirst */365int bitmap_unit; /* quant. of scanline 8, 16, 32 */366int bitmap_bit_order; /* LSBFirst, MSBFirst */367int bitmap_pad; /* 8, 16, 32 either XY or ZPixmap */368int depth; /* depth of image */369int bytes_per_line; /* accelerator to next line */370int bits_per_pixel; /* bits per pixel (ZPixmap) */371unsigned long red_mask; /* bits in z arrangement */372unsigned long green_mask;373unsigned long blue_mask;374XPointer obdata; /* hook for the object routines to hang on */375struct funcs { /* image manipulation routines */376struct _XImage *(*create_image)(377struct _XDisplay* /* display */,378Visual* /* visual */,379unsigned int /* depth */,380int /* format */,381int /* offset */,382char* /* data */,383unsigned int /* width */,384unsigned int /* height */,385int /* bitmap_pad */,386int /* bytes_per_line */);387int (*destroy_image) (struct _XImage *);388unsigned long (*get_pixel) (struct _XImage *, int, int);389int (*put_pixel) (struct _XImage *, int, int, unsigned long);390struct _XImage *(*sub_image)(struct _XImage *, int, int, unsigned int, unsigned int);391int (*add_pixel) (struct _XImage *, long);392} f;393} XImage;394395/*396* Data structure for XReconfigureWindow397*/398typedef struct {399int x, y;400int width, height;401int border_width;402Window sibling;403int stack_mode;404} XWindowChanges;405406/*407* Data structure used by color operations408*/409typedef struct {410unsigned long pixel;411unsigned short red, green, blue;412char flags; /* do_red, do_green, do_blue */413char pad;414} XColor;415416/*417* Data structures for graphics operations. On most machines, these are418* congruent with the wire protocol structures, so reformatting the data419* can be avoided on these architectures.420*/421typedef struct {422short x1, y1, x2, y2;423} XSegment;424425typedef struct {426short x, y;427} XPoint;428429typedef struct {430short x, y;431unsigned short width, height;432} XRectangle;433434typedef struct {435short x, y;436unsigned short width, height;437short angle1, angle2;438} XArc;439440441/* Data structure for XChangeKeyboardControl */442443typedef struct {444int key_click_percent;445int bell_percent;446int bell_pitch;447int bell_duration;448int led;449int led_mode;450int key;451int auto_repeat_mode; /* On, Off, Default */452} XKeyboardControl;453454/* Data structure for XGetKeyboardControl */455456typedef struct {457int key_click_percent;458int bell_percent;459unsigned int bell_pitch, bell_duration;460unsigned long led_mask;461int global_auto_repeat;462char auto_repeats[32];463} XKeyboardState;464465/* Data structure for XGetMotionEvents. */466467typedef struct {468Time time;469short x, y;470} XTimeCoord;471472/* Data structure for X{Set,Get}ModifierMapping */473474typedef struct {475int max_keypermod; /* The server's max # of keys per modifier */476KeyCode *modifiermap; /* An 8 by max_keypermod array of modifiers */477} XModifierKeymap;478479480/*481* Display datatype maintaining display specific data.482* The contents of this structure are implementation dependent.483* A Display should be treated as opaque by application code.484*/485#ifndef XLIB_ILLEGAL_ACCESS486typedef struct _XDisplay Display;487#endif488489struct _XPrivate; /* Forward declare before use for C++ */490struct _XrmHashBucketRec;491492typedef struct493#ifdef XLIB_ILLEGAL_ACCESS494_XDisplay495#endif496{497XExtData *ext_data; /* hook for extension to hang data */498struct _XPrivate *private1;499int fd; /* Network socket. */500int private2;501int proto_major_version;/* major version of server's X protocol */502int proto_minor_version;/* minor version of servers X protocol */503char *vendor; /* vendor of the server hardware */504XID private3;505XID private4;506XID private5;507int private6;508XID (*resource_alloc)( /* allocator function */509struct _XDisplay*510);511int byte_order; /* screen byte order, LSBFirst, MSBFirst */512int bitmap_unit; /* padding and data requirements */513int bitmap_pad; /* padding requirements on bitmaps */514int bitmap_bit_order; /* LeastSignificant or MostSignificant */515int nformats; /* number of pixmap formats in list */516ScreenFormat *pixmap_format; /* pixmap format list */517int private8;518int release; /* release of the server */519struct _XPrivate *private9, *private10;520int qlen; /* Length of input event queue */521unsigned long last_request_read; /* seq number of last event read */522unsigned long request; /* sequence number of last request. */523XPointer private11;524XPointer private12;525XPointer private13;526XPointer private14;527unsigned max_request_size; /* maximum number 32 bit words in request*/528struct _XrmHashBucketRec *db;529int (*private15)(530struct _XDisplay*531);532char *display_name; /* "host:display" string used on this connect*/533int default_screen; /* default screen for operations */534int nscreens; /* number of screens on this server*/535Screen *screens; /* pointer to list of screens */536unsigned long motion_buffer; /* size of motion buffer */537unsigned long private16;538int min_keycode; /* minimum defined keycode */539int max_keycode; /* maximum defined keycode */540XPointer private17;541XPointer private18;542int private19;543char *xdefaults; /* contents of defaults from server */544/* there is more to this structure, but it is private to Xlib */545}546#ifdef XLIB_ILLEGAL_ACCESS547Display,548#endif549*_XPrivDisplay;550551#undef _XEVENT_552#ifndef _XEVENT_553/*554* Definitions of specific events.555*/556typedef struct {557int type; /* of event */558unsigned long serial; /* # of last request processed by server */559Bool send_event; /* true if this came from a SendEvent request */560Display *display; /* Display the event was read from */561Window window; /* "event" window it is reported relative to */562Window root; /* root window that the event occurred on */563Window subwindow; /* child window */564Time time; /* milliseconds */565int x, y; /* pointer x, y coordinates in event window */566int x_root, y_root; /* coordinates relative to root */567unsigned int state; /* key or button mask */568unsigned int keycode; /* detail */569Bool same_screen; /* same screen flag */570} XKeyEvent;571typedef XKeyEvent XKeyPressedEvent;572typedef XKeyEvent XKeyReleasedEvent;573574typedef struct {575int type; /* of event */576unsigned long serial; /* # of last request processed by server */577Bool send_event; /* true if this came from a SendEvent request */578Display *display; /* Display the event was read from */579Window window; /* "event" window it is reported relative to */580Window root; /* root window that the event occurred on */581Window subwindow; /* child window */582Time time; /* milliseconds */583int x, y; /* pointer x, y coordinates in event window */584int x_root, y_root; /* coordinates relative to root */585unsigned int state; /* key or button mask */586unsigned int button; /* detail */587Bool same_screen; /* same screen flag */588} XButtonEvent;589typedef XButtonEvent XButtonPressedEvent;590typedef XButtonEvent XButtonReleasedEvent;591592typedef struct {593int type; /* of event */594unsigned long serial; /* # of last request processed by server */595Bool send_event; /* true if this came from a SendEvent request */596Display *display; /* Display the event was read from */597Window window; /* "event" window reported relative to */598Window root; /* root window that the event occurred on */599Window subwindow; /* child window */600Time time; /* milliseconds */601int x, y; /* pointer x, y coordinates in event window */602int x_root, y_root; /* coordinates relative to root */603unsigned int state; /* key or button mask */604char is_hint; /* detail */605Bool same_screen; /* same screen flag */606} XMotionEvent;607typedef XMotionEvent XPointerMovedEvent;608609typedef struct {610int type; /* of event */611unsigned long serial; /* # of last request processed by server */612Bool send_event; /* true if this came from a SendEvent request */613Display *display; /* Display the event was read from */614Window window; /* "event" window reported relative to */615Window root; /* root window that the event occurred on */616Window subwindow; /* child window */617Time time; /* milliseconds */618int x, y; /* pointer x, y coordinates in event window */619int x_root, y_root; /* coordinates relative to root */620int mode; /* NotifyNormal, NotifyGrab, NotifyUngrab */621int detail;622/*623* NotifyAncestor, NotifyVirtual, NotifyInferior,624* NotifyNonlinear,NotifyNonlinearVirtual625*/626Bool same_screen; /* same screen flag */627Bool focus; /* boolean focus */628unsigned int state; /* key or button mask */629} XCrossingEvent;630typedef XCrossingEvent XEnterWindowEvent;631typedef XCrossingEvent XLeaveWindowEvent;632633typedef struct {634int type; /* FocusIn or FocusOut */635unsigned long serial; /* # of last request processed by server */636Bool send_event; /* true if this came from a SendEvent request */637Display *display; /* Display the event was read from */638Window window; /* window of event */639int mode; /* NotifyNormal, NotifyWhileGrabbed,640NotifyGrab, NotifyUngrab */641int detail;642/*643* NotifyAncestor, NotifyVirtual, NotifyInferior,644* NotifyNonlinear,NotifyNonlinearVirtual, NotifyPointer,645* NotifyPointerRoot, NotifyDetailNone646*/647} XFocusChangeEvent;648typedef XFocusChangeEvent XFocusInEvent;649typedef XFocusChangeEvent XFocusOutEvent;650651/* generated on EnterWindow and FocusIn when KeyMapState selected */652typedef struct {653int type;654unsigned long serial; /* # of last request processed by server */655Bool send_event; /* true if this came from a SendEvent request */656Display *display; /* Display the event was read from */657Window window;658char key_vector[32];659} XKeymapEvent;660661typedef struct {662int type;663unsigned long serial; /* # of last request processed by server */664Bool send_event; /* true if this came from a SendEvent request */665Display *display; /* Display the event was read from */666Window window;667int x, y;668int width, height;669int count; /* if non-zero, at least this many more */670} XExposeEvent;671672typedef struct {673int type;674unsigned long serial; /* # of last request processed by server */675Bool send_event; /* true if this came from a SendEvent request */676Display *display; /* Display the event was read from */677Drawable drawable;678int x, y;679int width, height;680int count; /* if non-zero, at least this many more */681int major_code; /* core is CopyArea or CopyPlane */682int minor_code; /* not defined in the core */683} XGraphicsExposeEvent;684685typedef struct {686int type;687unsigned long serial; /* # of last request processed by server */688Bool send_event; /* true if this came from a SendEvent request */689Display *display; /* Display the event was read from */690Drawable drawable;691int major_code; /* core is CopyArea or CopyPlane */692int minor_code; /* not defined in the core */693} XNoExposeEvent;694695typedef struct {696int type;697unsigned long serial; /* # of last request processed by server */698Bool send_event; /* true if this came from a SendEvent request */699Display *display; /* Display the event was read from */700Window window;701int state; /* Visibility state */702} XVisibilityEvent;703704typedef struct {705int type;706unsigned long serial; /* # of last request processed by server */707Bool send_event; /* true if this came from a SendEvent request */708Display *display; /* Display the event was read from */709Window parent; /* parent of the window */710Window window; /* window id of window created */711int x, y; /* window location */712int width, height; /* size of window */713int border_width; /* border width */714Bool override_redirect; /* creation should be overridden */715} XCreateWindowEvent;716717typedef struct {718int type;719unsigned long serial; /* # of last request processed by server */720Bool send_event; /* true if this came from a SendEvent request */721Display *display; /* Display the event was read from */722Window event;723Window window;724} XDestroyWindowEvent;725726typedef struct {727int type;728unsigned long serial; /* # of last request processed by server */729Bool send_event; /* true if this came from a SendEvent request */730Display *display; /* Display the event was read from */731Window event;732Window window;733Bool from_configure;734} XUnmapEvent;735736typedef struct {737int type;738unsigned long serial; /* # of last request processed by server */739Bool send_event; /* true if this came from a SendEvent request */740Display *display; /* Display the event was read from */741Window event;742Window window;743Bool override_redirect; /* boolean, is override set... */744} XMapEvent;745746typedef struct {747int type;748unsigned long serial; /* # of last request processed by server */749Bool send_event; /* true if this came from a SendEvent request */750Display *display; /* Display the event was read from */751Window parent;752Window window;753} XMapRequestEvent;754755typedef struct {756int type;757unsigned long serial; /* # of last request processed by server */758Bool send_event; /* true if this came from a SendEvent request */759Display *display; /* Display the event was read from */760Window event;761Window window;762Window parent;763int x, y;764Bool override_redirect;765} XReparentEvent;766767typedef struct {768int type;769unsigned long serial; /* # of last request processed by server */770Bool send_event; /* true if this came from a SendEvent request */771Display *display; /* Display the event was read from */772Window event;773Window window;774int x, y;775int width, height;776int border_width;777Window above;778Bool override_redirect;779} XConfigureEvent;780781typedef struct {782int type;783unsigned long serial; /* # of last request processed by server */784Bool send_event; /* true if this came from a SendEvent request */785Display *display; /* Display the event was read from */786Window event;787Window window;788int x, y;789} XGravityEvent;790791typedef struct {792int type;793unsigned long serial; /* # of last request processed by server */794Bool send_event; /* true if this came from a SendEvent request */795Display *display; /* Display the event was read from */796Window window;797int width, height;798} XResizeRequestEvent;799800typedef struct {801int type;802unsigned long serial; /* # of last request processed by server */803Bool send_event; /* true if this came from a SendEvent request */804Display *display; /* Display the event was read from */805Window parent;806Window window;807int x, y;808int width, height;809int border_width;810Window above;811int detail; /* Above, Below, TopIf, BottomIf, Opposite */812unsigned long value_mask;813} XConfigureRequestEvent;814815typedef struct {816int type;817unsigned long serial; /* # of last request processed by server */818Bool send_event; /* true if this came from a SendEvent request */819Display *display; /* Display the event was read from */820Window event;821Window window;822int place; /* PlaceOnTop, PlaceOnBottom */823} XCirculateEvent;824825typedef struct {826int type;827unsigned long serial; /* # of last request processed by server */828Bool send_event; /* true if this came from a SendEvent request */829Display *display; /* Display the event was read from */830Window parent;831Window window;832int place; /* PlaceOnTop, PlaceOnBottom */833} XCirculateRequestEvent;834835typedef struct {836int type;837unsigned long serial; /* # of last request processed by server */838Bool send_event; /* true if this came from a SendEvent request */839Display *display; /* Display the event was read from */840Window window;841Atom atom;842Time time;843int state; /* NewValue, Deleted */844} XPropertyEvent;845846typedef struct {847int type;848unsigned long serial; /* # of last request processed by server */849Bool send_event; /* true if this came from a SendEvent request */850Display *display; /* Display the event was read from */851Window window;852Atom selection;853Time time;854} XSelectionClearEvent;855856typedef struct {857int type;858unsigned long serial; /* # of last request processed by server */859Bool send_event; /* true if this came from a SendEvent request */860Display *display; /* Display the event was read from */861Window owner;862Window requestor;863Atom selection;864Atom target;865Atom property;866Time time;867} XSelectionRequestEvent;868869typedef struct {870int type;871unsigned long serial; /* # of last request processed by server */872Bool send_event; /* true if this came from a SendEvent request */873Display *display; /* Display the event was read from */874Window requestor;875Atom selection;876Atom target;877Atom property; /* ATOM or None */878Time time;879} XSelectionEvent;880881typedef struct {882int type;883unsigned long serial; /* # of last request processed by server */884Bool send_event; /* true if this came from a SendEvent request */885Display *display; /* Display the event was read from */886Window window;887Colormap colormap; /* COLORMAP or None */888#if defined(__cplusplus) || defined(c_plusplus)889Bool c_new; /* C++ */890#else891Bool new;892#endif893int state; /* ColormapInstalled, ColormapUninstalled */894} XColormapEvent;895896typedef struct {897int type;898unsigned long serial; /* # of last request processed by server */899Bool send_event; /* true if this came from a SendEvent request */900Display *display; /* Display the event was read from */901Window window;902Atom message_type;903int format;904union {905char b[20];906short s[10];907long l[5];908} data;909} XClientMessageEvent;910911typedef struct {912int type;913unsigned long serial; /* # of last request processed by server */914Bool send_event; /* true if this came from a SendEvent request */915Display *display; /* Display the event was read from */916Window window; /* unused */917int request; /* one of MappingModifier, MappingKeyboard,918MappingPointer */919int first_keycode; /* first keycode */920int count; /* defines range of change w. first_keycode*/921} XMappingEvent;922923typedef struct {924int type;925Display *display; /* Display the event was read from */926XID resourceid; /* resource id */927unsigned long serial; /* serial number of failed request */928unsigned char error_code; /* error code of failed request */929unsigned char request_code; /* Major op-code of failed request */930unsigned char minor_code; /* Minor op-code of failed request */931} XErrorEvent;932933typedef struct {934int type;935unsigned long serial; /* # of last request processed by server */936Bool send_event; /* true if this came from a SendEvent request */937Display *display;/* Display the event was read from */938Window window; /* window on which event was requested in event mask */939} XAnyEvent;940941942/***************************************************************943*944* GenericEvent. This event is the standard event for all newer extensions.945*/946947typedef struct948{949int type; /* of event. Always GenericEvent */950unsigned long serial; /* # of last request processed */951Bool send_event; /* true if from SendEvent request */952Display *display; /* Display the event was read from */953int extension; /* major opcode of extension that caused the event */954int evtype; /* actual event type. */955} XGenericEvent;956957typedef struct {958int type; /* of event. Always GenericEvent */959unsigned long serial; /* # of last request processed */960Bool send_event; /* true if from SendEvent request */961Display *display; /* Display the event was read from */962int extension; /* major opcode of extension that caused the event */963int evtype; /* actual event type. */964unsigned int cookie;965void *data;966} XGenericEventCookie;967968/*969* this union is defined so Xlib can always use the same sized970* event structure internally, to avoid memory fragmentation.971*/972typedef union _XEvent {973int type; /* must not be changed; first element */974XAnyEvent xany;975XKeyEvent xkey;976XButtonEvent xbutton;977XMotionEvent xmotion;978XCrossingEvent xcrossing;979XFocusChangeEvent xfocus;980XExposeEvent xexpose;981XGraphicsExposeEvent xgraphicsexpose;982XNoExposeEvent xnoexpose;983XVisibilityEvent xvisibility;984XCreateWindowEvent xcreatewindow;985XDestroyWindowEvent xdestroywindow;986XUnmapEvent xunmap;987XMapEvent xmap;988XMapRequestEvent xmaprequest;989XReparentEvent xreparent;990XConfigureEvent xconfigure;991XGravityEvent xgravity;992XResizeRequestEvent xresizerequest;993XConfigureRequestEvent xconfigurerequest;994XCirculateEvent xcirculate;995XCirculateRequestEvent xcirculaterequest;996XPropertyEvent xproperty;997XSelectionClearEvent xselectionclear;998XSelectionRequestEvent xselectionrequest;999XSelectionEvent xselection;1000XColormapEvent xcolormap;1001XClientMessageEvent xclient;1002XMappingEvent xmapping;1003XErrorEvent xerror;1004XKeymapEvent xkeymap;1005XGenericEvent xgeneric;1006XGenericEventCookie xcookie;1007long pad[24];1008} XEvent;1009#endif10101011#define XAllocID(dpy) ((*((_XPrivDisplay)(dpy))->resource_alloc)((dpy)))10121013/*1014* per character font metric information.1015*/1016typedef struct {1017short lbearing; /* origin to left edge of raster */1018short rbearing; /* origin to right edge of raster */1019short width; /* advance to next char's origin */1020short ascent; /* baseline to top edge of raster */1021short descent; /* baseline to bottom edge of raster */1022unsigned short attributes; /* per char flags (not predefined) */1023} XCharStruct;10241025/*1026* To allow arbitrary information with fonts, there are additional properties1027* returned.1028*/1029typedef struct {1030Atom name;1031unsigned long card32;1032} XFontProp;10331034typedef struct {1035XExtData *ext_data; /* hook for extension to hang data */1036Font fid; /* Font id for this font */1037unsigned direction; /* hint about direction the font is painted */1038unsigned min_char_or_byte2;/* first character */1039unsigned max_char_or_byte2;/* last character */1040unsigned min_byte1; /* first row that exists */1041unsigned max_byte1; /* last row that exists */1042Bool all_chars_exist;/* flag if all characters have non-zero size*/1043unsigned default_char; /* char to print for undefined character */1044int n_properties; /* how many properties there are */1045XFontProp *properties; /* pointer to array of additional properties*/1046XCharStruct min_bounds; /* minimum bounds over all existing char*/1047XCharStruct max_bounds; /* maximum bounds over all existing char*/1048XCharStruct *per_char; /* first_char to last_char information */1049int ascent; /* log. extent above baseline for spacing */1050int descent; /* log. descent below baseline for spacing */1051} XFontStruct;10521053/*1054* PolyText routines take these as arguments.1055*/1056typedef struct {1057char *chars; /* pointer to string */1058int nchars; /* number of characters */1059int delta; /* delta between strings */1060Font font; /* font to print it in, None don't change */1061} XTextItem;10621063typedef struct { /* normal 16 bit characters are two bytes */1064unsigned char byte1;1065unsigned char byte2;1066} XChar2b;10671068typedef struct {1069XChar2b *chars; /* two byte characters */1070int nchars; /* number of characters */1071int delta; /* delta between strings */1072Font font; /* font to print it in, None don't change */1073} XTextItem16;107410751076typedef union { Display *display;1077GC gc;1078Visual *visual;1079Screen *screen;1080ScreenFormat *pixmap_format;1081XFontStruct *font; } XEDataObject;10821083typedef struct {1084XRectangle max_ink_extent;1085XRectangle max_logical_extent;1086} XFontSetExtents;10871088/* unused:1089typedef void (*XOMProc)();1090*/10911092typedef struct _XOM *XOM;1093typedef struct _XOC *XOC, *XFontSet;10941095typedef struct {1096char *chars;1097int nchars;1098int delta;1099XFontSet font_set;1100} XmbTextItem;11011102typedef struct {1103wchar_t *chars;1104int nchars;1105int delta;1106XFontSet font_set;1107} XwcTextItem;11081109#define XNRequiredCharSet "requiredCharSet"1110#define XNQueryOrientation "queryOrientation"1111#define XNBaseFontName "baseFontName"1112#define XNOMAutomatic "omAutomatic"1113#define XNMissingCharSet "missingCharSet"1114#define XNDefaultString "defaultString"1115#define XNOrientation "orientation"1116#define XNDirectionalDependentDrawing "directionalDependentDrawing"1117#define XNContextualDrawing "contextualDrawing"1118#define XNFontInfo "fontInfo"11191120typedef struct {1121int charset_count;1122char **charset_list;1123} XOMCharSetList;11241125typedef enum {1126XOMOrientation_LTR_TTB,1127XOMOrientation_RTL_TTB,1128XOMOrientation_TTB_LTR,1129XOMOrientation_TTB_RTL,1130XOMOrientation_Context1131} XOrientation;11321133typedef struct {1134int num_orientation;1135XOrientation *orientation; /* Input Text description */1136} XOMOrientation;11371138typedef struct {1139int num_font;1140XFontStruct **font_struct_list;1141char **font_name_list;1142} XOMFontInfo;11431144typedef struct _XIM *XIM;1145typedef struct _XIC *XIC;11461147typedef void (*XIMProc)(1148XIM,1149XPointer,1150XPointer1151);11521153typedef Bool (*XICProc)(1154XIC,1155XPointer,1156XPointer1157);11581159typedef void (*XIDProc)(1160Display*,1161XPointer,1162XPointer1163);11641165typedef unsigned long XIMStyle;11661167typedef struct {1168unsigned short count_styles;1169XIMStyle *supported_styles;1170} XIMStyles;11711172#define XIMPreeditArea 0x0001L1173#define XIMPreeditCallbacks 0x0002L1174#define XIMPreeditPosition 0x0004L1175#define XIMPreeditNothing 0x0008L1176#define XIMPreeditNone 0x0010L1177#define XIMStatusArea 0x0100L1178#define XIMStatusCallbacks 0x0200L1179#define XIMStatusNothing 0x0400L1180#define XIMStatusNone 0x0800L11811182#define XNVaNestedList "XNVaNestedList"1183#define XNQueryInputStyle "queryInputStyle"1184#define XNClientWindow "clientWindow"1185#define XNInputStyle "inputStyle"1186#define XNFocusWindow "focusWindow"1187#define XNResourceName "resourceName"1188#define XNResourceClass "resourceClass"1189#define XNGeometryCallback "geometryCallback"1190#define XNDestroyCallback "destroyCallback"1191#define XNFilterEvents "filterEvents"1192#define XNPreeditStartCallback "preeditStartCallback"1193#define XNPreeditDoneCallback "preeditDoneCallback"1194#define XNPreeditDrawCallback "preeditDrawCallback"1195#define XNPreeditCaretCallback "preeditCaretCallback"1196#define XNPreeditStateNotifyCallback "preeditStateNotifyCallback"1197#define XNPreeditAttributes "preeditAttributes"1198#define XNStatusStartCallback "statusStartCallback"1199#define XNStatusDoneCallback "statusDoneCallback"1200#define XNStatusDrawCallback "statusDrawCallback"1201#define XNStatusAttributes "statusAttributes"1202#define XNArea "area"1203#define XNAreaNeeded "areaNeeded"1204#define XNSpotLocation "spotLocation"1205#define XNColormap "colorMap"1206#define XNStdColormap "stdColorMap"1207#define XNForeground "foreground"1208#define XNBackground "background"1209#define XNBackgroundPixmap "backgroundPixmap"1210#define XNFontSet "fontSet"1211#define XNLineSpace "lineSpace"1212#define XNCursor "cursor"12131214#define XNQueryIMValuesList "queryIMValuesList"1215#define XNQueryICValuesList "queryICValuesList"1216#define XNVisiblePosition "visiblePosition"1217#define XNR6PreeditCallback "r6PreeditCallback"1218#define XNStringConversionCallback "stringConversionCallback"1219#define XNStringConversion "stringConversion"1220#define XNResetState "resetState"1221#define XNHotKey "hotKey"1222#define XNHotKeyState "hotKeyState"1223#define XNPreeditState "preeditState"1224#define XNSeparatorofNestedList "separatorofNestedList"12251226#define XBufferOverflow -11227#define XLookupNone 11228#define XLookupChars 21229#define XLookupKeySym 31230#define XLookupBoth 412311232typedef void *XVaNestedList;12331234typedef struct {1235XPointer client_data;1236XIMProc callback;1237} XIMCallback;12381239typedef struct {1240XPointer client_data;1241XICProc callback;1242} XICCallback;12431244typedef unsigned long XIMFeedback;12451246#define XIMReverse 1L1247#define XIMUnderline (1L<<1)1248#define XIMHighlight (1L<<2)1249#define XIMPrimary (1L<<5)1250#define XIMSecondary (1L<<6)1251#define XIMTertiary (1L<<7)1252#define XIMVisibleToForward (1L<<8)1253#define XIMVisibleToBackword (1L<<9)1254#define XIMVisibleToCenter (1L<<10)12551256typedef struct _XIMText {1257unsigned short length;1258XIMFeedback *feedback;1259Bool encoding_is_wchar;1260union {1261char *multi_byte;1262wchar_t *wide_char;1263} string;1264} XIMText;12651266typedef unsigned long XIMPreeditState;12671268#define XIMPreeditUnKnown 0L1269#define XIMPreeditEnable 1L1270#define XIMPreeditDisable (1L<<1)12711272typedef struct _XIMPreeditStateNotifyCallbackStruct {1273XIMPreeditState state;1274} XIMPreeditStateNotifyCallbackStruct;12751276typedef unsigned long XIMResetState;12771278#define XIMInitialState 1L1279#define XIMPreserveState (1L<<1)12801281typedef unsigned long XIMStringConversionFeedback;12821283#define XIMStringConversionLeftEdge (0x00000001)1284#define XIMStringConversionRightEdge (0x00000002)1285#define XIMStringConversionTopEdge (0x00000004)1286#define XIMStringConversionBottomEdge (0x00000008)1287#define XIMStringConversionConcealed (0x00000010)1288#define XIMStringConversionWrapped (0x00000020)12891290typedef struct _XIMStringConversionText {1291unsigned short length;1292XIMStringConversionFeedback *feedback;1293Bool encoding_is_wchar;1294union {1295char *mbs;1296wchar_t *wcs;1297} string;1298} XIMStringConversionText;12991300typedef unsigned short XIMStringConversionPosition;13011302typedef unsigned short XIMStringConversionType;13031304#define XIMStringConversionBuffer (0x0001)1305#define XIMStringConversionLine (0x0002)1306#define XIMStringConversionWord (0x0003)1307#define XIMStringConversionChar (0x0004)13081309typedef unsigned short XIMStringConversionOperation;13101311#define XIMStringConversionSubstitution (0x0001)1312#define XIMStringConversionRetrieval (0x0002)13131314typedef enum {1315XIMForwardChar, XIMBackwardChar,1316XIMForwardWord, XIMBackwardWord,1317XIMCaretUp, XIMCaretDown,1318XIMNextLine, XIMPreviousLine,1319XIMLineStart, XIMLineEnd,1320XIMAbsolutePosition,1321XIMDontChange1322} XIMCaretDirection;13231324typedef struct _XIMStringConversionCallbackStruct {1325XIMStringConversionPosition position;1326XIMCaretDirection direction;1327XIMStringConversionOperation operation;1328unsigned short factor;1329XIMStringConversionText *text;1330} XIMStringConversionCallbackStruct;13311332typedef struct _XIMPreeditDrawCallbackStruct {1333int caret; /* Cursor offset within pre-edit string */1334int chg_first; /* Starting change position */1335int chg_length; /* Length of the change in character count */1336XIMText *text;1337} XIMPreeditDrawCallbackStruct;13381339typedef enum {1340XIMIsInvisible, /* Disable caret feedback */1341XIMIsPrimary, /* UI defined caret feedback */1342XIMIsSecondary /* UI defined caret feedback */1343} XIMCaretStyle;13441345typedef struct _XIMPreeditCaretCallbackStruct {1346int position; /* Caret offset within pre-edit string */1347XIMCaretDirection direction; /* Caret moves direction */1348XIMCaretStyle style; /* Feedback of the caret */1349} XIMPreeditCaretCallbackStruct;13501351typedef enum {1352XIMTextType,1353XIMBitmapType1354} XIMStatusDataType;13551356typedef struct _XIMStatusDrawCallbackStruct {1357XIMStatusDataType type;1358union {1359XIMText *text;1360Pixmap bitmap;1361} data;1362} XIMStatusDrawCallbackStruct;13631364typedef struct _XIMHotKeyTrigger {1365KeySym keysym;1366int modifier;1367int modifier_mask;1368} XIMHotKeyTrigger;13691370typedef struct _XIMHotKeyTriggers {1371int num_hot_key;1372XIMHotKeyTrigger *key;1373} XIMHotKeyTriggers;13741375typedef unsigned long XIMHotKeyState;13761377#define XIMHotKeyStateON (0x0001L)1378#define XIMHotKeyStateOFF (0x0002L)13791380typedef struct {1381unsigned short count_values;1382char **supported_values;1383} XIMValuesList;13841385_XFUNCPROTOBEGIN13861387#if defined(WIN32) && !defined(_XLIBINT_)1388#define _Xdebug (*_Xdebug_p)1389#endif13901391extern int _Xdebug;13921393extern XFontStruct *XLoadQueryFont(1394Display* /* display */,1395_Xconst char* /* name */1396);13971398extern XFontStruct *XQueryFont(1399Display* /* display */,1400XID /* font_ID */1401);140214031404extern XTimeCoord *XGetMotionEvents(1405Display* /* display */,1406Window /* w */,1407Time /* start */,1408Time /* stop */,1409int* /* nevents_return */1410);14111412extern XModifierKeymap *XDeleteModifiermapEntry(1413XModifierKeymap* /* modmap */,1414#if NeedWidePrototypes1415unsigned int /* keycode_entry */,1416#else1417KeyCode /* keycode_entry */,1418#endif1419int /* modifier */1420);14211422extern XModifierKeymap *XGetModifierMapping(1423Display* /* display */1424);14251426extern XModifierKeymap *XInsertModifiermapEntry(1427XModifierKeymap* /* modmap */,1428#if NeedWidePrototypes1429unsigned int /* keycode_entry */,1430#else1431KeyCode /* keycode_entry */,1432#endif1433int /* modifier */1434);14351436extern XModifierKeymap *XNewModifiermap(1437int /* max_keys_per_mod */1438);14391440extern XImage *XCreateImage(1441Display* /* display */,1442Visual* /* visual */,1443unsigned int /* depth */,1444int /* format */,1445int /* offset */,1446char* /* data */,1447unsigned int /* width */,1448unsigned int /* height */,1449int /* bitmap_pad */,1450int /* bytes_per_line */1451);1452extern Status XInitImage(1453XImage* /* image */1454);1455extern XImage *XGetImage(1456Display* /* display */,1457Drawable /* d */,1458int /* x */,1459int /* y */,1460unsigned int /* width */,1461unsigned int /* height */,1462unsigned long /* plane_mask */,1463int /* format */1464);1465extern XImage *XGetSubImage(1466Display* /* display */,1467Drawable /* d */,1468int /* x */,1469int /* y */,1470unsigned int /* width */,1471unsigned int /* height */,1472unsigned long /* plane_mask */,1473int /* format */,1474XImage* /* dest_image */,1475int /* dest_x */,1476int /* dest_y */1477);14781479/*1480* X function declarations.1481*/1482extern Display *XOpenDisplay(1483_Xconst char* /* display_name */1484);14851486extern void XrmInitialize(1487void1488);14891490extern char *XFetchBytes(1491Display* /* display */,1492int* /* nbytes_return */1493);1494extern char *XFetchBuffer(1495Display* /* display */,1496int* /* nbytes_return */,1497int /* buffer */1498);1499extern char *XGetAtomName(1500Display* /* display */,1501Atom /* atom */1502);1503extern Status XGetAtomNames(1504Display* /* dpy */,1505Atom* /* atoms */,1506int /* count */,1507char** /* names_return */1508);1509extern char *XGetDefault(1510Display* /* display */,1511_Xconst char* /* program */,1512_Xconst char* /* option */1513);1514extern char *XDisplayName(1515_Xconst char* /* string */1516);1517extern char *XKeysymToString(1518KeySym /* keysym */1519);15201521extern int (*XSynchronize(1522Display* /* display */,1523Bool /* onoff */1524))(1525Display* /* display */1526);1527extern int (*XSetAfterFunction(1528Display* /* display */,1529int (*) (1530Display* /* display */1531) /* procedure */1532))(1533Display* /* display */1534);1535extern Atom XInternAtom(1536Display* /* display */,1537_Xconst char* /* atom_name */,1538Bool /* only_if_exists */1539);1540extern Status XInternAtoms(1541Display* /* dpy */,1542char** /* names */,1543int /* count */,1544Bool /* onlyIfExists */,1545Atom* /* atoms_return */1546);1547extern Colormap XCopyColormapAndFree(1548Display* /* display */,1549Colormap /* colormap */1550);1551extern Colormap XCreateColormap(1552Display* /* display */,1553Window /* w */,1554Visual* /* visual */,1555int /* alloc */1556);1557extern Cursor XCreatePixmapCursor(1558Display* /* display */,1559Pixmap /* source */,1560Pixmap /* mask */,1561XColor* /* foreground_color */,1562XColor* /* background_color */,1563unsigned int /* x */,1564unsigned int /* y */1565);1566extern Cursor XCreateGlyphCursor(1567Display* /* display */,1568Font /* source_font */,1569Font /* mask_font */,1570unsigned int /* source_char */,1571unsigned int /* mask_char */,1572XColor _Xconst * /* foreground_color */,1573XColor _Xconst * /* background_color */1574);1575extern Cursor XCreateFontCursor(1576Display* /* display */,1577unsigned int /* shape */1578);1579extern Font XLoadFont(1580Display* /* display */,1581_Xconst char* /* name */1582);1583extern GC XCreateGC(1584Display* /* display */,1585Drawable /* d */,1586unsigned long /* valuemask */,1587XGCValues* /* values */1588);1589extern GContext XGContextFromGC(1590GC /* gc */1591);1592extern void XFlushGC(1593Display* /* display */,1594GC /* gc */1595);1596extern Pixmap XCreatePixmap(1597Display* /* display */,1598Drawable /* d */,1599unsigned int /* width */,1600unsigned int /* height */,1601unsigned int /* depth */1602);1603extern Pixmap XCreateBitmapFromData(1604Display* /* display */,1605Drawable /* d */,1606_Xconst char* /* data */,1607unsigned int /* width */,1608unsigned int /* height */1609);1610extern Pixmap XCreatePixmapFromBitmapData(1611Display* /* display */,1612Drawable /* d */,1613char* /* data */,1614unsigned int /* width */,1615unsigned int /* height */,1616unsigned long /* fg */,1617unsigned long /* bg */,1618unsigned int /* depth */1619);1620extern Window XCreateSimpleWindow(1621Display* /* display */,1622Window /* parent */,1623int /* x */,1624int /* y */,1625unsigned int /* width */,1626unsigned int /* height */,1627unsigned int /* border_width */,1628unsigned long /* border */,1629unsigned long /* background */1630);1631extern Window XGetSelectionOwner(1632Display* /* display */,1633Atom /* selection */1634);1635extern Window XCreateWindow(1636Display* /* display */,1637Window /* parent */,1638int /* x */,1639int /* y */,1640unsigned int /* width */,1641unsigned int /* height */,1642unsigned int /* border_width */,1643int /* depth */,1644unsigned int /* class */,1645Visual* /* visual */,1646unsigned long /* valuemask */,1647XSetWindowAttributes* /* attributes */1648);1649extern Colormap *XListInstalledColormaps(1650Display* /* display */,1651Window /* w */,1652int* /* num_return */1653);1654extern char **XListFonts(1655Display* /* display */,1656_Xconst char* /* pattern */,1657int /* maxnames */,1658int* /* actual_count_return */1659);1660extern char **XListFontsWithInfo(1661Display* /* display */,1662_Xconst char* /* pattern */,1663int /* maxnames */,1664int* /* count_return */,1665XFontStruct** /* info_return */1666);1667extern char **XGetFontPath(1668Display* /* display */,1669int* /* npaths_return */1670);1671extern char **XListExtensions(1672Display* /* display */,1673int* /* nextensions_return */1674);1675extern Atom *XListProperties(1676Display* /* display */,1677Window /* w */,1678int* /* num_prop_return */1679);1680extern XHostAddress *XListHosts(1681Display* /* display */,1682int* /* nhosts_return */,1683Bool* /* state_return */1684);1685_X_DEPRECATED1686extern KeySym XKeycodeToKeysym(1687Display* /* display */,1688#if NeedWidePrototypes1689unsigned int /* keycode */,1690#else1691KeyCode /* keycode */,1692#endif1693int /* index */1694);1695extern KeySym XLookupKeysym(1696XKeyEvent* /* key_event */,1697int /* index */1698);1699extern KeySym *XGetKeyboardMapping(1700Display* /* display */,1701#if NeedWidePrototypes1702unsigned int /* first_keycode */,1703#else1704KeyCode /* first_keycode */,1705#endif1706int /* keycode_count */,1707int* /* keysyms_per_keycode_return */1708);1709extern KeySym XStringToKeysym(1710_Xconst char* /* string */1711);1712extern long XMaxRequestSize(1713Display* /* display */1714);1715extern long XExtendedMaxRequestSize(1716Display* /* display */1717);1718extern char *XResourceManagerString(1719Display* /* display */1720);1721extern char *XScreenResourceString(1722Screen* /* screen */1723);1724extern unsigned long XDisplayMotionBufferSize(1725Display* /* display */1726);1727extern VisualID XVisualIDFromVisual(1728Visual* /* visual */1729);17301731/* multithread routines */17321733extern Status XInitThreads(1734void1735);17361737extern void XLockDisplay(1738Display* /* display */1739);17401741extern void XUnlockDisplay(1742Display* /* display */1743);17441745/* routines for dealing with extensions */17461747extern XExtCodes *XInitExtension(1748Display* /* display */,1749_Xconst char* /* name */1750);17511752extern XExtCodes *XAddExtension(1753Display* /* display */1754);1755extern XExtData *XFindOnExtensionList(1756XExtData** /* structure */,1757int /* number */1758);1759extern XExtData **XEHeadOfExtensionList(1760XEDataObject /* object */1761);17621763/* these are routines for which there are also macros */1764extern Window XRootWindow(1765Display* /* display */,1766int /* screen_number */1767);1768extern Window XDefaultRootWindow(1769Display* /* display */1770);1771extern Window XRootWindowOfScreen(1772Screen* /* screen */1773);1774extern Visual *XDefaultVisual(1775Display* /* display */,1776int /* screen_number */1777);1778extern Visual *XDefaultVisualOfScreen(1779Screen* /* screen */1780);1781extern GC XDefaultGC(1782Display* /* display */,1783int /* screen_number */1784);1785extern GC XDefaultGCOfScreen(1786Screen* /* screen */1787);1788extern unsigned long XBlackPixel(1789Display* /* display */,1790int /* screen_number */1791);1792extern unsigned long XWhitePixel(1793Display* /* display */,1794int /* screen_number */1795);1796extern unsigned long XAllPlanes(1797void1798);1799extern unsigned long XBlackPixelOfScreen(1800Screen* /* screen */1801);1802extern unsigned long XWhitePixelOfScreen(1803Screen* /* screen */1804);1805extern unsigned long XNextRequest(1806Display* /* display */1807);1808extern unsigned long XLastKnownRequestProcessed(1809Display* /* display */1810);1811extern char *XServerVendor(1812Display* /* display */1813);1814extern char *XDisplayString(1815Display* /* display */1816);1817extern Colormap XDefaultColormap(1818Display* /* display */,1819int /* screen_number */1820);1821extern Colormap XDefaultColormapOfScreen(1822Screen* /* screen */1823);1824extern Display *XDisplayOfScreen(1825Screen* /* screen */1826);1827extern Screen *XScreenOfDisplay(1828Display* /* display */,1829int /* screen_number */1830);1831extern Screen *XDefaultScreenOfDisplay(1832Display* /* display */1833);1834extern long XEventMaskOfScreen(1835Screen* /* screen */1836);18371838extern int XScreenNumberOfScreen(1839Screen* /* screen */1840);18411842typedef int (*XErrorHandler) ( /* WARNING, this type not in Xlib spec */1843Display* /* display */,1844XErrorEvent* /* error_event */1845);18461847extern XErrorHandler XSetErrorHandler (1848XErrorHandler /* handler */1849);185018511852typedef int (*XIOErrorHandler) ( /* WARNING, this type not in Xlib spec */1853Display* /* display */1854);18551856extern XIOErrorHandler XSetIOErrorHandler (1857XIOErrorHandler /* handler */1858);18591860typedef void (*XIOErrorExitHandler) ( /* WARNING, this type not in Xlib spec */1861Display*, /* display */1862void* /* user_data */1863);18641865extern void XSetIOErrorExitHandler (1866Display*, /* display */1867XIOErrorExitHandler, /* handler */1868void* /* user_data */1869);18701871extern XPixmapFormatValues *XListPixmapFormats(1872Display* /* display */,1873int* /* count_return */1874);1875extern int *XListDepths(1876Display* /* display */,1877int /* screen_number */,1878int* /* count_return */1879);18801881/* ICCCM routines for things that don't require special include files; */1882/* other declarations are given in Xutil.h */1883extern Status XReconfigureWMWindow(1884Display* /* display */,1885Window /* w */,1886int /* screen_number */,1887unsigned int /* mask */,1888XWindowChanges* /* changes */1889);18901891extern Status XGetWMProtocols(1892Display* /* display */,1893Window /* w */,1894Atom** /* protocols_return */,1895int* /* count_return */1896);1897extern Status XSetWMProtocols(1898Display* /* display */,1899Window /* w */,1900Atom* /* protocols */,1901int /* count */1902);1903extern Status XIconifyWindow(1904Display* /* display */,1905Window /* w */,1906int /* screen_number */1907);1908extern Status XWithdrawWindow(1909Display* /* display */,1910Window /* w */,1911int /* screen_number */1912);1913extern Status XGetCommand(1914Display* /* display */,1915Window /* w */,1916char*** /* argv_return */,1917int* /* argc_return */1918);1919extern Status XGetWMColormapWindows(1920Display* /* display */,1921Window /* w */,1922Window** /* windows_return */,1923int* /* count_return */1924);1925extern Status XSetWMColormapWindows(1926Display* /* display */,1927Window /* w */,1928Window* /* colormap_windows */,1929int /* count */1930);1931extern void XFreeStringList(1932char** /* list */1933);1934extern int XSetTransientForHint(1935Display* /* display */,1936Window /* w */,1937Window /* prop_window */1938);19391940/* The following are given in alphabetical order */19411942extern int XActivateScreenSaver(1943Display* /* display */1944);19451946extern int XAddHost(1947Display* /* display */,1948XHostAddress* /* host */1949);19501951extern int XAddHosts(1952Display* /* display */,1953XHostAddress* /* hosts */,1954int /* num_hosts */1955);19561957extern int XAddToExtensionList(1958struct _XExtData** /* structure */,1959XExtData* /* ext_data */1960);19611962extern int XAddToSaveSet(1963Display* /* display */,1964Window /* w */1965);19661967extern Status XAllocColor(1968Display* /* display */,1969Colormap /* colormap */,1970XColor* /* screen_in_out */1971);19721973extern Status XAllocColorCells(1974Display* /* display */,1975Colormap /* colormap */,1976Bool /* contig */,1977unsigned long* /* plane_masks_return */,1978unsigned int /* nplanes */,1979unsigned long* /* pixels_return */,1980unsigned int /* npixels */1981);19821983extern Status XAllocColorPlanes(1984Display* /* display */,1985Colormap /* colormap */,1986Bool /* contig */,1987unsigned long* /* pixels_return */,1988int /* ncolors */,1989int /* nreds */,1990int /* ngreens */,1991int /* nblues */,1992unsigned long* /* rmask_return */,1993unsigned long* /* gmask_return */,1994unsigned long* /* bmask_return */1995);19961997extern Status XAllocNamedColor(1998Display* /* display */,1999Colormap /* colormap */,2000_Xconst char* /* color_name */,2001XColor* /* screen_def_return */,2002XColor* /* exact_def_return */2003);20042005extern int XAllowEvents(2006Display* /* display */,2007int /* event_mode */,2008Time /* time */2009);20102011extern int XAutoRepeatOff(2012Display* /* display */2013);20142015extern int XAutoRepeatOn(2016Display* /* display */2017);20182019extern int XBell(2020Display* /* display */,2021int /* percent */2022);20232024extern int XBitmapBitOrder(2025Display* /* display */2026);20272028extern int XBitmapPad(2029Display* /* display */2030);20312032extern int XBitmapUnit(2033Display* /* display */2034);20352036extern int XCellsOfScreen(2037Screen* /* screen */2038);20392040extern int XChangeActivePointerGrab(2041Display* /* display */,2042unsigned int /* event_mask */,2043Cursor /* cursor */,2044Time /* time */2045);20462047extern int XChangeGC(2048Display* /* display */,2049GC /* gc */,2050unsigned long /* valuemask */,2051XGCValues* /* values */2052);20532054extern int XChangeKeyboardControl(2055Display* /* display */,2056unsigned long /* value_mask */,2057XKeyboardControl* /* values */2058);20592060extern int XChangeKeyboardMapping(2061Display* /* display */,2062int /* first_keycode */,2063int /* keysyms_per_keycode */,2064KeySym* /* keysyms */,2065int /* num_codes */2066);20672068extern int XChangePointerControl(2069Display* /* display */,2070Bool /* do_accel */,2071Bool /* do_threshold */,2072int /* accel_numerator */,2073int /* accel_denominator */,2074int /* threshold */2075);20762077extern int XChangeProperty(2078Display* /* display */,2079Window /* w */,2080Atom /* property */,2081Atom /* type */,2082int /* format */,2083int /* mode */,2084_Xconst unsigned char* /* data */,2085int /* nelements */2086);20872088extern int XChangeSaveSet(2089Display* /* display */,2090Window /* w */,2091int /* change_mode */2092);20932094extern int XChangeWindowAttributes(2095Display* /* display */,2096Window /* w */,2097unsigned long /* valuemask */,2098XSetWindowAttributes* /* attributes */2099);21002101extern Bool XCheckIfEvent(2102Display* /* display */,2103XEvent* /* event_return */,2104Bool (*) (2105Display* /* display */,2106XEvent* /* event */,2107XPointer /* arg */2108) /* predicate */,2109XPointer /* arg */2110);21112112extern Bool XCheckMaskEvent(2113Display* /* display */,2114long /* event_mask */,2115XEvent* /* event_return */2116);21172118extern Bool XCheckTypedEvent(2119Display* /* display */,2120int /* event_type */,2121XEvent* /* event_return */2122);21232124extern Bool XCheckTypedWindowEvent(2125Display* /* display */,2126Window /* w */,2127int /* event_type */,2128XEvent* /* event_return */2129);21302131extern Bool XCheckWindowEvent(2132Display* /* display */,2133Window /* w */,2134long /* event_mask */,2135XEvent* /* event_return */2136);21372138extern int XCirculateSubwindows(2139Display* /* display */,2140Window /* w */,2141int /* direction */2142);21432144extern int XCirculateSubwindowsDown(2145Display* /* display */,2146Window /* w */2147);21482149extern int XCirculateSubwindowsUp(2150Display* /* display */,2151Window /* w */2152);21532154extern int XClearArea(2155Display* /* display */,2156Window /* w */,2157int /* x */,2158int /* y */,2159unsigned int /* width */,2160unsigned int /* height */,2161Bool /* exposures */2162);21632164extern int XClearWindow(2165Display* /* display */,2166Window /* w */2167);21682169extern int XCloseDisplay(2170Display* /* display */2171);21722173extern int XConfigureWindow(2174Display* /* display */,2175Window /* w */,2176unsigned int /* value_mask */,2177XWindowChanges* /* values */2178);21792180extern int XConnectionNumber(2181Display* /* display */2182);21832184extern int XConvertSelection(2185Display* /* display */,2186Atom /* selection */,2187Atom /* target */,2188Atom /* property */,2189Window /* requestor */,2190Time /* time */2191);21922193extern int XCopyArea(2194Display* /* display */,2195Drawable /* src */,2196Drawable /* dest */,2197GC /* gc */,2198int /* src_x */,2199int /* src_y */,2200unsigned int /* width */,2201unsigned int /* height */,2202int /* dest_x */,2203int /* dest_y */2204);22052206extern int XCopyGC(2207Display* /* display */,2208GC /* src */,2209unsigned long /* valuemask */,2210GC /* dest */2211);22122213extern int XCopyPlane(2214Display* /* display */,2215Drawable /* src */,2216Drawable /* dest */,2217GC /* gc */,2218int /* src_x */,2219int /* src_y */,2220unsigned int /* width */,2221unsigned int /* height */,2222int /* dest_x */,2223int /* dest_y */,2224unsigned long /* plane */2225);22262227extern int XDefaultDepth(2228Display* /* display */,2229int /* screen_number */2230);22312232extern int XDefaultDepthOfScreen(2233Screen* /* screen */2234);22352236extern int XDefaultScreen(2237Display* /* display */2238);22392240extern int XDefineCursor(2241Display* /* display */,2242Window /* w */,2243Cursor /* cursor */2244);22452246extern int XDeleteProperty(2247Display* /* display */,2248Window /* w */,2249Atom /* property */2250);22512252extern int XDestroyWindow(2253Display* /* display */,2254Window /* w */2255);22562257extern int XDestroySubwindows(2258Display* /* display */,2259Window /* w */2260);22612262extern int XDoesBackingStore(2263Screen* /* screen */2264);22652266extern Bool XDoesSaveUnders(2267Screen* /* screen */2268);22692270extern int XDisableAccessControl(2271Display* /* display */2272);227322742275extern int XDisplayCells(2276Display* /* display */,2277int /* screen_number */2278);22792280extern int XDisplayHeight(2281Display* /* display */,2282int /* screen_number */2283);22842285extern int XDisplayHeightMM(2286Display* /* display */,2287int /* screen_number */2288);22892290extern int XDisplayKeycodes(2291Display* /* display */,2292int* /* min_keycodes_return */,2293int* /* max_keycodes_return */2294);22952296extern int XDisplayPlanes(2297Display* /* display */,2298int /* screen_number */2299);23002301extern int XDisplayWidth(2302Display* /* display */,2303int /* screen_number */2304);23052306extern int XDisplayWidthMM(2307Display* /* display */,2308int /* screen_number */2309);23102311extern int XDrawArc(2312Display* /* display */,2313Drawable /* d */,2314GC /* gc */,2315int /* x */,2316int /* y */,2317unsigned int /* width */,2318unsigned int /* height */,2319int /* angle1 */,2320int /* angle2 */2321);23222323extern int XDrawArcs(2324Display* /* display */,2325Drawable /* d */,2326GC /* gc */,2327XArc* /* arcs */,2328int /* narcs */2329);23302331extern int XDrawImageString(2332Display* /* display */,2333Drawable /* d */,2334GC /* gc */,2335int /* x */,2336int /* y */,2337_Xconst char* /* string */,2338int /* length */2339);23402341extern int XDrawImageString16(2342Display* /* display */,2343Drawable /* d */,2344GC /* gc */,2345int /* x */,2346int /* y */,2347_Xconst XChar2b* /* string */,2348int /* length */2349);23502351extern int XDrawLine(2352Display* /* display */,2353Drawable /* d */,2354GC /* gc */,2355int /* x1 */,2356int /* y1 */,2357int /* x2 */,2358int /* y2 */2359);23602361extern int XDrawLines(2362Display* /* display */,2363Drawable /* d */,2364GC /* gc */,2365XPoint* /* points */,2366int /* npoints */,2367int /* mode */2368);23692370extern int XDrawPoint(2371Display* /* display */,2372Drawable /* d */,2373GC /* gc */,2374int /* x */,2375int /* y */2376);23772378extern int XDrawPoints(2379Display* /* display */,2380Drawable /* d */,2381GC /* gc */,2382XPoint* /* points */,2383int /* npoints */,2384int /* mode */2385);23862387extern int XDrawRectangle(2388Display* /* display */,2389Drawable /* d */,2390GC /* gc */,2391int /* x */,2392int /* y */,2393unsigned int /* width */,2394unsigned int /* height */2395);23962397extern int XDrawRectangles(2398Display* /* display */,2399Drawable /* d */,2400GC /* gc */,2401XRectangle* /* rectangles */,2402int /* nrectangles */2403);24042405extern int XDrawSegments(2406Display* /* display */,2407Drawable /* d */,2408GC /* gc */,2409XSegment* /* segments */,2410int /* nsegments */2411);24122413extern int XDrawString(2414Display* /* display */,2415Drawable /* d */,2416GC /* gc */,2417int /* x */,2418int /* y */,2419_Xconst char* /* string */,2420int /* length */2421);24222423extern int XDrawString16(2424Display* /* display */,2425Drawable /* d */,2426GC /* gc */,2427int /* x */,2428int /* y */,2429_Xconst XChar2b* /* string */,2430int /* length */2431);24322433extern int XDrawText(2434Display* /* display */,2435Drawable /* d */,2436GC /* gc */,2437int /* x */,2438int /* y */,2439XTextItem* /* items */,2440int /* nitems */2441);24422443extern int XDrawText16(2444Display* /* display */,2445Drawable /* d */,2446GC /* gc */,2447int /* x */,2448int /* y */,2449XTextItem16* /* items */,2450int /* nitems */2451);24522453extern int XEnableAccessControl(2454Display* /* display */2455);24562457extern int XEventsQueued(2458Display* /* display */,2459int /* mode */2460);24612462extern Status XFetchName(2463Display* /* display */,2464Window /* w */,2465char** /* window_name_return */2466);24672468extern int XFillArc(2469Display* /* display */,2470Drawable /* d */,2471GC /* gc */,2472int /* x */,2473int /* y */,2474unsigned int /* width */,2475unsigned int /* height */,2476int /* angle1 */,2477int /* angle2 */2478);24792480extern int XFillArcs(2481Display* /* display */,2482Drawable /* d */,2483GC /* gc */,2484XArc* /* arcs */,2485int /* narcs */2486);24872488extern int XFillPolygon(2489Display* /* display */,2490Drawable /* d */,2491GC /* gc */,2492XPoint* /* points */,2493int /* npoints */,2494int /* shape */,2495int /* mode */2496);24972498extern int XFillRectangle(2499Display* /* display */,2500Drawable /* d */,2501GC /* gc */,2502int /* x */,2503int /* y */,2504unsigned int /* width */,2505unsigned int /* height */2506);25072508extern int XFillRectangles(2509Display* /* display */,2510Drawable /* d */,2511GC /* gc */,2512XRectangle* /* rectangles */,2513int /* nrectangles */2514);25152516extern int XFlush(2517Display* /* display */2518);25192520extern int XForceScreenSaver(2521Display* /* display */,2522int /* mode */2523);25242525extern int XFree(2526void* /* data */2527);25282529extern int XFreeColormap(2530Display* /* display */,2531Colormap /* colormap */2532);25332534extern int XFreeColors(2535Display* /* display */,2536Colormap /* colormap */,2537unsigned long* /* pixels */,2538int /* npixels */,2539unsigned long /* planes */2540);25412542extern int XFreeCursor(2543Display* /* display */,2544Cursor /* cursor */2545);25462547extern int XFreeExtensionList(2548char** /* list */2549);25502551extern int XFreeFont(2552Display* /* display */,2553XFontStruct* /* font_struct */2554);25552556extern int XFreeFontInfo(2557char** /* names */,2558XFontStruct* /* free_info */,2559int /* actual_count */2560);25612562extern int XFreeFontNames(2563char** /* list */2564);25652566extern int XFreeFontPath(2567char** /* list */2568);25692570extern int XFreeGC(2571Display* /* display */,2572GC /* gc */2573);25742575extern int XFreeModifiermap(2576XModifierKeymap* /* modmap */2577);25782579extern int XFreePixmap(2580Display* /* display */,2581Pixmap /* pixmap */2582);25832584extern int XGeometry(2585Display* /* display */,2586int /* screen */,2587_Xconst char* /* position */,2588_Xconst char* /* default_position */,2589unsigned int /* bwidth */,2590unsigned int /* fwidth */,2591unsigned int /* fheight */,2592int /* xadder */,2593int /* yadder */,2594int* /* x_return */,2595int* /* y_return */,2596int* /* width_return */,2597int* /* height_return */2598);25992600extern int XGetErrorDatabaseText(2601Display* /* display */,2602_Xconst char* /* name */,2603_Xconst char* /* message */,2604_Xconst char* /* default_string */,2605char* /* buffer_return */,2606int /* length */2607);26082609extern int XGetErrorText(2610Display* /* display */,2611int /* code */,2612char* /* buffer_return */,2613int /* length */2614);26152616extern Bool XGetFontProperty(2617XFontStruct* /* font_struct */,2618Atom /* atom */,2619unsigned long* /* value_return */2620);26212622extern Status XGetGCValues(2623Display* /* display */,2624GC /* gc */,2625unsigned long /* valuemask */,2626XGCValues* /* values_return */2627);26282629extern Status XGetGeometry(2630Display* /* display */,2631Drawable /* d */,2632Window* /* root_return */,2633int* /* x_return */,2634int* /* y_return */,2635unsigned int* /* width_return */,2636unsigned int* /* height_return */,2637unsigned int* /* border_width_return */,2638unsigned int* /* depth_return */2639);26402641extern Status XGetIconName(2642Display* /* display */,2643Window /* w */,2644char** /* icon_name_return */2645);26462647extern int XGetInputFocus(2648Display* /* display */,2649Window* /* focus_return */,2650int* /* revert_to_return */2651);26522653extern int XGetKeyboardControl(2654Display* /* display */,2655XKeyboardState* /* values_return */2656);26572658extern int XGetPointerControl(2659Display* /* display */,2660int* /* accel_numerator_return */,2661int* /* accel_denominator_return */,2662int* /* threshold_return */2663);26642665extern int XGetPointerMapping(2666Display* /* display */,2667unsigned char* /* map_return */,2668int /* nmap */2669);26702671extern int XGetScreenSaver(2672Display* /* display */,2673int* /* timeout_return */,2674int* /* interval_return */,2675int* /* prefer_blanking_return */,2676int* /* allow_exposures_return */2677);26782679extern Status XGetTransientForHint(2680Display* /* display */,2681Window /* w */,2682Window* /* prop_window_return */2683);26842685extern int XGetWindowProperty(2686Display* /* display */,2687Window /* w */,2688Atom /* property */,2689long /* long_offset */,2690long /* long_length */,2691Bool /* delete */,2692Atom /* req_type */,2693Atom* /* actual_type_return */,2694int* /* actual_format_return */,2695unsigned long* /* nitems_return */,2696unsigned long* /* bytes_after_return */,2697unsigned char** /* prop_return */2698);26992700extern Status XGetWindowAttributes(2701Display* /* display */,2702Window /* w */,2703XWindowAttributes* /* window_attributes_return */2704);27052706extern int XGrabButton(2707Display* /* display */,2708unsigned int /* button */,2709unsigned int /* modifiers */,2710Window /* grab_window */,2711Bool /* owner_events */,2712unsigned int /* event_mask */,2713int /* pointer_mode */,2714int /* keyboard_mode */,2715Window /* confine_to */,2716Cursor /* cursor */2717);27182719extern int XGrabKey(2720Display* /* display */,2721int /* keycode */,2722unsigned int /* modifiers */,2723Window /* grab_window */,2724Bool /* owner_events */,2725int /* pointer_mode */,2726int /* keyboard_mode */2727);27282729extern int XGrabKeyboard(2730Display* /* display */,2731Window /* grab_window */,2732Bool /* owner_events */,2733int /* pointer_mode */,2734int /* keyboard_mode */,2735Time /* time */2736);27372738extern int XGrabPointer(2739Display* /* display */,2740Window /* grab_window */,2741Bool /* owner_events */,2742unsigned int /* event_mask */,2743int /* pointer_mode */,2744int /* keyboard_mode */,2745Window /* confine_to */,2746Cursor /* cursor */,2747Time /* time */2748);27492750extern int XGrabServer(2751Display* /* display */2752);27532754extern int XHeightMMOfScreen(2755Screen* /* screen */2756);27572758extern int XHeightOfScreen(2759Screen* /* screen */2760);27612762extern int XIfEvent(2763Display* /* display */,2764XEvent* /* event_return */,2765Bool (*) (2766Display* /* display */,2767XEvent* /* event */,2768XPointer /* arg */2769) /* predicate */,2770XPointer /* arg */2771);27722773extern int XImageByteOrder(2774Display* /* display */2775);27762777extern int XInstallColormap(2778Display* /* display */,2779Colormap /* colormap */2780);27812782extern KeyCode XKeysymToKeycode(2783Display* /* display */,2784KeySym /* keysym */2785);27862787extern int XKillClient(2788Display* /* display */,2789XID /* resource */2790);27912792extern Status XLookupColor(2793Display* /* display */,2794Colormap /* colormap */,2795_Xconst char* /* color_name */,2796XColor* /* exact_def_return */,2797XColor* /* screen_def_return */2798);27992800extern int XLowerWindow(2801Display* /* display */,2802Window /* w */2803);28042805extern int XMapRaised(2806Display* /* display */,2807Window /* w */2808);28092810extern int XMapSubwindows(2811Display* /* display */,2812Window /* w */2813);28142815extern int XMapWindow(2816Display* /* display */,2817Window /* w */2818);28192820extern int XMaskEvent(2821Display* /* display */,2822long /* event_mask */,2823XEvent* /* event_return */2824);28252826extern int XMaxCmapsOfScreen(2827Screen* /* screen */2828);28292830extern int XMinCmapsOfScreen(2831Screen* /* screen */2832);28332834extern int XMoveResizeWindow(2835Display* /* display */,2836Window /* w */,2837int /* x */,2838int /* y */,2839unsigned int /* width */,2840unsigned int /* height */2841);28422843extern int XMoveWindow(2844Display* /* display */,2845Window /* w */,2846int /* x */,2847int /* y */2848);28492850extern int XNextEvent(2851Display* /* display */,2852XEvent* /* event_return */2853);28542855extern int XNoOp(2856Display* /* display */2857);28582859extern Status XParseColor(2860Display* /* display */,2861Colormap /* colormap */,2862_Xconst char* /* spec */,2863XColor* /* exact_def_return */2864);28652866extern int XParseGeometry(2867_Xconst char* /* parsestring */,2868int* /* x_return */,2869int* /* y_return */,2870unsigned int* /* width_return */,2871unsigned int* /* height_return */2872);28732874extern int XPeekEvent(2875Display* /* display */,2876XEvent* /* event_return */2877);28782879extern int XPeekIfEvent(2880Display* /* display */,2881XEvent* /* event_return */,2882Bool (*) (2883Display* /* display */,2884XEvent* /* event */,2885XPointer /* arg */2886) /* predicate */,2887XPointer /* arg */2888);28892890extern int XPending(2891Display* /* display */2892);28932894extern int XPlanesOfScreen(2895Screen* /* screen */2896);28972898extern int XProtocolRevision(2899Display* /* display */2900);29012902extern int XProtocolVersion(2903Display* /* display */2904);290529062907extern int XPutBackEvent(2908Display* /* display */,2909XEvent* /* event */2910);29112912extern int XPutImage(2913Display* /* display */,2914Drawable /* d */,2915GC /* gc */,2916XImage* /* image */,2917int /* src_x */,2918int /* src_y */,2919int /* dest_x */,2920int /* dest_y */,2921unsigned int /* width */,2922unsigned int /* height */2923);29242925extern int XQLength(2926Display* /* display */2927);29282929extern Status XQueryBestCursor(2930Display* /* display */,2931Drawable /* d */,2932unsigned int /* width */,2933unsigned int /* height */,2934unsigned int* /* width_return */,2935unsigned int* /* height_return */2936);29372938extern Status XQueryBestSize(2939Display* /* display */,2940int /* class */,2941Drawable /* which_screen */,2942unsigned int /* width */,2943unsigned int /* height */,2944unsigned int* /* width_return */,2945unsigned int* /* height_return */2946);29472948extern Status XQueryBestStipple(2949Display* /* display */,2950Drawable /* which_screen */,2951unsigned int /* width */,2952unsigned int /* height */,2953unsigned int* /* width_return */,2954unsigned int* /* height_return */2955);29562957extern Status XQueryBestTile(2958Display* /* display */,2959Drawable /* which_screen */,2960unsigned int /* width */,2961unsigned int /* height */,2962unsigned int* /* width_return */,2963unsigned int* /* height_return */2964);29652966extern int XQueryColor(2967Display* /* display */,2968Colormap /* colormap */,2969XColor* /* def_in_out */2970);29712972extern int XQueryColors(2973Display* /* display */,2974Colormap /* colormap */,2975XColor* /* defs_in_out */,2976int /* ncolors */2977);29782979extern Bool XQueryExtension(2980Display* /* display */,2981_Xconst char* /* name */,2982int* /* major_opcode_return */,2983int* /* first_event_return */,2984int* /* first_error_return */2985);29862987extern int XQueryKeymap(2988Display* /* display */,2989char [32] /* keys_return */2990);29912992extern Bool XQueryPointer(2993Display* /* display */,2994Window /* w */,2995Window* /* root_return */,2996Window* /* child_return */,2997int* /* root_x_return */,2998int* /* root_y_return */,2999int* /* win_x_return */,3000int* /* win_y_return */,3001unsigned int* /* mask_return */3002);30033004extern int XQueryTextExtents(3005Display* /* display */,3006XID /* font_ID */,3007_Xconst char* /* string */,3008int /* nchars */,3009int* /* direction_return */,3010int* /* font_ascent_return */,3011int* /* font_descent_return */,3012XCharStruct* /* overall_return */3013);30143015extern int XQueryTextExtents16(3016Display* /* display */,3017XID /* font_ID */,3018_Xconst XChar2b* /* string */,3019int /* nchars */,3020int* /* direction_return */,3021int* /* font_ascent_return */,3022int* /* font_descent_return */,3023XCharStruct* /* overall_return */3024);30253026extern Status XQueryTree(3027Display* /* display */,3028Window /* w */,3029Window* /* root_return */,3030Window* /* parent_return */,3031Window** /* children_return */,3032unsigned int* /* nchildren_return */3033);30343035extern int XRaiseWindow(3036Display* /* display */,3037Window /* w */3038);30393040extern int XReadBitmapFile(3041Display* /* display */,3042Drawable /* d */,3043_Xconst char* /* filename */,3044unsigned int* /* width_return */,3045unsigned int* /* height_return */,3046Pixmap* /* bitmap_return */,3047int* /* x_hot_return */,3048int* /* y_hot_return */3049);30503051extern int XReadBitmapFileData(3052_Xconst char* /* filename */,3053unsigned int* /* width_return */,3054unsigned int* /* height_return */,3055unsigned char** /* data_return */,3056int* /* x_hot_return */,3057int* /* y_hot_return */3058);30593060extern int XRebindKeysym(3061Display* /* display */,3062KeySym /* keysym */,3063KeySym* /* list */,3064int /* mod_count */,3065_Xconst unsigned char* /* string */,3066int /* bytes_string */3067);30683069extern int XRecolorCursor(3070Display* /* display */,3071Cursor /* cursor */,3072XColor* /* foreground_color */,3073XColor* /* background_color */3074);30753076extern int XRefreshKeyboardMapping(3077XMappingEvent* /* event_map */3078);30793080extern int XRemoveFromSaveSet(3081Display* /* display */,3082Window /* w */3083);30843085extern int XRemoveHost(3086Display* /* display */,3087XHostAddress* /* host */3088);30893090extern int XRemoveHosts(3091Display* /* display */,3092XHostAddress* /* hosts */,3093int /* num_hosts */3094);30953096extern int XReparentWindow(3097Display* /* display */,3098Window /* w */,3099Window /* parent */,3100int /* x */,3101int /* y */3102);31033104extern int XResetScreenSaver(3105Display* /* display */3106);31073108extern int XResizeWindow(3109Display* /* display */,3110Window /* w */,3111unsigned int /* width */,3112unsigned int /* height */3113);31143115extern int XRestackWindows(3116Display* /* display */,3117Window* /* windows */,3118int /* nwindows */3119);31203121extern int XRotateBuffers(3122Display* /* display */,3123int /* rotate */3124);31253126extern int XRotateWindowProperties(3127Display* /* display */,3128Window /* w */,3129Atom* /* properties */,3130int /* num_prop */,3131int /* npositions */3132);31333134extern int XScreenCount(3135Display* /* display */3136);31373138extern int XSelectInput(3139Display* /* display */,3140Window /* w */,3141long /* event_mask */3142);31433144extern Status XSendEvent(3145Display* /* display */,3146Window /* w */,3147Bool /* propagate */,3148long /* event_mask */,3149XEvent* /* event_send */3150);31513152extern int XSetAccessControl(3153Display* /* display */,3154int /* mode */3155);31563157extern int XSetArcMode(3158Display* /* display */,3159GC /* gc */,3160int /* arc_mode */3161);31623163extern int XSetBackground(3164Display* /* display */,3165GC /* gc */,3166unsigned long /* background */3167);31683169extern int XSetClipMask(3170Display* /* display */,3171GC /* gc */,3172Pixmap /* pixmap */3173);31743175extern int XSetClipOrigin(3176Display* /* display */,3177GC /* gc */,3178int /* clip_x_origin */,3179int /* clip_y_origin */3180);31813182extern int XSetClipRectangles(3183Display* /* display */,3184GC /* gc */,3185int /* clip_x_origin */,3186int /* clip_y_origin */,3187XRectangle* /* rectangles */,3188int /* n */,3189int /* ordering */3190);31913192extern int XSetCloseDownMode(3193Display* /* display */,3194int /* close_mode */3195);31963197extern int XSetCommand(3198Display* /* display */,3199Window /* w */,3200char** /* argv */,3201int /* argc */3202);32033204extern int XSetDashes(3205Display* /* display */,3206GC /* gc */,3207int /* dash_offset */,3208_Xconst char* /* dash_list */,3209int /* n */3210);32113212extern int XSetFillRule(3213Display* /* display */,3214GC /* gc */,3215int /* fill_rule */3216);32173218extern int XSetFillStyle(3219Display* /* display */,3220GC /* gc */,3221int /* fill_style */3222);32233224extern int XSetFont(3225Display* /* display */,3226GC /* gc */,3227Font /* font */3228);32293230extern int XSetFontPath(3231Display* /* display */,3232char** /* directories */,3233int /* ndirs */3234);32353236extern int XSetForeground(3237Display* /* display */,3238GC /* gc */,3239unsigned long /* foreground */3240);32413242extern int XSetFunction(3243Display* /* display */,3244GC /* gc */,3245int /* function */3246);32473248extern int XSetGraphicsExposures(3249Display* /* display */,3250GC /* gc */,3251Bool /* graphics_exposures */3252);32533254extern int XSetIconName(3255Display* /* display */,3256Window /* w */,3257_Xconst char* /* icon_name */3258);32593260extern int XSetInputFocus(3261Display* /* display */,3262Window /* focus */,3263int /* revert_to */,3264Time /* time */3265);32663267extern int XSetLineAttributes(3268Display* /* display */,3269GC /* gc */,3270unsigned int /* line_width */,3271int /* line_style */,3272int /* cap_style */,3273int /* join_style */3274);32753276extern int XSetModifierMapping(3277Display* /* display */,3278XModifierKeymap* /* modmap */3279);32803281extern int XSetPlaneMask(3282Display* /* display */,3283GC /* gc */,3284unsigned long /* plane_mask */3285);32863287extern int XSetPointerMapping(3288Display* /* display */,3289_Xconst unsigned char* /* map */,3290int /* nmap */3291);32923293extern int XSetScreenSaver(3294Display* /* display */,3295int /* timeout */,3296int /* interval */,3297int /* prefer_blanking */,3298int /* allow_exposures */3299);33003301extern int XSetSelectionOwner(3302Display* /* display */,3303Atom /* selection */,3304Window /* owner */,3305Time /* time */3306);33073308extern int XSetState(3309Display* /* display */,3310GC /* gc */,3311unsigned long /* foreground */,3312unsigned long /* background */,3313int /* function */,3314unsigned long /* plane_mask */3315);33163317extern int XSetStipple(3318Display* /* display */,3319GC /* gc */,3320Pixmap /* stipple */3321);33223323extern int XSetSubwindowMode(3324Display* /* display */,3325GC /* gc */,3326int /* subwindow_mode */3327);33283329extern int XSetTSOrigin(3330Display* /* display */,3331GC /* gc */,3332int /* ts_x_origin */,3333int /* ts_y_origin */3334);33353336extern int XSetTile(3337Display* /* display */,3338GC /* gc */,3339Pixmap /* tile */3340);33413342extern int XSetWindowBackground(3343Display* /* display */,3344Window /* w */,3345unsigned long /* background_pixel */3346);33473348extern int XSetWindowBackgroundPixmap(3349Display* /* display */,3350Window /* w */,3351Pixmap /* background_pixmap */3352);33533354extern int XSetWindowBorder(3355Display* /* display */,3356Window /* w */,3357unsigned long /* border_pixel */3358);33593360extern int XSetWindowBorderPixmap(3361Display* /* display */,3362Window /* w */,3363Pixmap /* border_pixmap */3364);33653366extern int XSetWindowBorderWidth(3367Display* /* display */,3368Window /* w */,3369unsigned int /* width */3370);33713372extern int XSetWindowColormap(3373Display* /* display */,3374Window /* w */,3375Colormap /* colormap */3376);33773378extern int XStoreBuffer(3379Display* /* display */,3380_Xconst char* /* bytes */,3381int /* nbytes */,3382int /* buffer */3383);33843385extern int XStoreBytes(3386Display* /* display */,3387_Xconst char* /* bytes */,3388int /* nbytes */3389);33903391extern int XStoreColor(3392Display* /* display */,3393Colormap /* colormap */,3394XColor* /* color */3395);33963397extern int XStoreColors(3398Display* /* display */,3399Colormap /* colormap */,3400XColor* /* color */,3401int /* ncolors */3402);34033404extern int XStoreName(3405Display* /* display */,3406Window /* w */,3407_Xconst char* /* window_name */3408);34093410extern int XStoreNamedColor(3411Display* /* display */,3412Colormap /* colormap */,3413_Xconst char* /* color */,3414unsigned long /* pixel */,3415int /* flags */3416);34173418extern int XSync(3419Display* /* display */,3420Bool /* discard */3421);34223423extern int XTextExtents(3424XFontStruct* /* font_struct */,3425_Xconst char* /* string */,3426int /* nchars */,3427int* /* direction_return */,3428int* /* font_ascent_return */,3429int* /* font_descent_return */,3430XCharStruct* /* overall_return */3431);34323433extern int XTextExtents16(3434XFontStruct* /* font_struct */,3435_Xconst XChar2b* /* string */,3436int /* nchars */,3437int* /* direction_return */,3438int* /* font_ascent_return */,3439int* /* font_descent_return */,3440XCharStruct* /* overall_return */3441);34423443extern int XTextWidth(3444XFontStruct* /* font_struct */,3445_Xconst char* /* string */,3446int /* count */3447);34483449extern int XTextWidth16(3450XFontStruct* /* font_struct */,3451_Xconst XChar2b* /* string */,3452int /* count */3453);34543455extern Bool XTranslateCoordinates(3456Display* /* display */,3457Window /* src_w */,3458Window /* dest_w */,3459int /* src_x */,3460int /* src_y */,3461int* /* dest_x_return */,3462int* /* dest_y_return */,3463Window* /* child_return */3464);34653466extern int XUndefineCursor(3467Display* /* display */,3468Window /* w */3469);34703471extern int XUngrabButton(3472Display* /* display */,3473unsigned int /* button */,3474unsigned int /* modifiers */,3475Window /* grab_window */3476);34773478extern int XUngrabKey(3479Display* /* display */,3480int /* keycode */,3481unsigned int /* modifiers */,3482Window /* grab_window */3483);34843485extern int XUngrabKeyboard(3486Display* /* display */,3487Time /* time */3488);34893490extern int XUngrabPointer(3491Display* /* display */,3492Time /* time */3493);34943495extern int XUngrabServer(3496Display* /* display */3497);34983499extern int XUninstallColormap(3500Display* /* display */,3501Colormap /* colormap */3502);35033504extern int XUnloadFont(3505Display* /* display */,3506Font /* font */3507);35083509extern int XUnmapSubwindows(3510Display* /* display */,3511Window /* w */3512);35133514extern int XUnmapWindow(3515Display* /* display */,3516Window /* w */3517);35183519extern int XVendorRelease(3520Display* /* display */3521);35223523extern int XWarpPointer(3524Display* /* display */,3525Window /* src_w */,3526Window /* dest_w */,3527int /* src_x */,3528int /* src_y */,3529unsigned int /* src_width */,3530unsigned int /* src_height */,3531int /* dest_x */,3532int /* dest_y */3533);35343535extern int XWidthMMOfScreen(3536Screen* /* screen */3537);35383539extern int XWidthOfScreen(3540Screen* /* screen */3541);35423543extern int XWindowEvent(3544Display* /* display */,3545Window /* w */,3546long /* event_mask */,3547XEvent* /* event_return */3548);35493550extern int XWriteBitmapFile(3551Display* /* display */,3552_Xconst char* /* filename */,3553Pixmap /* bitmap */,3554unsigned int /* width */,3555unsigned int /* height */,3556int /* x_hot */,3557int /* y_hot */3558);35593560extern Bool XSupportsLocale (void);35613562extern char *XSetLocaleModifiers(3563const char* /* modifier_list */3564);35653566extern XOM XOpenOM(3567Display* /* display */,3568struct _XrmHashBucketRec* /* rdb */,3569_Xconst char* /* res_name */,3570_Xconst char* /* res_class */3571);35723573extern Status XCloseOM(3574XOM /* om */3575);35763577extern char *XSetOMValues(3578XOM /* om */,3579...3580) _X_SENTINEL(0);35813582extern char *XGetOMValues(3583XOM /* om */,3584...3585) _X_SENTINEL(0);35863587extern Display *XDisplayOfOM(3588XOM /* om */3589);35903591extern char *XLocaleOfOM(3592XOM /* om */3593);35943595extern XOC XCreateOC(3596XOM /* om */,3597...3598) _X_SENTINEL(0);35993600extern void XDestroyOC(3601XOC /* oc */3602);36033604extern XOM XOMOfOC(3605XOC /* oc */3606);36073608extern char *XSetOCValues(3609XOC /* oc */,3610...3611) _X_SENTINEL(0);36123613extern char *XGetOCValues(3614XOC /* oc */,3615...3616) _X_SENTINEL(0);36173618extern XFontSet XCreateFontSet(3619Display* /* display */,3620_Xconst char* /* base_font_name_list */,3621char*** /* missing_charset_list */,3622int* /* missing_charset_count */,3623char** /* def_string */3624);36253626extern void XFreeFontSet(3627Display* /* display */,3628XFontSet /* font_set */3629);36303631extern int XFontsOfFontSet(3632XFontSet /* font_set */,3633XFontStruct*** /* font_struct_list */,3634char*** /* font_name_list */3635);36363637extern char *XBaseFontNameListOfFontSet(3638XFontSet /* font_set */3639);36403641extern char *XLocaleOfFontSet(3642XFontSet /* font_set */3643);36443645extern Bool XContextDependentDrawing(3646XFontSet /* font_set */3647);36483649extern Bool XDirectionalDependentDrawing(3650XFontSet /* font_set */3651);36523653extern Bool XContextualDrawing(3654XFontSet /* font_set */3655);36563657extern XFontSetExtents *XExtentsOfFontSet(3658XFontSet /* font_set */3659);36603661extern int XmbTextEscapement(3662XFontSet /* font_set */,3663_Xconst char* /* text */,3664int /* bytes_text */3665);36663667extern int XwcTextEscapement(3668XFontSet /* font_set */,3669_Xconst wchar_t* /* text */,3670int /* num_wchars */3671);36723673extern int Xutf8TextEscapement(3674XFontSet /* font_set */,3675_Xconst char* /* text */,3676int /* bytes_text */3677);36783679extern int XmbTextExtents(3680XFontSet /* font_set */,3681_Xconst char* /* text */,3682int /* bytes_text */,3683XRectangle* /* overall_ink_return */,3684XRectangle* /* overall_logical_return */3685);36863687extern int XwcTextExtents(3688XFontSet /* font_set */,3689_Xconst wchar_t* /* text */,3690int /* num_wchars */,3691XRectangle* /* overall_ink_return */,3692XRectangle* /* overall_logical_return */3693);36943695extern int Xutf8TextExtents(3696XFontSet /* font_set */,3697_Xconst char* /* text */,3698int /* bytes_text */,3699XRectangle* /* overall_ink_return */,3700XRectangle* /* overall_logical_return */3701);37023703extern Status XmbTextPerCharExtents(3704XFontSet /* font_set */,3705_Xconst char* /* text */,3706int /* bytes_text */,3707XRectangle* /* ink_extents_buffer */,3708XRectangle* /* logical_extents_buffer */,3709int /* buffer_size */,3710int* /* num_chars */,3711XRectangle* /* overall_ink_return */,3712XRectangle* /* overall_logical_return */3713);37143715extern Status XwcTextPerCharExtents(3716XFontSet /* font_set */,3717_Xconst wchar_t* /* text */,3718int /* num_wchars */,3719XRectangle* /* ink_extents_buffer */,3720XRectangle* /* logical_extents_buffer */,3721int /* buffer_size */,3722int* /* num_chars */,3723XRectangle* /* overall_ink_return */,3724XRectangle* /* overall_logical_return */3725);37263727extern Status Xutf8TextPerCharExtents(3728XFontSet /* font_set */,3729_Xconst char* /* text */,3730int /* bytes_text */,3731XRectangle* /* ink_extents_buffer */,3732XRectangle* /* logical_extents_buffer */,3733int /* buffer_size */,3734int* /* num_chars */,3735XRectangle* /* overall_ink_return */,3736XRectangle* /* overall_logical_return */3737);37383739extern void XmbDrawText(3740Display* /* display */,3741Drawable /* d */,3742GC /* gc */,3743int /* x */,3744int /* y */,3745XmbTextItem* /* text_items */,3746int /* nitems */3747);37483749extern void XwcDrawText(3750Display* /* display */,3751Drawable /* d */,3752GC /* gc */,3753int /* x */,3754int /* y */,3755XwcTextItem* /* text_items */,3756int /* nitems */3757);37583759extern void Xutf8DrawText(3760Display* /* display */,3761Drawable /* d */,3762GC /* gc */,3763int /* x */,3764int /* y */,3765XmbTextItem* /* text_items */,3766int /* nitems */3767);37683769extern void XmbDrawString(3770Display* /* display */,3771Drawable /* d */,3772XFontSet /* font_set */,3773GC /* gc */,3774int /* x */,3775int /* y */,3776_Xconst char* /* text */,3777int /* bytes_text */3778);37793780extern void XwcDrawString(3781Display* /* display */,3782Drawable /* d */,3783XFontSet /* font_set */,3784GC /* gc */,3785int /* x */,3786int /* y */,3787_Xconst wchar_t* /* text */,3788int /* num_wchars */3789);37903791extern void Xutf8DrawString(3792Display* /* display */,3793Drawable /* d */,3794XFontSet /* font_set */,3795GC /* gc */,3796int /* x */,3797int /* y */,3798_Xconst char* /* text */,3799int /* bytes_text */3800);38013802extern void XmbDrawImageString(3803Display* /* display */,3804Drawable /* d */,3805XFontSet /* font_set */,3806GC /* gc */,3807int /* x */,3808int /* y */,3809_Xconst char* /* text */,3810int /* bytes_text */3811);38123813extern void XwcDrawImageString(3814Display* /* display */,3815Drawable /* d */,3816XFontSet /* font_set */,3817GC /* gc */,3818int /* x */,3819int /* y */,3820_Xconst wchar_t* /* text */,3821int /* num_wchars */3822);38233824extern void Xutf8DrawImageString(3825Display* /* display */,3826Drawable /* d */,3827XFontSet /* font_set */,3828GC /* gc */,3829int /* x */,3830int /* y */,3831_Xconst char* /* text */,3832int /* bytes_text */3833);38343835extern XIM XOpenIM(3836Display* /* dpy */,3837struct _XrmHashBucketRec* /* rdb */,3838char* /* res_name */,3839char* /* res_class */3840);38413842extern Status XCloseIM(3843XIM /* im */3844);38453846extern char *XGetIMValues(3847XIM /* im */, ...3848) _X_SENTINEL(0);38493850extern char *XSetIMValues(3851XIM /* im */, ...3852) _X_SENTINEL(0);38533854extern Display *XDisplayOfIM(3855XIM /* im */3856);38573858extern char *XLocaleOfIM(3859XIM /* im*/3860);38613862extern XIC XCreateIC(3863XIM /* im */, ...3864) _X_SENTINEL(0);38653866extern void XDestroyIC(3867XIC /* ic */3868);38693870extern void XSetICFocus(3871XIC /* ic */3872);38733874extern void XUnsetICFocus(3875XIC /* ic */3876);38773878extern wchar_t *XwcResetIC(3879XIC /* ic */3880);38813882extern char *XmbResetIC(3883XIC /* ic */3884);38853886extern char *Xutf8ResetIC(3887XIC /* ic */3888);38893890extern char *XSetICValues(3891XIC /* ic */, ...3892) _X_SENTINEL(0);38933894extern char *XGetICValues(3895XIC /* ic */, ...3896) _X_SENTINEL(0);38973898extern XIM XIMOfIC(3899XIC /* ic */3900);39013902extern Bool XFilterEvent(3903XEvent* /* event */,3904Window /* window */3905);39063907extern int XmbLookupString(3908XIC /* ic */,3909XKeyPressedEvent* /* event */,3910char* /* buffer_return */,3911int /* bytes_buffer */,3912KeySym* /* keysym_return */,3913Status* /* status_return */3914);39153916extern int XwcLookupString(3917XIC /* ic */,3918XKeyPressedEvent* /* event */,3919wchar_t* /* buffer_return */,3920int /* wchars_buffer */,3921KeySym* /* keysym_return */,3922Status* /* status_return */3923);39243925extern int Xutf8LookupString(3926XIC /* ic */,3927XKeyPressedEvent* /* event */,3928char* /* buffer_return */,3929int /* bytes_buffer */,3930KeySym* /* keysym_return */,3931Status* /* status_return */3932);39333934extern XVaNestedList XVaCreateNestedList(3935int /*unused*/, ...3936) _X_SENTINEL(0);39373938/* internal connections for IMs */39393940extern Bool XRegisterIMInstantiateCallback(3941Display* /* dpy */,3942struct _XrmHashBucketRec* /* rdb */,3943char* /* res_name */,3944char* /* res_class */,3945XIDProc /* callback */,3946XPointer /* client_data */3947);39483949extern Bool XUnregisterIMInstantiateCallback(3950Display* /* dpy */,3951struct _XrmHashBucketRec* /* rdb */,3952char* /* res_name */,3953char* /* res_class */,3954XIDProc /* callback */,3955XPointer /* client_data */3956);39573958typedef void (*XConnectionWatchProc)(3959Display* /* dpy */,3960XPointer /* client_data */,3961int /* fd */,3962Bool /* opening */, /* open or close flag */3963XPointer* /* watch_data */ /* open sets, close uses */3964);396539663967extern Status XInternalConnectionNumbers(3968Display* /* dpy */,3969int** /* fd_return */,3970int* /* count_return */3971);39723973extern void XProcessInternalConnection(3974Display* /* dpy */,3975int /* fd */3976);39773978extern Status XAddConnectionWatch(3979Display* /* dpy */,3980XConnectionWatchProc /* callback */,3981XPointer /* client_data */3982);39833984extern void XRemoveConnectionWatch(3985Display* /* dpy */,3986XConnectionWatchProc /* callback */,3987XPointer /* client_data */3988);39893990extern void XSetAuthorization(3991char * /* name */,3992int /* namelen */,3993char * /* data */,3994int /* datalen */3995);39963997extern int _Xmbtowc(3998wchar_t * /* wstr */,3999char * /* str */,4000int /* len */4001);40024003extern int _Xwctomb(4004char * /* str */,4005wchar_t /* wc */4006);40074008extern Bool XGetEventData(4009Display* /* dpy */,4010XGenericEventCookie* /* cookie*/4011);40124013extern void XFreeEventData(4014Display* /* dpy */,4015XGenericEventCookie* /* cookie*/4016);40174018#ifdef __clang__4019#pragma clang diagnostic pop4020#endif40214022_XFUNCPROTOEND40234024#endif /* _X11_XLIB_H_ */402540264027