archie/tk4.2/xlib/X11/Xlib.h
2024-05-27 16:40:40 +02:00

4311 lines
100 KiB
C

/* $XConsortium: Xlib.h,v 11.221 93/07/02 14:13:28 gildea Exp $ */
/*
* Copyright 1985, 1986, 1987, 1991 by the Massachusetts Institute of Technology
*
* Permission to use, copy, modify, and distribute this software and its
* documentation for any purpose and without fee is hereby granted, provided
* that the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
* documentation, and that the name of M.I.T. not be used in advertising
* or publicity pertaining to distribution of the software without specific,
* written prior permission. M.I.T. makes no representations about the
* suitability of this software for any purpose. It is provided "as is"
* without express or implied warranty.
*
* X Window System is a Trademark of MIT.
*
*/
/*
* Xlib.h - Header definition and support file for the C subroutine
* interface library (Xlib) to the X Window System Protocol (V11).
* Structures and symbols starting with "_" are private to the library.
*/
#ifndef _XLIB_H_
#define _XLIB_H_
#define XlibSpecificationRelease 5
#ifdef MAC_TCL
# include <X.h>
# define Cursor XCursor
# define Region XRegion
#else
# include <X11/X.h>
#endif
/* applications should not depend on these two headers being included! */
#ifdef MAC_TCL
#include <Xfuncproto.h>
#else
#include <X11/Xfuncproto.h>
#endif
#ifndef X_WCHAR
#ifdef X_NOT_STDC_ENV
#define X_WCHAR
#endif
#endif
#ifndef X_WCHAR
#include <stddef.h>
#else
/* replace this with #include or typedef appropriate for your system */
typedef unsigned long wchar_t;
#endif
typedef char *XPointer;
#define Bool int
#define Status int
#define True 1
#define False 0
#define QueuedAlready 0
#define QueuedAfterReading 1
#define QueuedAfterFlush 2
#define ConnectionNumber(dpy) ((dpy)->fd)
#define RootWindow(dpy, scr) (((dpy)->screens[(scr)]).root)
#define DefaultScreen(dpy) ((dpy)->default_screen)
#define DefaultRootWindow(dpy) (((dpy)->screens[(dpy)->default_screen]).root)
#define DefaultVisual(dpy, scr) (((dpy)->screens[(scr)]).root_visual)
#define DefaultGC(dpy, scr) (((dpy)->screens[(scr)]).default_gc)
#define BlackPixel(dpy, scr) (((dpy)->screens[(scr)]).black_pixel)
#define WhitePixel(dpy, scr) (((dpy)->screens[(scr)]).white_pixel)
#define AllPlanes ((unsigned long)~0L)
#define QLength(dpy) ((dpy)->qlen)
#define DisplayWidth(dpy, scr) (((dpy)->screens[(scr)]).width)
#define DisplayHeight(dpy, scr) (((dpy)->screens[(scr)]).height)
#define DisplayWidthMM(dpy, scr)(((dpy)->screens[(scr)]).mwidth)
#define DisplayHeightMM(dpy, scr)(((dpy)->screens[(scr)]).mheight)
#define DisplayPlanes(dpy, scr) (((dpy)->screens[(scr)]).root_depth)
#define DisplayCells(dpy, scr) (DefaultVisual((dpy), (scr))->map_entries)
#define ScreenCount(dpy) ((dpy)->nscreens)
#define ServerVendor(dpy) ((dpy)->vendor)
#define ProtocolVersion(dpy) ((dpy)->proto_major_version)
#define ProtocolRevision(dpy) ((dpy)->proto_minor_version)
#define VendorRelease(dpy) ((dpy)->release)
#define DisplayString(dpy) ((dpy)->display_name)
#define DefaultDepth(dpy, scr) (((dpy)->screens[(scr)]).root_depth)
#define DefaultColormap(dpy, scr)(((dpy)->screens[(scr)]).cmap)
#define BitmapUnit(dpy) ((dpy)->bitmap_unit)
#define BitmapBitOrder(dpy) ((dpy)->bitmap_bit_order)
#define BitmapPad(dpy) ((dpy)->bitmap_pad)
#define ImageByteOrder(dpy) ((dpy)->byte_order)
#define NextRequest(dpy) ((dpy)->request + 1)
#define LastKnownRequestProcessed(dpy) ((dpy)->request)
/* macros for screen oriented applications (toolkit) */
#define ScreenOfDisplay(dpy, scr)(&((dpy)->screens[(scr)]))
#define DefaultScreenOfDisplay(dpy) (&((dpy)->screens[(dpy)->default_screen]))
#define DisplayOfScreen(s) ((s)->display)
#define RootWindowOfScreen(s) ((s)->root)
#define BlackPixelOfScreen(s) ((s)->black_pixel)
#define WhitePixelOfScreen(s) ((s)->white_pixel)
#define DefaultColormapOfScreen(s)((s)->cmap)
#define DefaultDepthOfScreen(s) ((s)->root_depth)
#define DefaultGCOfScreen(s) ((s)->default_gc)
#define DefaultVisualOfScreen(s)((s)->root_visual)
#define WidthOfScreen(s) ((s)->width)
#define HeightOfScreen(s) ((s)->height)
#define WidthMMOfScreen(s) ((s)->mwidth)
#define HeightMMOfScreen(s) ((s)->mheight)
#define PlanesOfScreen(s) ((s)->root_depth)
#define CellsOfScreen(s) (DefaultVisualOfScreen((s))->map_entries)
#define MinCmapsOfScreen(s) ((s)->min_maps)
#define MaxCmapsOfScreen(s) ((s)->max_maps)
#define DoesSaveUnders(s) ((s)->save_unders)
#define DoesBackingStore(s) ((s)->backing_store)
#define EventMaskOfScreen(s) ((s)->root_input_mask)
/*
* Extensions need a way to hang private data on some structures.
*/
typedef struct _XExtData {
int number; /* number returned by XRegisterExtension */
struct _XExtData *next; /* next item on list of data for structure */
int (*free_private)(); /* called to free private storage */
XPointer private_data; /* data private to this extension. */
} XExtData;
/*
* This file contains structures used by the extension mechanism.
*/
typedef struct { /* public to extension, cannot be changed */
int extension; /* extension number */
int major_opcode; /* major op-code assigned by server */
int first_event; /* first event number for the extension */
int first_error; /* first error number for the extension */
} XExtCodes;
/*
* Data structure for retrieving info about pixmap formats.
*/
typedef struct {
int depth;
int bits_per_pixel;
int scanline_pad;
} XPixmapFormatValues;
/*
* Data structure for setting graphics context.
*/
typedef struct {
int function; /* logical operation */
unsigned long plane_mask;/* plane mask */
unsigned long foreground;/* foreground pixel */
unsigned long background;/* background pixel */
int line_width; /* line width */
int line_style; /* LineSolid, LineOnOffDash, LineDoubleDash */
int cap_style; /* CapNotLast, CapButt,
CapRound, CapProjecting */
int join_style; /* JoinMiter, JoinRound, JoinBevel */
int fill_style; /* FillSolid, FillTiled,
FillStippled, FillOpaeueStippled */
int fill_rule; /* EvenOddRule, WindingRule */
int arc_mode; /* ArcChord, ArcPieSlice */
Pixmap tile; /* tile pixmap for tiling operations */
Pixmap stipple; /* stipple 1 plane pixmap for stipping */
int ts_x_origin; /* offset for tile or stipple operations */
int ts_y_origin;
Font font; /* default text font for text operations */
int subwindow_mode; /* ClipByChildren, IncludeInferiors */
Bool graphics_exposures;/* boolean, should exposures be generated */
int clip_x_origin; /* origin for clipping */
int clip_y_origin;
Pixmap clip_mask; /* bitmap clipping; other calls for rects */
int dash_offset; /* patterned/dashed line information */
char dashes;
} XGCValues;
/*
* Graphics context. The contents of this structure are implementation
* dependent. A GC should be treated as opaque by application code.
*/
typedef XGCValues *GC;
/*
* Visual structure; contains information about colormapping possible.
*/
typedef struct {
XExtData *ext_data; /* hook for extension to hang data */
VisualID visualid; /* visual id of this visual */
#if defined(__cplusplus) || defined(c_plusplus)
int c_class; /* C++ class of screen (monochrome, etc.) */
#else
int class; /* class of screen (monochrome, etc.) */
#endif
unsigned long red_mask, green_mask, blue_mask; /* mask values */
int bits_per_rgb; /* log base 2 of distinct color values */
int map_entries; /* color map entries */
} Visual;
/*
* Depth structure; contains information for each possible depth.
*/
typedef struct {
int depth; /* this depth (Z) of the depth */
int nvisuals; /* number of Visual types at this depth */
Visual *visuals; /* list of visuals possible at this depth */
} Depth;
/*
* Information about the screen. The contents of this structure are
* implementation dependent. A Screen should be treated as opaque
* by application code.
*/
typedef struct {
XExtData *ext_data; /* hook for extension to hang data */
struct _XDisplay *display;/* back pointer to display structure */
Window root; /* Root window id. */
int width, height; /* width and height of screen */
int mwidth, mheight; /* width and height of in millimeters */
int ndepths; /* number of depths possible */
Depth *depths; /* list of allowable depths on the screen */
int root_depth; /* bits per pixel */
Visual *root_visual; /* root visual */
GC default_gc; /* GC for the root root visual */
Colormap cmap; /* default color map */
unsigned long white_pixel;
unsigned long black_pixel; /* White and Black pixel values */
int max_maps, min_maps; /* max and min color maps */
int backing_store; /* Never, WhenMapped, Always */
Bool save_unders;
long root_input_mask; /* initial root input mask */
} Screen;
/*
* Format structure; describes ZFormat data the screen will understand.
*/
typedef struct {
XExtData *ext_data; /* hook for extension to hang data */
int depth; /* depth of this image format */
int bits_per_pixel; /* bits/pixel at this depth */
int scanline_pad; /* scanline must padded to this multiple */
} ScreenFormat;
/*
* Data structure for setting window attributes.
*/
typedef struct {
Pixmap background_pixmap; /* background or None or ParentRelative */
unsigned long background_pixel; /* background pixel */
Pixmap border_pixmap; /* border of the window */
unsigned long border_pixel; /* border pixel value */
int bit_gravity; /* one of bit gravity values */
int win_gravity; /* one of the window gravity values */
int backing_store; /* NotUseful, WhenMapped, Always */
unsigned long backing_planes;/* planes to be preseved if possible */
unsigned long backing_pixel;/* value to use in restoring planes */
Bool save_under; /* should bits under be saved? (popups) */
long event_mask; /* set of events that should be saved */
long do_not_propagate_mask; /* set of events that should not propagate */
Bool override_redirect; /* boolean value for override-redirect */
Colormap colormap; /* color map to be associated with window */
Cursor cursor; /* cursor to be displayed (or None) */
} XSetWindowAttributes;
typedef struct {
int x, y; /* location of window */
int width, height; /* width and height of window */
int border_width; /* border width of window */
int depth; /* depth of window */
Visual *visual; /* the associated visual structure */
Window root; /* root of screen containing window */
#if defined(__cplusplus) || defined(c_plusplus)
int c_class; /* C++ InputOutput, InputOnly*/
#else
int class; /* InputOutput, InputOnly*/
#endif
int bit_gravity; /* one of bit gravity values */
int win_gravity; /* one of the window gravity values */
int backing_store; /* NotUseful, WhenMapped, Always */
unsigned long backing_planes;/* planes to be preserved if possible */
unsigned long backing_pixel;/* value to be used when restoring planes */
Bool save_under; /* boolean, should bits under be saved? */
Colormap colormap; /* color map to be associated with window */
Bool map_installed; /* boolean, is color map currently installed*/
int map_state; /* IsUnmapped, IsUnviewable, IsViewable */
long all_event_masks; /* set of events all people have interest in*/
long your_event_mask; /* my event mask */
long do_not_propagate_mask; /* set of events that should not propagate */
Bool override_redirect; /* boolean value for override-redirect */
Screen *screen; /* back pointer to correct screen */
} XWindowAttributes;
/*
* Data structure for host setting; getting routines.
*
*/
typedef struct {
int family; /* for example FamilyInternet */
int length; /* length of address, in bytes */
char *address; /* pointer to where to find the bytes */
} XHostAddress;
/*
* Data structure for "image" data, used by image manipulation routines.
*/
typedef struct _XImage {
int width, height; /* size of image */
int xoffset; /* number of pixels offset in X direction */
int format; /* XYBitmap, XYPixmap, ZPixmap */
char *data; /* pointer to image data */
int byte_order; /* data byte order, LSBFirst, MSBFirst */
int bitmap_unit; /* quant. of scanline 8, 16, 32 */
int bitmap_bit_order; /* LSBFirst, MSBFirst */
int bitmap_pad; /* 8, 16, 32 either XY or ZPixmap */
int depth; /* depth of image */
int bytes_per_line; /* accelarator to next line */
int bits_per_pixel; /* bits per pixel (ZPixmap) */
unsigned long red_mask; /* bits in z arrangment */
unsigned long green_mask;
unsigned long blue_mask;
XPointer obdata; /* hook for the object routines to hang on */
struct funcs { /* image manipulation routines */
struct _XImage *(*create_image)();
#if NeedFunctionPrototypes
int (*destroy_image) (struct _XImage *);
unsigned long (*get_pixel) (struct _XImage *, int, int);
int (*put_pixel) (struct _XImage *, int, int, unsigned long);
struct _XImage *(*sub_image)(struct _XImage *, int, int, unsigned int, unsigned int);
int (*add_pixel) (struct _XImage *, long);
#else
int (*destroy_image)();
unsigned long (*get_pixel)();
int (*put_pixel)();
struct _XImage *(*sub_image)();
int (*add_pixel)();
#endif
} f;
} XImage;
/*
* Data structure for XReconfigureWindow
*/
typedef struct {
int x, y;
int width, height;
int border_width;
Window sibling;
int stack_mode;
} XWindowChanges;
/*
* Data structure used by color operations
*/
typedef struct {
unsigned long pixel;
unsigned short red, green, blue;
char flags; /* do_red, do_green, do_blue */
char pad;
} XColor;
/*
* Data structures for graphics operations. On most machines, these are
* congruent with the wire protocol structures, so reformatting the data
* can be avoided on these architectures.
*/
typedef struct {
short x1, y1, x2, y2;
} XSegment;
typedef struct {
short x, y;
} XPoint;
typedef struct {
short x, y;
unsigned short width, height;
} XRectangle;
typedef struct {
short x, y;
unsigned short width, height;
short angle1, angle2;
} XArc;
/* Data structure for XChangeKeyboardControl */
typedef struct {
int key_click_percent;
int bell_percent;
int bell_pitch;
int bell_duration;
int led;
int led_mode;
int key;
int auto_repeat_mode; /* On, Off, Default */
} XKeyboardControl;
/* Data structure for XGetKeyboardControl */
typedef struct {
int key_click_percent;
int bell_percent;
unsigned int bell_pitch, bell_duration;
unsigned long led_mask;
int global_auto_repeat;
char auto_repeats[32];
} XKeyboardState;
/* Data structure for XGetMotionEvents. */
typedef struct {
Time time;
short x, y;
} XTimeCoord;
/* Data structure for X{Set,Get}ModifierMapping */
typedef struct {
int max_keypermod; /* The server's max # of keys per modifier */
KeyCode *modifiermap; /* An 8 by max_keypermod array of modifiers */
} XModifierKeymap;
/*
* Display datatype maintaining display specific data.
* The contents of this structure are implementation dependent.
* A Display should be treated as opaque by application code.
*/
typedef struct _XDisplay {
XExtData *ext_data; /* hook for extension to hang data */
struct _XFreeFuncs *free_funcs; /* internal free functions */
int fd; /* Network socket. */
int conn_checker; /* ugly thing used by _XEventsQueued */
int proto_major_version;/* maj. version of server's X protocol */
int proto_minor_version;/* minor version of servers X protocol */
char *vendor; /* vendor of the server hardware */
XID resource_base; /* resource ID base */
XID resource_mask; /* resource ID mask bits */
XID resource_id; /* allocator current ID */
int resource_shift; /* allocator shift to correct bits */
XID (*resource_alloc)(); /* allocator function */
int byte_order; /* screen byte order, LSBFirst, MSBFirst */
int bitmap_unit; /* padding and data requirements */
int bitmap_pad; /* padding requirements on bitmaps */
int bitmap_bit_order; /* LeastSignificant or MostSignificant */
int nformats; /* number of pixmap formats in list */
ScreenFormat *pixmap_format; /* pixmap format list */
int vnumber; /* Xlib's X protocol version number. */
int release; /* release of the server */
struct _XSQEvent *head, *tail; /* Input event queue. */
int qlen; /* Length of input event queue */
unsigned long request; /* sequence number of last request. */
char *last_req; /* beginning of last request, or dummy */
char *buffer; /* Output buffer starting address. */
char *bufptr; /* Output buffer index pointer. */
char *bufmax; /* Output buffer maximum+1 address. */
unsigned max_request_size; /* maximum number 32 bit words in request*/
struct _XrmHashBucketRec *db;
int (*synchandler)(); /* Synchronization handler */
char *display_name; /* "host:display" string used on this connect*/
int default_screen; /* default screen for operations */
int nscreens; /* number of screens on this server*/
Screen *screens; /* pointer to list of screens */
unsigned long motion_buffer; /* size of motion buffer */
unsigned long flags; /* internal connection flags */
int min_keycode; /* minimum defined keycode */
int max_keycode; /* maximum defined keycode */
KeySym *keysyms; /* This server's keysyms */
XModifierKeymap *modifiermap; /* This server's modifier keymap */
int keysyms_per_keycode;/* number of rows */
char *xdefaults; /* contents of defaults from server */
char *scratch_buffer; /* place to hang scratch buffer */
unsigned long scratch_length; /* length of scratch buffer */
int ext_number; /* extension number on this display */
struct _XExten *ext_procs; /* extensions initialized on this display */
/*
* the following can be fixed size, as the protocol defines how
* much address space is available.
* While this could be done using the extension vector, there
* may be MANY events processed, so a search through the extension
* list to find the right procedure for each event might be
* expensive if many extensions are being used.
*/
Bool (*event_vec[128])(); /* vector for wire to event */
Status (*wire_vec[128])(); /* vector for event to wire */
KeySym lock_meaning; /* for XLookupString */
struct _XLockInfo *lock; /* multi-thread state, display lock */
struct _XInternalAsync *async_handlers; /* for internal async */
unsigned long bigreq_size; /* max size of big requests */
struct _XLockPtrs *lock_fns; /* pointers to threads functions */
/* things above this line should not move, for binary compatibility */
struct _XKeytrans *key_bindings; /* for XLookupString */
Font cursor_font; /* for XCreateFontCursor */
struct _XDisplayAtoms *atoms; /* for XInternAtom */
unsigned int mode_switch; /* keyboard group modifiers */
struct _XContextDB *context_db; /* context database */
Bool (**error_vec)(); /* vector for wire to error */
/*
* Xcms information
*/
struct {
XPointer defaultCCCs; /* pointer to an array of default XcmsCCC */
XPointer clientCmaps; /* pointer to linked list of XcmsCmapRec */
XPointer perVisualIntensityMaps;
/* linked list of XcmsIntensityMap */
} cms;
struct _XIMFilter *im_filters;
struct _XSQEvent *qfree; /* unallocated event queue elements */
unsigned long next_event_serial_num; /* inserted into next queue elt */
int (*savedsynchandler)(); /* user synchandler when Xlib usurps */
} Display;
#if NeedFunctionPrototypes /* prototypes require event type definitions */
#undef _XEVENT_
#endif
#ifndef _XEVENT_
#define XMaxTransChars 4
/*
* Definitions of specific events.
*/
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* "event" window it is reported relative to */
Window root; /* root window that the event occured on */
Window subwindow; /* child window */
Time time; /* milliseconds */
int x, y; /* pointer x, y coordinates in event window */
int x_root, y_root; /* coordinates relative to root */
unsigned int state; /* key or button mask */
unsigned int keycode; /* detail */
Bool same_screen; /* same screen flag */
char trans_chars[XMaxTransChars];
/* translated characters */
int nchars;
} XKeyEvent;
typedef XKeyEvent XKeyPressedEvent;
typedef XKeyEvent XKeyReleasedEvent;
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* "event" window it is reported relative to */
Window root; /* root window that the event occured on */
Window subwindow; /* child window */
Time time; /* milliseconds */
int x, y; /* pointer x, y coordinates in event window */
int x_root, y_root; /* coordinates relative to root */
unsigned int state; /* key or button mask */
unsigned int button; /* detail */
Bool same_screen; /* same screen flag */
} XButtonEvent;
typedef XButtonEvent XButtonPressedEvent;
typedef XButtonEvent XButtonReleasedEvent;
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* "event" window reported relative to */
Window root; /* root window that the event occured on */
Window subwindow; /* child window */
Time time; /* milliseconds */
int x, y; /* pointer x, y coordinates in event window */
int x_root, y_root; /* coordinates relative to root */
unsigned int state; /* key or button mask */
char is_hint; /* detail */
Bool same_screen; /* same screen flag */
} XMotionEvent;
typedef XMotionEvent XPointerMovedEvent;
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* "event" window reported relative to */
Window root; /* root window that the event occured on */
Window subwindow; /* child window */
Time time; /* milliseconds */
int x, y; /* pointer x, y coordinates in event window */
int x_root, y_root; /* coordinates relative to root */
int mode; /* NotifyNormal, NotifyGrab, NotifyUngrab */
int detail;
/*
* NotifyAncestor, NotifyVirtual, NotifyInferior,
* NotifyNonlinear,NotifyNonlinearVirtual
*/
Bool same_screen; /* same screen flag */
Bool focus; /* boolean focus */
unsigned int state; /* key or button mask */
} XCrossingEvent;
typedef XCrossingEvent XEnterWindowEvent;
typedef XCrossingEvent XLeaveWindowEvent;
typedef struct {
int type; /* FocusIn or FocusOut */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* window of event */
int mode; /* NotifyNormal, NotifyGrab, NotifyUngrab */
int detail;
/*
* NotifyAncestor, NotifyVirtual, NotifyInferior,
* NotifyNonlinear,NotifyNonlinearVirtual, NotifyPointer,
* NotifyPointerRoot, NotifyDetailNone
*/
} XFocusChangeEvent;
typedef XFocusChangeEvent XFocusInEvent;
typedef XFocusChangeEvent XFocusOutEvent;
/* generated on EnterWindow and FocusIn when KeyMapState selected */
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
char key_vector[32];
} XKeymapEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
int x, y;
int width, height;
int count; /* if non-zero, at least this many more */
} XExposeEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Drawable drawable;
int x, y;
int width, height;
int count; /* if non-zero, at least this many more */
int major_code; /* core is CopyArea or CopyPlane */
int minor_code; /* not defined in the core */
} XGraphicsExposeEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Drawable drawable;
int major_code; /* core is CopyArea or CopyPlane */
int minor_code; /* not defined in the core */
} XNoExposeEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
int state; /* Visibility state */
} XVisibilityEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window parent; /* parent of the window */
Window window; /* window id of window created */
int x, y; /* window location */
int width, height; /* size of window */
int border_width; /* border width */
Bool override_redirect; /* creation should be overridden */
} XCreateWindowEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
} XDestroyWindowEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
Bool from_configure;
} XUnmapEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
Bool override_redirect; /* boolean, is override set... */
} XMapEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window parent;
Window window;
} XMapRequestEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
Window parent;
int x, y;
Bool override_redirect;
} XReparentEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
int x, y;
int width, height;
int border_width;
Window above;
Bool override_redirect;
} XConfigureEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
int x, y;
} XGravityEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
int width, height;
} XResizeRequestEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window parent;
Window window;
int x, y;
int width, height;
int border_width;
Window above;
int detail; /* Above, Below, TopIf, BottomIf, Opposite */
unsigned long value_mask;
} XConfigureRequestEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
int place; /* PlaceOnTop, PlaceOnBottom */
} XCirculateEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window parent;
Window window;
int place; /* PlaceOnTop, PlaceOnBottom */
} XCirculateRequestEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
Atom atom;
Time time;
int state; /* NewValue, Deleted */
} XPropertyEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
Atom selection;
Time time;
} XSelectionClearEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window owner;
Window requestor;
Atom selection;
Atom target;
Atom property;
Time time;
} XSelectionRequestEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window requestor;
Atom selection;
Atom target;
Atom property; /* ATOM or None */
Time time;
} XSelectionEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
Colormap colormap; /* COLORMAP or None */
#if defined(__cplusplus) || defined(c_plusplus)
Bool c_new; /* C++ */
#else
Bool new;
#endif
int state; /* ColormapInstalled, ColormapUninstalled */
} XColormapEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
Atom message_type;
int format;
union {
char b[20];
short s[10];
long l[5];
} data;
} XClientMessageEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* unused */
int request; /* one of MappingModifier, MappingKeyboard,
MappingPointer */
int first_keycode; /* first keycode */
int count; /* defines range of change w. first_keycode*/
} XMappingEvent;
typedef struct {
int type;
Display *display; /* Display the event was read from */
XID resourceid; /* resource id */
unsigned long serial; /* serial number of failed request */
unsigned char error_code; /* error code of failed request */
unsigned char request_code; /* Major op-code of failed request */
unsigned char minor_code; /* Minor op-code of failed request */
} XErrorEvent;
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display;/* Display the event was read from */
Window window; /* window on which event was requested in event mask */
} XAnyEvent;
/*
* this union is defined so Xlib can always use the same sized
* event structure internally, to avoid memory fragmentation.
*/
typedef union _XEvent {
int type; /* must not be changed; first element */
XAnyEvent xany;
XKeyEvent xkey;
XButtonEvent xbutton;
XMotionEvent xmotion;
XCrossingEvent xcrossing;
XFocusChangeEvent xfocus;
XExposeEvent xexpose;
XGraphicsExposeEvent xgraphicsexpose;
XNoExposeEvent xnoexpose;
XVisibilityEvent xvisibility;
XCreateWindowEvent xcreatewindow;
XDestroyWindowEvent xdestroywindow;
XUnmapEvent xunmap;
XMapEvent xmap;
XMapRequestEvent xmaprequest;
XReparentEvent xreparent;
XConfigureEvent xconfigure;
XGravityEvent xgravity;
XResizeRequestEvent xresizerequest;
XConfigureRequestEvent xconfigurerequest;
XCirculateEvent xcirculate;
XCirculateRequestEvent xcirculaterequest;
XPropertyEvent xproperty;
XSelectionClearEvent xselectionclear;
XSelectionRequestEvent xselectionrequest;
XSelectionEvent xselection;
XColormapEvent xcolormap;
XClientMessageEvent xclient;
XMappingEvent xmapping;
XErrorEvent xerror;
XKeymapEvent xkeymap;
long pad[24];
} XEvent;
#endif
#define XAllocID(dpy) ((*(dpy)->resource_alloc)((dpy)))
/*
* per character font metric information.
*/
typedef struct {
short lbearing; /* origin to left edge of raster */
short rbearing; /* origin to right edge of raster */
short width; /* advance to next char's origin */
short ascent; /* baseline to top edge of raster */
short descent; /* baseline to bottom edge of raster */
unsigned short attributes; /* per char flags (not predefined) */
} XCharStruct;
/*
* To allow arbitrary information with fonts, there are additional properties
* returned.
*/
typedef struct {
Atom name;
unsigned long card32;
} XFontProp;
typedef struct {
XExtData *ext_data; /* hook for extension to hang data */
Font fid; /* Font id for this font */
unsigned direction; /* hint about direction the font is painted */
unsigned min_char_or_byte2;/* first character */
unsigned max_char_or_byte2;/* last character */
unsigned min_byte1; /* first row that exists */
unsigned max_byte1; /* last row that exists */
Bool all_chars_exist;/* flag if all characters have non-zero size*/
unsigned default_char; /* char to print for undefined character */
int n_properties; /* how many properties there are */
XFontProp *properties; /* pointer to array of additional properties*/
XCharStruct min_bounds; /* minimum bounds over all existing char*/
XCharStruct max_bounds; /* maximum bounds over all existing char*/
XCharStruct *per_char; /* first_char to last_char information */
int ascent; /* log. extent above baseline for spacing */
int descent; /* log. descent below baseline for spacing */
} XFontStruct;
/*
* PolyText routines take these as arguments.
*/
typedef struct {
char *chars; /* pointer to string */
int nchars; /* number of characters */
int delta; /* delta between strings */
Font font; /* font to print it in, None don't change */
} XTextItem;
typedef struct { /* normal 16 bit characters are two bytes */
unsigned char byte1;
unsigned char byte2;
} XChar2b;
typedef struct {
XChar2b *chars; /* two byte characters */
int nchars; /* number of characters */
int delta; /* delta between strings */
Font font; /* font to print it in, None don't change */
} XTextItem16;
typedef union { Display *display;
GC gc;
Visual *visual;
Screen *screen;
ScreenFormat *pixmap_format;
XFontStruct *font; } XEDataObject;
typedef struct {
XRectangle max_ink_extent;
XRectangle max_logical_extent;
} XFontSetExtents;
typedef struct _XFontSet *XFontSet;
typedef struct {
char *chars;
int nchars;
int delta;
XFontSet font_set;
} XmbTextItem;
typedef struct {
wchar_t *chars;
int nchars;
int delta;
XFontSet font_set;
} XwcTextItem;
typedef void (*XIMProc)();
typedef struct _XIM *XIM;
typedef struct _XIC *XIC;
typedef unsigned long XIMStyle;
typedef struct {
unsigned short count_styles;
XIMStyle *supported_styles;
} XIMStyles;
#define XIMPreeditArea 0x0001L
#define XIMPreeditCallbacks 0x0002L
#define XIMPreeditPosition 0x0004L
#define XIMPreeditNothing 0x0008L
#define XIMPreeditNone 0x0010L
#define XIMStatusArea 0x0100L
#define XIMStatusCallbacks 0x0200L
#define XIMStatusNothing 0x0400L
#define XIMStatusNone 0x0800L
#define XNVaNestedList "XNVaNestedList"
#define XNClientWindow "clientWindow"
#define XNInputStyle "inputStyle"
#define XNFocusWindow "focusWindow"
#define XNResourceName "resourceName"
#define XNResourceClass "resourceClass"
#define XNGeometryCallback "geometryCallback"
#define XNFilterEvents "filterEvents"
#define XNPreeditStartCallback "preeditStartCallback"
#define XNPreeditDoneCallback "preeditDoneCallback"
#define XNPreeditDrawCallback "preeditDrawCallback"
#define XNPreeditCaretCallback "preeditCaretCallback"
#define XNPreeditAttributes "preeditAttributes"
#define XNStatusStartCallback "statusStartCallback"
#define XNStatusDoneCallback "statusDoneCallback"
#define XNStatusDrawCallback "statusDrawCallback"
#define XNStatusAttributes "statusAttributes"
#define XNArea "area"
#define XNAreaNeeded "areaNeeded"
#define XNSpotLocation "spotLocation"
#define XNColormap "colorMap"
#define XNStdColormap "stdColorMap"
#define XNForeground "foreground"
#define XNBackground "background"
#define XNBackgroundPixmap "backgroundPixmap"
#define XNFontSet "fontSet"
#define XNLineSpace "lineSpace"
#define XNCursor "cursor"
#define XBufferOverflow -1
#define XLookupNone 1
#define XLookupChars 2
#define XLookupKeySym 3
#define XLookupBoth 4
#if NeedFunctionPrototypes
typedef void *XVaNestedList;
#else
typedef XPointer XVaNestedList;
#endif
typedef struct {
XPointer client_data;
XIMProc callback;
} XIMCallback;
typedef unsigned long XIMFeedback;
#define XIMReverse 1
#define XIMUnderline (1<<1)
#define XIMHighlight (1<<2)
#define XIMPrimary (1<<5)
#define XIMSecondary (1<<6)
#define XIMTertiary (1<<7)
typedef struct _XIMText {
unsigned short length;
XIMFeedback *feedback;
Bool encoding_is_wchar;
union {
char *multi_byte;
wchar_t *wide_char;
} string;
} XIMText;
typedef struct _XIMPreeditDrawCallbackStruct {
int caret; /* Cursor offset within pre-edit string */
int chg_first; /* Starting change position */
int chg_length; /* Length of the change in character count */
XIMText *text;
} XIMPreeditDrawCallbackStruct;
typedef enum {
XIMForwardChar, XIMBackwardChar,
XIMForwardWord, XIMBackwardWord,
XIMCaretUp, XIMCaretDown,
XIMNextLine, XIMPreviousLine,
XIMLineStart, XIMLineEnd,
XIMAbsolutePosition,
XIMDontChange
} XIMCaretDirection;
typedef enum {
XIMIsInvisible, /* Disable caret feedback */
XIMIsPrimary, /* UI defined caret feedback */
XIMIsSecondary /* UI defined caret feedback */
} XIMCaretStyle;
typedef struct _XIMPreeditCaretCallbackStruct {
int position; /* Caret offset within pre-edit string */
XIMCaretDirection direction; /* Caret moves direction */
XIMCaretStyle style; /* Feedback of the caret */
} XIMPreeditCaretCallbackStruct;
typedef enum {
XIMTextType,
XIMBitmapType
} XIMStatusDataType;
typedef struct _XIMStatusDrawCallbackStruct {
XIMStatusDataType type;
union {
XIMText *text;
Pixmap bitmap;
} data;
} XIMStatusDrawCallbackStruct;
_XFUNCPROTOBEGIN
extern XFontStruct *XLoadQueryFont(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* name */
#endif
);
extern XFontStruct *XQueryFont(
#if NeedFunctionPrototypes
Display* /* display */,
XID /* font_ID */
#endif
);
extern XTimeCoord *XGetMotionEvents(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Time /* start */,
Time /* stop */,
int* /* nevents_return */
#endif
);
extern XModifierKeymap *XDeleteModifiermapEntry(
#if NeedFunctionPrototypes
XModifierKeymap* /* modmap */,
#if NeedWidePrototypes
unsigned int /* keycode_entry */,
#else
KeyCode /* keycode_entry */,
#endif
int /* modifier */
#endif
);
extern XModifierKeymap *XGetModifierMapping(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern XModifierKeymap *XInsertModifiermapEntry(
#if NeedFunctionPrototypes
XModifierKeymap* /* modmap */,
#if NeedWidePrototypes
unsigned int /* keycode_entry */,
#else
KeyCode /* keycode_entry */,
#endif
int /* modifier */
#endif
);
extern XModifierKeymap *XNewModifiermap(
#if NeedFunctionPrototypes
int /* max_keys_per_mod */
#endif
);
extern XImage *XCreateImage(
#if NeedFunctionPrototypes
Display* /* display */,
Visual* /* visual */,
unsigned int /* depth */,
int /* format */,
int /* offset */,
char* /* data */,
unsigned int /* width */,
unsigned int /* height */,
int /* bitmap_pad */,
int /* bytes_per_line */
#endif
);
extern XImage *XGetImage(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
int /* x */,
int /* y */,
unsigned int /* width */,
unsigned int /* height */,
unsigned long /* plane_mask */,
int /* format */
#endif
);
extern XImage *XGetSubImage(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
int /* x */,
int /* y */,
unsigned int /* width */,
unsigned int /* height */,
unsigned long /* plane_mask */,
int /* format */,
XImage* /* dest_image */,
int /* dest_x */,
int /* dest_y */
#endif
);
/*
* X function declarations.
*/
extern Display *XOpenDisplay(
#if NeedFunctionPrototypes
_Xconst char* /* display_name */
#endif
);
extern void XrmInitialize(
#if NeedFunctionPrototypes
void
#endif
);
extern char *XFetchBytes(
#if NeedFunctionPrototypes
Display* /* display */,
int* /* nbytes_return */
#endif
);
extern char *XFetchBuffer(
#if NeedFunctionPrototypes
Display* /* display */,
int* /* nbytes_return */,
int /* buffer */
#endif
);
extern char *XGetAtomName(
#if NeedFunctionPrototypes
Display* /* display */,
Atom /* atom */
#endif
);
extern char *XGetDefault(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* program */,
_Xconst char* /* option */
#endif
);
extern char *XDisplayName(
#if NeedFunctionPrototypes
_Xconst char* /* string */
#endif
);
extern char *XKeysymToString(
#if NeedFunctionPrototypes
KeySym /* keysym */
#endif
);
extern int (*XSynchronize(
#if NeedFunctionPrototypes
Display* /* display */,
Bool /* onoff */
#endif
))();
extern int (*XSetAfterFunction(
#if NeedFunctionPrototypes
Display* /* display */,
int (*) (
#if NeedNestedPrototypes
Display* /* display */
#endif
) /* procedure */
#endif
))();
extern Atom XInternAtom(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* atom_name */,
Bool /* only_if_exists */
#endif
);
extern Colormap XCopyColormapAndFree(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */
#endif
);
extern Colormap XCreateColormap(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Visual* /* visual */,
int /* alloc */
#endif
);
extern Cursor XCreatePixmapCursor(
#if NeedFunctionPrototypes
Display* /* display */,
Pixmap /* source */,
Pixmap /* mask */,
XColor* /* foreground_color */,
XColor* /* background_color */,
unsigned int /* x */,
unsigned int /* y */
#endif
);
extern Cursor XCreateGlyphCursor(
#if NeedFunctionPrototypes
Display* /* display */,
Font /* source_font */,
Font /* mask_font */,
unsigned int /* source_char */,
unsigned int /* mask_char */,
XColor* /* foreground_color */,
XColor* /* background_color */
#endif
);
extern Cursor XCreateFontCursor(
#if NeedFunctionPrototypes
Display* /* display */,
unsigned int /* shape */
#endif
);
extern Font XLoadFont(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* name */
#endif
);
extern GC XCreateGC(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
unsigned long /* valuemask */,
XGCValues* /* values */
#endif
);
extern GContext XGContextFromGC(
#if NeedFunctionPrototypes
GC /* gc */
#endif
);
extern void XFlushGC(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */
#endif
);
extern Pixmap XCreatePixmap(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
unsigned int /* width */,
unsigned int /* height */,
unsigned int /* depth */
#endif
);
extern Pixmap XCreateBitmapFromData(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
_Xconst char* /* data */,
unsigned int /* width */,
unsigned int /* height */
#endif
);
extern Pixmap XCreatePixmapFromBitmapData(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
char* /* data */,
unsigned int /* width */,
unsigned int /* height */,
unsigned long /* fg */,
unsigned long /* bg */,
unsigned int /* depth */
#endif
);
extern Window XCreateSimpleWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* parent */,
int /* x */,
int /* y */,
unsigned int /* width */,
unsigned int /* height */,
unsigned int /* border_width */,
unsigned long /* border */,
unsigned long /* background */
#endif
);
extern Window XGetSelectionOwner(
#if NeedFunctionPrototypes
Display* /* display */,
Atom /* selection */
#endif
);
extern Window XCreateWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* parent */,
int /* x */,
int /* y */,
unsigned int /* width */,
unsigned int /* height */,
unsigned int /* border_width */,
int /* depth */,
unsigned int /* class */,
Visual* /* visual */,
unsigned long /* valuemask */,
XSetWindowAttributes* /* attributes */
#endif
);
extern Colormap *XListInstalledColormaps(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
int* /* num_return */
#endif
);
extern char **XListFonts(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* pattern */,
int /* maxnames */,
int* /* actual_count_return */
#endif
);
extern char **XListFontsWithInfo(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* pattern */,
int /* maxnames */,
int* /* count_return */,
XFontStruct** /* info_return */
#endif
);
extern char **XGetFontPath(
#if NeedFunctionPrototypes
Display* /* display */,
int* /* npaths_return */
#endif
);
extern char **XListExtensions(
#if NeedFunctionPrototypes
Display* /* display */,
int* /* nextensions_return */
#endif
);
extern Atom *XListProperties(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
int* /* num_prop_return */
#endif
);
extern XHostAddress *XListHosts(
#if NeedFunctionPrototypes
Display* /* display */,
int* /* nhosts_return */,
Bool* /* state_return */
#endif
);
extern KeySym XKeycodeToKeysym(
#if NeedFunctionPrototypes
Display* /* display */,
#if NeedWidePrototypes
unsigned int /* keycode */,
#else
KeyCode /* keycode */,
#endif
int /* index */
#endif
);
extern KeySym XLookupKeysym(
#if NeedFunctionPrototypes
XKeyEvent* /* key_event */,
int /* index */
#endif
);
extern KeySym *XGetKeyboardMapping(
#if NeedFunctionPrototypes
Display* /* display */,
#if NeedWidePrototypes
unsigned int /* first_keycode */,
#else
KeyCode /* first_keycode */,
#endif
int /* keycode_count */,
int* /* keysyms_per_keycode_return */
#endif
);
extern KeySym XStringToKeysym(
#if NeedFunctionPrototypes
_Xconst char* /* string */
#endif
);
extern long XMaxRequestSize(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern long XExtendedMaxRequestSize(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern char *XResourceManagerString(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern char *XScreenResourceString(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern unsigned long XDisplayMotionBufferSize(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern VisualID XVisualIDFromVisual(
#if NeedFunctionPrototypes
Visual* /* visual */
#endif
);
/* routines for dealing with extensions */
extern XExtCodes *XInitExtension(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* name */
#endif
);
extern XExtCodes *XAddExtension(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern XExtData *XFindOnExtensionList(
#if NeedFunctionPrototypes
XExtData** /* structure */,
int /* number */
#endif
);
extern XExtData **XEHeadOfExtensionList(
#if NeedFunctionPrototypes
XEDataObject /* object */
#endif
);
/* these are routines for which there are also macros */
extern Window XRootWindow(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern Window XDefaultRootWindow(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern Window XRootWindowOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern Visual *XDefaultVisual(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern Visual *XDefaultVisualOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern GC XDefaultGC(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern GC XDefaultGCOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern unsigned long XBlackPixel(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern unsigned long XWhitePixel(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern unsigned long XAllPlanes(
#if NeedFunctionPrototypes
void
#endif
);
extern unsigned long XBlackPixelOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern unsigned long XWhitePixelOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern unsigned long XNextRequest(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern unsigned long XLastKnownRequestProcessed(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern char *XServerVendor(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern char *XDisplayString(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern Colormap XDefaultColormap(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern Colormap XDefaultColormapOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern Display *XDisplayOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern Screen *XScreenOfDisplay(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern Screen *XDefaultScreenOfDisplay(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern long XEventMaskOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern int XScreenNumberOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
typedef int (*XErrorHandler) ( /* WARNING, this type not in Xlib spec */
#if NeedFunctionPrototypes
Display* /* display */,
XErrorEvent* /* error_event */
#endif
);
extern XErrorHandler XSetErrorHandler (
#if NeedFunctionPrototypes
XErrorHandler /* handler */
#endif
);
typedef int (*XIOErrorHandler) ( /* WARNING, this type not in Xlib spec */
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern XIOErrorHandler XSetIOErrorHandler (
#if NeedFunctionPrototypes
XIOErrorHandler /* handler */
#endif
);
extern XPixmapFormatValues *XListPixmapFormats(
#if NeedFunctionPrototypes
Display* /* display */,
int* /* count_return */
#endif
);
extern int *XListDepths(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */,
int* /* count_return */
#endif
);
/* ICCCM routines for things that don't require special include files; */
/* other declarations are given in Xutil.h */
extern Status XReconfigureWMWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
int /* screen_number */,
unsigned int /* mask */,
XWindowChanges* /* changes */
#endif
);
extern Status XGetWMProtocols(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Atom** /* protocols_return */,
int* /* count_return */
#endif
);
extern Status XSetWMProtocols(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Atom* /* protocols */,
int /* count */
#endif
);
extern Status XIconifyWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
int /* screen_number */
#endif
);
extern Status XWithdrawWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
int /* screen_number */
#endif
);
extern Status XGetCommand(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
char*** /* argv_return */,
int* /* argc_return */
#endif
);
extern Status XGetWMColormapWindows(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Window** /* windows_return */,
int* /* count_return */
#endif
);
extern Status XSetWMColormapWindows(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Window* /* colormap_windows */,
int /* count */
#endif
);
extern void XFreeStringList(
#if NeedFunctionPrototypes
char** /* list */
#endif
);
extern void XSetTransientForHint(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Window /* prop_window */
#endif
);
/* The following are given in alphabetical order */
extern void XActivateScreenSaver(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XAddHost(
#if NeedFunctionPrototypes
Display* /* display */,
XHostAddress* /* host */
#endif
);
extern void XAddHosts(
#if NeedFunctionPrototypes
Display* /* display */,
XHostAddress* /* hosts */,
int /* num_hosts */
#endif
);
extern void XAddToExtensionList(
#if NeedFunctionPrototypes
struct _XExtData** /* structure */,
XExtData* /* ext_data */
#endif
);
extern void XAddToSaveSet(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern Status XAllocColor(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
XColor* /* screen_in_out */
#endif
);
extern Status XAllocColorCells(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
Bool /* contig */,
unsigned long* /* plane_masks_return */,
unsigned int /* nplanes */,
unsigned long* /* pixels_return */,
unsigned int /* npixels */
#endif
);
extern Status XAllocColorPlanes(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
Bool /* contig */,
unsigned long* /* pixels_return */,
int /* ncolors */,
int /* nreds */,
int /* ngreens */,
int /* nblues */,
unsigned long* /* rmask_return */,
unsigned long* /* gmask_return */,
unsigned long* /* bmask_return */
#endif
);
extern Status XAllocNamedColor(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
_Xconst char* /* color_name */,
XColor* /* screen_def_return */,
XColor* /* exact_def_return */
#endif
);
extern void XAllowEvents(
#if NeedFunctionPrototypes
Display* /* display */,
int /* event_mode */,
Time /* time */
#endif
);
extern void XAutoRepeatOff(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XAutoRepeatOn(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XBell(
#if NeedFunctionPrototypes
Display* /* display */,
int /* percent */
#endif
);
extern int XBitmapBitOrder(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern int XBitmapPad(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern int XBitmapUnit(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern int XCellsOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern void XChangeActivePointerGrab(
#if NeedFunctionPrototypes
Display* /* display */,
unsigned int /* event_mask */,
Cursor /* cursor */,
Time /* time */
#endif
);
extern void XChangeGC(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
unsigned long /* valuemask */,
XGCValues* /* values */
#endif
);
extern void XChangeKeyboardControl(
#if NeedFunctionPrototypes
Display* /* display */,
unsigned long /* value_mask */,
XKeyboardControl* /* values */
#endif
);
extern void XChangeKeyboardMapping(
#if NeedFunctionPrototypes
Display* /* display */,
int /* first_keycode */,
int /* keysyms_per_keycode */,
KeySym* /* keysyms */,
int /* num_codes */
#endif
);
extern void XChangePointerControl(
#if NeedFunctionPrototypes
Display* /* display */,
Bool /* do_accel */,
Bool /* do_threshold */,
int /* accel_numerator */,
int /* accel_denominator */,
int /* threshold */
#endif
);
extern void XChangeProperty(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Atom /* property */,
Atom /* type */,
int /* format */,
int /* mode */,
_Xconst unsigned char* /* data */,
int /* nelements */
#endif
);
extern void XChangeSaveSet(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
int /* change_mode */
#endif
);
extern void XChangeWindowAttributes(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
unsigned long /* valuemask */,
XSetWindowAttributes* /* attributes */
#endif
);
extern Bool XCheckIfEvent(
#if NeedFunctionPrototypes
Display* /* display */,
XEvent* /* event_return */,
Bool (*) (
#if NeedNestedPrototypes
Display* /* display */,
XEvent* /* event */,
XPointer /* arg */
#endif
) /* predicate */,
XPointer /* arg */
#endif
);
extern Bool XCheckMaskEvent(
#if NeedFunctionPrototypes
Display* /* display */,
long /* event_mask */,
XEvent* /* event_return */
#endif
);
extern Bool XCheckTypedEvent(
#if NeedFunctionPrototypes
Display* /* display */,
int /* event_type */,
XEvent* /* event_return */
#endif
);
extern Bool XCheckTypedWindowEvent(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
int /* event_type */,
XEvent* /* event_return */
#endif
);
extern Bool XCheckWindowEvent(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
long /* event_mask */,
XEvent* /* event_return */
#endif
);
extern void XCirculateSubwindows(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
int /* direction */
#endif
);
extern void XCirculateSubwindowsDown(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern void XCirculateSubwindowsUp(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern void XClearArea(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
int /* x */,
int /* y */,
unsigned int /* width */,
unsigned int /* height */,
Bool /* exposures */
#endif
);
extern void XClearWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern void XCloseDisplay(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XConfigureWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
unsigned int /* value_mask */,
XWindowChanges* /* values */
#endif
);
extern int XConnectionNumber(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XConvertSelection(
#if NeedFunctionPrototypes
Display* /* display */,
Atom /* selection */,
Atom /* target */,
Atom /* property */,
Window /* requestor */,
Time /* time */
#endif
);
extern void XCopyArea(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* src */,
Drawable /* dest */,
GC /* gc */,
int /* src_x */,
int /* src_y */,
unsigned int /* width */,
unsigned int /* height */,
int /* dest_x */,
int /* dest_y */
#endif
);
extern void XCopyGC(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* src */,
unsigned long /* valuemask */,
GC /* dest */
#endif
);
extern void XCopyPlane(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* src */,
Drawable /* dest */,
GC /* gc */,
int /* src_x */,
int /* src_y */,
unsigned int /* width */,
unsigned int /* height */,
int /* dest_x */,
int /* dest_y */,
unsigned long /* plane */
#endif
);
extern int XDefaultDepth(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern int XDefaultDepthOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern int XDefaultScreen(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XDefineCursor(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Cursor /* cursor */
#endif
);
extern void XDeleteProperty(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Atom /* property */
#endif
);
extern void XDestroyWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern void XDestroySubwindows(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern int XDoesBackingStore(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern Bool XDoesSaveUnders(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern void XDisableAccessControl(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern int XDisplayCells(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern int XDisplayHeight(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern int XDisplayHeightMM(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern void XDisplayKeycodes(
#if NeedFunctionPrototypes
Display* /* display */,
int* /* min_keycodes_return */,
int* /* max_keycodes_return */
#endif
);
extern int XDisplayPlanes(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern int XDisplayWidth(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern int XDisplayWidthMM(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */
#endif
);
extern void XDrawArc(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
unsigned int /* width */,
unsigned int /* height */,
int /* angle1 */,
int /* angle2 */
#endif
);
extern void XDrawArcs(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
XArc* /* arcs */,
int /* narcs */
#endif
);
extern void XDrawImageString(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
_Xconst char* /* string */,
int /* length */
#endif
);
extern void XDrawImageString16(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
_Xconst XChar2b* /* string */,
int /* length */
#endif
);
extern void XDrawLine(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x1 */,
int /* y1 */,
int /* x2 */,
int /* y2 */
#endif
);
extern void XDrawLines(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
XPoint* /* points */,
int /* npoints */,
int /* mode */
#endif
);
extern void XDrawPoint(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */
#endif
);
extern void XDrawPoints(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
XPoint* /* points */,
int /* npoints */,
int /* mode */
#endif
);
extern void XDrawRectangle(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
unsigned int /* width */,
unsigned int /* height */
#endif
);
extern void XDrawRectangles(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
XRectangle* /* rectangles */,
int /* nrectangles */
#endif
);
extern void XDrawSegments(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
XSegment* /* segments */,
int /* nsegments */
#endif
);
extern void XDrawString(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
_Xconst char* /* string */,
int /* length */
#endif
);
extern void XDrawString16(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
_Xconst XChar2b* /* string */,
int /* length */
#endif
);
extern void XDrawText(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
XTextItem* /* items */,
int /* nitems */
#endif
);
extern void XDrawText16(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
XTextItem16* /* items */,
int /* nitems */
#endif
);
extern void XEnableAccessControl(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern int XEventsQueued(
#if NeedFunctionPrototypes
Display* /* display */,
int /* mode */
#endif
);
extern Status XFetchName(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
char** /* window_name_return */
#endif
);
extern void XFillArc(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
unsigned int /* width */,
unsigned int /* height */,
int /* angle1 */,
int /* angle2 */
#endif
);
extern void XFillArcs(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
XArc* /* arcs */,
int /* narcs */
#endif
);
extern void XFillPolygon(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
XPoint* /* points */,
int /* npoints */,
int /* shape */,
int /* mode */
#endif
);
extern void XFillRectangle(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
unsigned int /* width */,
unsigned int /* height */
#endif
);
extern void XFillRectangles(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
XRectangle* /* rectangles */,
int /* nrectangles */
#endif
);
extern void XFlush(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XForceScreenSaver(
#if NeedFunctionPrototypes
Display* /* display */,
int /* mode */
#endif
);
extern void XFree(
#if NeedFunctionPrototypes
void* /* data */
#endif
);
extern void XFreeColormap(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */
#endif
);
extern void XFreeColors(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
unsigned long* /* pixels */,
int /* npixels */,
unsigned long /* planes */
#endif
);
extern void XFreeCursor(
#if NeedFunctionPrototypes
Display* /* display */,
Cursor /* cursor */
#endif
);
extern void XFreeExtensionList(
#if NeedFunctionPrototypes
char** /* list */
#endif
);
extern void XFreeFont(
#if NeedFunctionPrototypes
Display* /* display */,
XFontStruct* /* font_struct */
#endif
);
extern void XFreeFontInfo(
#if NeedFunctionPrototypes
char** /* names */,
XFontStruct* /* free_info */,
int /* actual_count */
#endif
);
extern void XFreeFontNames(
#if NeedFunctionPrototypes
char** /* list */
#endif
);
extern void XFreeFontPath(
#if NeedFunctionPrototypes
char** /* list */
#endif
);
extern void XFreeGC(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */
#endif
);
extern void XFreeModifiermap(
#if NeedFunctionPrototypes
XModifierKeymap* /* modmap */
#endif
);
extern void XFreePixmap(
#if NeedFunctionPrototypes
Display* /* display */,
Pixmap /* pixmap */
#endif
);
extern int XGeometry(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen */,
_Xconst char* /* position */,
_Xconst char* /* default_position */,
unsigned int /* bwidth */,
unsigned int /* fwidth */,
unsigned int /* fheight */,
int /* xadder */,
int /* yadder */,
int* /* x_return */,
int* /* y_return */,
int* /* width_return */,
int* /* height_return */
#endif
);
extern void XGetErrorDatabaseText(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* name */,
_Xconst char* /* message */,
_Xconst char* /* default_string */,
char* /* buffer_return */,
int /* length */
#endif
);
extern void XGetErrorText(
#if NeedFunctionPrototypes
Display* /* display */,
int /* code */,
char* /* buffer_return */,
int /* length */
#endif
);
extern Bool XGetFontProperty(
#if NeedFunctionPrototypes
XFontStruct* /* font_struct */,
Atom /* atom */,
unsigned long* /* value_return */
#endif
);
extern Status XGetGCValues(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
unsigned long /* valuemask */,
XGCValues* /* values_return */
#endif
);
extern Status XGetGeometry(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
Window* /* root_return */,
int* /* x_return */,
int* /* y_return */,
unsigned int* /* width_return */,
unsigned int* /* height_return */,
unsigned int* /* border_width_return */,
unsigned int* /* depth_return */
#endif
);
extern Status XGetIconName(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
char** /* icon_name_return */
#endif
);
extern void XGetInputFocus(
#if NeedFunctionPrototypes
Display* /* display */,
Window* /* focus_return */,
int* /* revert_to_return */
#endif
);
extern void XGetKeyboardControl(
#if NeedFunctionPrototypes
Display* /* display */,
XKeyboardState* /* values_return */
#endif
);
extern void XGetPointerControl(
#if NeedFunctionPrototypes
Display* /* display */,
int* /* accel_numerator_return */,
int* /* accel_denominator_return */,
int* /* threshold_return */
#endif
);
extern int XGetPointerMapping(
#if NeedFunctionPrototypes
Display* /* display */,
unsigned char* /* map_return */,
int /* nmap */
#endif
);
extern void XGetScreenSaver(
#if NeedFunctionPrototypes
Display* /* display */,
int* /* timeout_return */,
int* /* interval_return */,
int* /* prefer_blanking_return */,
int* /* allow_exposures_return */
#endif
);
extern Status XGetTransientForHint(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Window* /* prop_window_return */
#endif
);
extern int XGetWindowProperty(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Atom /* property */,
long /* long_offset */,
long /* long_length */,
Bool /* delete */,
Atom /* req_type */,
Atom* /* actual_type_return */,
int* /* actual_format_return */,
unsigned long* /* nitems_return */,
unsigned long* /* bytes_after_return */,
unsigned char** /* prop_return */
#endif
);
extern Status XGetWindowAttributes(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XWindowAttributes* /* window_attributes_return */
#endif
);
extern void XGrabButton(
#if NeedFunctionPrototypes
Display* /* display */,
unsigned int /* button */,
unsigned int /* modifiers */,
Window /* grab_window */,
Bool /* owner_events */,
unsigned int /* event_mask */,
int /* pointer_mode */,
int /* keyboard_mode */,
Window /* confine_to */,
Cursor /* cursor */
#endif
);
extern void XGrabKey(
#if NeedFunctionPrototypes
Display* /* display */,
int /* keycode */,
unsigned int /* modifiers */,
Window /* grab_window */,
Bool /* owner_events */,
int /* pointer_mode */,
int /* keyboard_mode */
#endif
);
extern int XGrabKeyboard(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* grab_window */,
Bool /* owner_events */,
int /* pointer_mode */,
int /* keyboard_mode */,
Time /* time */
#endif
);
extern int XGrabPointer(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* grab_window */,
Bool /* owner_events */,
unsigned int /* event_mask */,
int /* pointer_mode */,
int /* keyboard_mode */,
Window /* confine_to */,
Cursor /* cursor */,
Time /* time */
#endif
);
extern void XGrabServer(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern int XHeightMMOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern int XHeightOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern void XIfEvent(
#if NeedFunctionPrototypes
Display* /* display */,
XEvent* /* event_return */,
Bool (*) (
#if NeedNestedPrototypes
Display* /* display */,
XEvent* /* event */,
XPointer /* arg */
#endif
) /* predicate */,
XPointer /* arg */
#endif
);
extern int XImageByteOrder(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XInstallColormap(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */
#endif
);
extern KeyCode XKeysymToKeycode(
#if NeedFunctionPrototypes
Display* /* display */,
KeySym /* keysym */
#endif
);
extern void XKillClient(
#if NeedFunctionPrototypes
Display* /* display */,
XID /* resource */
#endif
);
extern unsigned long XLastKnownRequestProcessed(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern Status XLookupColor(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
_Xconst char* /* color_name */,
XColor* /* exact_def_return */,
XColor* /* screen_def_return */
#endif
);
extern void XLowerWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern void XMapRaised(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern void XMapSubwindows(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern void XMapWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern void XMaskEvent(
#if NeedFunctionPrototypes
Display* /* display */,
long /* event_mask */,
XEvent* /* event_return */
#endif
);
extern int XMaxCmapsOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern int XMinCmapsOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern void XMoveResizeWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
int /* x */,
int /* y */,
unsigned int /* width */,
unsigned int /* height */
#endif
);
extern void XMoveWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
int /* x */,
int /* y */
#endif
);
extern void XNextEvent(
#if NeedFunctionPrototypes
Display* /* display */,
XEvent* /* event_return */
#endif
);
extern void XNoOp(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern Status XParseColor(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
_Xconst char* /* spec */,
XColor* /* exact_def_return */
#endif
);
extern int XParseGeometry(
#if NeedFunctionPrototypes
_Xconst char* /* parsestring */,
int* /* x_return */,
int* /* y_return */,
unsigned int* /* width_return */,
unsigned int* /* height_return */
#endif
);
extern void XPeekEvent(
#if NeedFunctionPrototypes
Display* /* display */,
XEvent* /* event_return */
#endif
);
extern void XPeekIfEvent(
#if NeedFunctionPrototypes
Display* /* display */,
XEvent* /* event_return */,
Bool (*) (
#if NeedNestedPrototypes
Display* /* display */,
XEvent* /* event */,
XPointer /* arg */
#endif
) /* predicate */,
XPointer /* arg */
#endif
);
extern int XPending(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern int XPlanesOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern int XProtocolRevision(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern int XProtocolVersion(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XPutBackEvent(
#if NeedFunctionPrototypes
Display* /* display */,
XEvent* /* event */
#endif
);
extern void XPutImage(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
XImage* /* image */,
int /* src_x */,
int /* src_y */,
int /* dest_x */,
int /* dest_y */,
unsigned int /* width */,
unsigned int /* height */
#endif
);
extern int XQLength(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern Status XQueryBestCursor(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
unsigned int /* width */,
unsigned int /* height */,
unsigned int* /* width_return */,
unsigned int* /* height_return */
#endif
);
extern Status XQueryBestSize(
#if NeedFunctionPrototypes
Display* /* display */,
int /* class */,
Drawable /* which_screen */,
unsigned int /* width */,
unsigned int /* height */,
unsigned int* /* width_return */,
unsigned int* /* height_return */
#endif
);
extern Status XQueryBestStipple(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* which_screen */,
unsigned int /* width */,
unsigned int /* height */,
unsigned int* /* width_return */,
unsigned int* /* height_return */
#endif
);
extern Status XQueryBestTile(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* which_screen */,
unsigned int /* width */,
unsigned int /* height */,
unsigned int* /* width_return */,
unsigned int* /* height_return */
#endif
);
extern void XQueryColor(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
XColor* /* def_in_out */
#endif
);
extern void XQueryColors(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
XColor* /* defs_in_out */,
int /* ncolors */
#endif
);
extern Bool XQueryExtension(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* name */,
int* /* major_opcode_return */,
int* /* first_event_return */,
int* /* first_error_return */
#endif
);
extern void XQueryKeymap(
#if NeedFunctionPrototypes
Display* /* display */,
char [32] /* keys_return */
#endif
);
extern Bool XQueryPointer(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Window* /* root_return */,
Window* /* child_return */,
int* /* root_x_return */,
int* /* root_y_return */,
int* /* win_x_return */,
int* /* win_y_return */,
unsigned int* /* mask_return */
#endif
);
extern void XQueryTextExtents(
#if NeedFunctionPrototypes
Display* /* display */,
XID /* font_ID */,
_Xconst char* /* string */,
int /* nchars */,
int* /* direction_return */,
int* /* font_ascent_return */,
int* /* font_descent_return */,
XCharStruct* /* overall_return */
#endif
);
extern void XQueryTextExtents16(
#if NeedFunctionPrototypes
Display* /* display */,
XID /* font_ID */,
_Xconst XChar2b* /* string */,
int /* nchars */,
int* /* direction_return */,
int* /* font_ascent_return */,
int* /* font_descent_return */,
XCharStruct* /* overall_return */
#endif
);
extern Status XQueryTree(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Window* /* root_return */,
Window* /* parent_return */,
Window** /* children_return */,
unsigned int* /* nchildren_return */
#endif
);
extern void XRaiseWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern int XReadBitmapFile(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
_Xconst char* /* filename */,
unsigned int* /* width_return */,
unsigned int* /* height_return */,
Pixmap* /* bitmap_return */,
int* /* x_hot_return */,
int* /* y_hot_return */
#endif
);
extern void XRebindKeysym(
#if NeedFunctionPrototypes
Display* /* display */,
KeySym /* keysym */,
KeySym* /* list */,
int /* mod_count */,
_Xconst unsigned char* /* string */,
int /* bytes_string */
#endif
);
extern void XRecolorCursor(
#if NeedFunctionPrototypes
Display* /* display */,
Cursor /* cursor */,
XColor* /* foreground_color */,
XColor* /* background_color */
#endif
);
extern void XRefreshKeyboardMapping(
#if NeedFunctionPrototypes
XMappingEvent* /* event_map */
#endif
);
extern void XRemoveFromSaveSet(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern void XRemoveHost(
#if NeedFunctionPrototypes
Display* /* display */,
XHostAddress* /* host */
#endif
);
extern void XRemoveHosts(
#if NeedFunctionPrototypes
Display* /* display */,
XHostAddress* /* hosts */,
int /* num_hosts */
#endif
);
extern void XReparentWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Window /* parent */,
int /* x */,
int /* y */
#endif
);
extern void XResetScreenSaver(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XResizeWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
unsigned int /* width */,
unsigned int /* height */
#endif
);
extern void XRestackWindows(
#if NeedFunctionPrototypes
Display* /* display */,
Window* /* windows */,
int /* nwindows */
#endif
);
extern void XRotateBuffers(
#if NeedFunctionPrototypes
Display* /* display */,
int /* rotate */
#endif
);
extern void XRotateWindowProperties(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Atom* /* properties */,
int /* num_prop */,
int /* npositions */
#endif
);
extern int XScreenCount(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XSelectInput(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
long /* event_mask */
#endif
);
extern Status XSendEvent(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Bool /* propagate */,
long /* event_mask */,
XEvent* /* event_send */
#endif
);
extern void XSetAccessControl(
#if NeedFunctionPrototypes
Display* /* display */,
int /* mode */
#endif
);
extern void XSetArcMode(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
int /* arc_mode */
#endif
);
extern void XSetBackground(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
unsigned long /* background */
#endif
);
extern void XSetClipMask(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
Pixmap /* pixmap */
#endif
);
extern void XSetClipOrigin(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
int /* clip_x_origin */,
int /* clip_y_origin */
#endif
);
extern void XSetClipRectangles(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
int /* clip_x_origin */,
int /* clip_y_origin */,
XRectangle* /* rectangles */,
int /* n */,
int /* ordering */
#endif
);
extern void XSetCloseDownMode(
#if NeedFunctionPrototypes
Display* /* display */,
int /* close_mode */
#endif
);
extern void XSetCommand(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
char** /* argv */,
int /* argc */
#endif
);
extern void XSetDashes(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
int /* dash_offset */,
_Xconst char* /* dash_list */,
int /* n */
#endif
);
extern void XSetFillRule(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
int /* fill_rule */
#endif
);
extern void XSetFillStyle(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
int /* fill_style */
#endif
);
extern void XSetFont(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
Font /* font */
#endif
);
extern void XSetFontPath(
#if NeedFunctionPrototypes
Display* /* display */,
char** /* directories */,
int /* ndirs */
#endif
);
extern void XSetForeground(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
unsigned long /* foreground */
#endif
);
extern void XSetFunction(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
int /* function */
#endif
);
extern void XSetGraphicsExposures(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
Bool /* graphics_exposures */
#endif
);
extern void XSetIconName(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
_Xconst char* /* icon_name */
#endif
);
extern void XSetInputFocus(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* focus */,
int /* revert_to */,
Time /* time */
#endif
);
extern void XSetLineAttributes(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
unsigned int /* line_width */,
int /* line_style */,
int /* cap_style */,
int /* join_style */
#endif
);
extern int XSetModifierMapping(
#if NeedFunctionPrototypes
Display* /* display */,
XModifierKeymap* /* modmap */
#endif
);
extern void XSetPlaneMask(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
unsigned long /* plane_mask */
#endif
);
extern int XSetPointerMapping(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst unsigned char* /* map */,
int /* nmap */
#endif
);
extern void XSetScreenSaver(
#if NeedFunctionPrototypes
Display* /* display */,
int /* timeout */,
int /* interval */,
int /* prefer_blanking */,
int /* allow_exposures */
#endif
);
extern void XSetSelectionOwner(
#if NeedFunctionPrototypes
Display* /* display */,
Atom /* selection */,
Window /* owner */,
Time /* time */
#endif
);
extern void XSetState(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
unsigned long /* foreground */,
unsigned long /* background */,
int /* function */,
unsigned long /* plane_mask */
#endif
);
extern void XSetStipple(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
Pixmap /* stipple */
#endif
);
extern void XSetSubwindowMode(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
int /* subwindow_mode */
#endif
);
extern void XSetTSOrigin(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
int /* ts_x_origin */,
int /* ts_y_origin */
#endif
);
extern void XSetTile(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
Pixmap /* tile */
#endif
);
extern void XSetWindowBackground(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
unsigned long /* background_pixel */
#endif
);
extern void XSetWindowBackgroundPixmap(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Pixmap /* background_pixmap */
#endif
);
extern void XSetWindowBorder(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
unsigned long /* border_pixel */
#endif
);
extern void XSetWindowBorderPixmap(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Pixmap /* border_pixmap */
#endif
);
extern void XSetWindowBorderWidth(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
unsigned int /* width */
#endif
);
extern void XSetWindowColormap(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
Colormap /* colormap */
#endif
);
extern void XStoreBuffer(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* bytes */,
int /* nbytes */,
int /* buffer */
#endif
);
extern void XStoreBytes(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* bytes */,
int /* nbytes */
#endif
);
extern void XStoreColor(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
XColor* /* color */
#endif
);
extern void XStoreColors(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
XColor* /* color */,
int /* ncolors */
#endif
);
extern void XStoreName(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
_Xconst char* /* window_name */
#endif
);
extern void XStoreNamedColor(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */,
_Xconst char* /* color */,
unsigned long /* pixel */,
int /* flags */
#endif
);
extern void XSync(
#if NeedFunctionPrototypes
Display* /* display */,
Bool /* discard */
#endif
);
extern void XTextExtents(
#if NeedFunctionPrototypes
XFontStruct* /* font_struct */,
_Xconst char* /* string */,
int /* nchars */,
int* /* direction_return */,
int* /* font_ascent_return */,
int* /* font_descent_return */,
XCharStruct* /* overall_return */
#endif
);
extern void XTextExtents16(
#if NeedFunctionPrototypes
XFontStruct* /* font_struct */,
_Xconst XChar2b* /* string */,
int /* nchars */,
int* /* direction_return */,
int* /* font_ascent_return */,
int* /* font_descent_return */,
XCharStruct* /* overall_return */
#endif
);
extern int XTextWidth(
#if NeedFunctionPrototypes
XFontStruct* /* font_struct */,
_Xconst char* /* string */,
int /* count */
#endif
);
extern int XTextWidth16(
#if NeedFunctionPrototypes
XFontStruct* /* font_struct */,
_Xconst XChar2b* /* string */,
int /* count */
#endif
);
extern Bool XTranslateCoordinates(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* src_w */,
Window /* dest_w */,
int /* src_x */,
int /* src_y */,
int* /* dest_x_return */,
int* /* dest_y_return */,
Window* /* child_return */
#endif
);
extern void XUndefineCursor(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern void XUngrabButton(
#if NeedFunctionPrototypes
Display* /* display */,
unsigned int /* button */,
unsigned int /* modifiers */,
Window /* grab_window */
#endif
);
extern void XUngrabKey(
#if NeedFunctionPrototypes
Display* /* display */,
int /* keycode */,
unsigned int /* modifiers */,
Window /* grab_window */
#endif
);
extern void XUngrabKeyboard(
#if NeedFunctionPrototypes
Display* /* display */,
Time /* time */
#endif
);
extern void XUngrabPointer(
#if NeedFunctionPrototypes
Display* /* display */,
Time /* time */
#endif
);
extern void XUngrabServer(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XUninstallColormap(
#if NeedFunctionPrototypes
Display* /* display */,
Colormap /* colormap */
#endif
);
extern void XUnloadFont(
#if NeedFunctionPrototypes
Display* /* display */,
Font /* font */
#endif
);
extern void XUnmapSubwindows(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern void XUnmapWindow(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern int XVendorRelease(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern void XWarpPointer(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* src_w */,
Window /* dest_w */,
int /* src_x */,
int /* src_y */,
unsigned int /* src_width */,
unsigned int /* src_height */,
int /* dest_x */,
int /* dest_y */
#endif
);
extern int XWidthMMOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern int XWidthOfScreen(
#if NeedFunctionPrototypes
Screen* /* screen */
#endif
);
extern void XWindowEvent(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
long /* event_mask */,
XEvent* /* event_return */
#endif
);
extern int XWriteBitmapFile(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* filename */,
Pixmap /* bitmap */,
unsigned int /* width */,
unsigned int /* height */,
int /* x_hot */,
int /* y_hot */
#endif
);
extern Bool XSupportsLocale(
#if NeedFunctionPrototypes
void
#endif
);
extern char *XSetLocaleModifiers(
#if NeedFunctionPrototypes
_Xconst char* /* modifier_list */
#endif
);
extern XFontSet XCreateFontSet(
#if NeedFunctionPrototypes
Display* /* display */,
_Xconst char* /* base_font_name_list */,
char*** /* missing_charset_list */,
int* /* missing_charset_count */,
char** /* def_string */
#endif
);
extern void XFreeFontSet(
#if NeedFunctionPrototypes
Display* /* display */,
XFontSet /* font_set */
#endif
);
extern int XFontsOfFontSet(
#if NeedFunctionPrototypes
XFontSet /* font_set */,
XFontStruct*** /* font_struct_list */,
char*** /* font_name_list */
#endif
);
extern char *XBaseFontNameListOfFontSet(
#if NeedFunctionPrototypes
XFontSet /* font_set */
#endif
);
extern char *XLocaleOfFontSet(
#if NeedFunctionPrototypes
XFontSet /* font_set */
#endif
);
extern Bool XContextDependentDrawing(
#if NeedFunctionPrototypes
XFontSet /* font_set */
#endif
);
extern XFontSetExtents *XExtentsOfFontSet(
#if NeedFunctionPrototypes
XFontSet /* font_set */
#endif
);
extern int XmbTextEscapement(
#if NeedFunctionPrototypes
XFontSet /* font_set */,
_Xconst char* /* text */,
int /* bytes_text */
#endif
);
extern int XwcTextEscapement(
#if NeedFunctionPrototypes
XFontSet /* font_set */,
wchar_t* /* text */,
int /* num_wchars */
#endif
);
extern int XmbTextExtents(
#if NeedFunctionPrototypes
XFontSet /* font_set */,
_Xconst char* /* text */,
int /* bytes_text */,
XRectangle* /* overall_ink_return */,
XRectangle* /* overall_logical_return */
#endif
);
extern int XwcTextExtents(
#if NeedFunctionPrototypes
XFontSet /* font_set */,
wchar_t* /* text */,
int /* num_wchars */,
XRectangle* /* overall_ink_return */,
XRectangle* /* overall_logical_return */
#endif
);
extern Status XmbTextPerCharExtents(
#if NeedFunctionPrototypes
XFontSet /* font_set */,
_Xconst char* /* text */,
int /* bytes_text */,
XRectangle* /* ink_extents_buffer */,
XRectangle* /* logical_extents_buffer */,
int /* buffer_size */,
int* /* num_chars */,
XRectangle* /* overall_ink_return */,
XRectangle* /* overall_logical_return */
#endif
);
extern Status XwcTextPerCharExtents(
#if NeedFunctionPrototypes
XFontSet /* font_set */,
wchar_t* /* text */,
int /* num_wchars */,
XRectangle* /* ink_extents_buffer */,
XRectangle* /* logical_extents_buffer */,
int /* buffer_size */,
int* /* num_chars */,
XRectangle* /* overall_ink_return */,
XRectangle* /* overall_logical_return */
#endif
);
extern void XmbDrawText(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
XmbTextItem* /* text_items */,
int /* nitems */
#endif
);
extern void XwcDrawText(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
GC /* gc */,
int /* x */,
int /* y */,
XwcTextItem* /* text_items */,
int /* nitems */
#endif
);
extern void XmbDrawString(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
XFontSet /* font_set */,
GC /* gc */,
int /* x */,
int /* y */,
_Xconst char* /* text */,
int /* bytes_text */
#endif
);
extern void XwcDrawString(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
XFontSet /* font_set */,
GC /* gc */,
int /* x */,
int /* y */,
wchar_t* /* text */,
int /* num_wchars */
#endif
);
extern void XmbDrawImageString(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
XFontSet /* font_set */,
GC /* gc */,
int /* x */,
int /* y */,
_Xconst char* /* text */,
int /* bytes_text */
#endif
);
extern void XwcDrawImageString(
#if NeedFunctionPrototypes
Display* /* display */,
Drawable /* d */,
XFontSet /* font_set */,
GC /* gc */,
int /* x */,
int /* y */,
wchar_t* /* text */,
int /* num_wchars */
#endif
);
extern XIM XOpenIM(
#if NeedFunctionPrototypes
Display* /* dpy */,
struct _XrmHashBucketRec* /* rdb */,
char* /* res_name */,
char* /* res_class */
#endif
);
extern Status XCloseIM(
#if NeedFunctionPrototypes
XIM /* im */
#endif
);
extern char *XGetIMValues(
#if NeedVarargsPrototypes
XIM /* im */, ...
#endif
);
extern Display *XDisplayOfIM(
#if NeedFunctionPrototypes
XIM /* im */
#endif
);
extern char *XLocaleOfIM(
#if NeedFunctionPrototypes
XIM /* im*/
#endif
);
extern XIC XCreateIC(
#if NeedVarargsPrototypes
XIM /* im */, ...
#endif
);
extern void XDestroyIC(
#if NeedFunctionPrototypes
XIC /* ic */
#endif
);
extern void XSetICFocus(
#if NeedFunctionPrototypes
XIC /* ic */
#endif
);
extern void XUnsetICFocus(
#if NeedFunctionPrototypes
XIC /* ic */
#endif
);
extern wchar_t *XwcResetIC(
#if NeedFunctionPrototypes
XIC /* ic */
#endif
);
extern char *XmbResetIC(
#if NeedFunctionPrototypes
XIC /* ic */
#endif
);
extern char *XSetICValues(
#if NeedVarargsPrototypes
XIC /* ic */, ...
#endif
);
extern char *XGetICValues(
#if NeedVarargsPrototypes
XIC /* ic */, ...
#endif
);
extern XIM XIMOfIC(
#if NeedFunctionPrototypes
XIC /* ic */
#endif
);
extern Bool XFilterEvent(
#if NeedFunctionPrototypes
XEvent* /* event */,
Window /* window */
#endif
);
extern int XmbLookupString(
#if NeedFunctionPrototypes
XIC /* ic */,
XKeyPressedEvent* /* event */,
char* /* buffer_return */,
int /* bytes_buffer */,
KeySym* /* keysym_return */,
Status* /* status_return */
#endif
);
extern int XwcLookupString(
#if NeedFunctionPrototypes
XIC /* ic */,
XKeyPressedEvent* /* event */,
wchar_t* /* buffer_return */,
int /* wchars_buffer */,
KeySym* /* keysym_return */,
Status* /* status_return */
#endif
);
extern XVaNestedList XVaCreateNestedList(
#if NeedVarargsPrototypes
int /*unused*/, ...
#endif
);
_XFUNCPROTOEND
#ifdef MAC_TCL
# undef Cursor
#endif
#endif /* _XLIB_H_ */