1: /* $XdotOrg: xc/lib/X11/Xlib.h,v 1.1.4.4.2.2 2004/03/18 12:00:23 ago Exp $ */ 2: /* $Xorg: Xlib.h,v 1.6 2001/02/09 02:03:38 xorgcvs Exp $ */ 3: /* 4: 5: Copyright 1985, 1986, 1987, 1991, 1998 The Open Group 6: 7: Permission to use, copy, modify, distribute, and sell this software and its 8: documentation for any purpose is hereby granted without fee, provided that 9: the above copyright notice appear in all copies and that both that 10: copyright notice and this permission notice appear in supporting 11: documentation. 12: 13: The above copyright notice and this permission notice shall be included in 14: all copies or substantial portions of the Software. 15: 16: THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17: IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18: FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19: OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 20: AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 21: CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 22: 23: Except as contained in this notice, the name of The Open Group shall not be 24: used in advertising or otherwise to promote the sale, use or other dealings 25: in this Software without prior written authorization from The Open Group. 26: 27: */ 28: /* $XFree86: xc/lib/X11/Xlib.h,v 3.25 2003/11/17 22:20:10 dawes Exp $ */ 29: 30: 31: /* 32: * Xlib.h - Header definition and support file for the C subroutine 33: * interface library (Xlib) to the X Window System Protocol (V11). 34: * Structures and symbols starting with "_" are private to the library. 35: */ 36: #ifndef _XLIB_H_ 37: #define _XLIB_H_ 38: 39: #define XlibSpecificationRelease 6 40: 41: #ifdef USG 42: #ifndef __TYPES__ 43: #include <sys/types.h> /* forgot to protect it... */ 44: #define __TYPES__ 45: #endif /* __TYPES__ */ 46: #else 47: #if defined(_POSIX_SOURCE) && defined(MOTOROLA) 48: #undef _POSIX_SOURCE 49: #include <sys/types.h> 50: #define _POSIX_SOURCE 51: #else 52: #include <sys/types.h> 53: #endif 54: #endif /* USG */ 55: 56: #if defined(SCO325) || defined(__USLC__) 57: #include <stdint.h> 58: #endif 59: 60: #include <X11/X.h> 61: 62: /* applications should not depend on these two headers being included! */ 63: #include <X11/Xfuncproto.h> 64: #include <X11/Xosdefs.h> 65: 66: #ifndef X_WCHAR 67: #ifdef X_NOT_STDC_ENV 68: #ifndef SCO324 69: #ifndef ISC 70: #define X_WCHAR 71: #endif 72: #endif 73: #endif 74: #endif 75: 76: #ifndef X_WCHAR 77: #include <stddef.h> 78: #else 79: #ifdef __UNIXOS2__ 80: #include <stdlib.h> 81: #else 82: /* replace this with #include or typedef appropriate for your system */ 83: typedef unsigned long wchar_t; 84: #endif 85: #endif 86: 87: #if defined(ISC) && defined(USE_XMBTOWC) 88: #define wctomb(a,b) _Xwctomb(a,b) 89: #define mblen(a,b) _Xmblen(a,b) 90: #ifndef USE_XWCHAR_STRING 91: #define mbtowc(a,b,c) _Xmbtowc(a,b,c) 92: #endif 93: #endif 94: 95: extern int 96: _Xmblen( 97: #ifdef ISC 98: char const *str, 99: size_t len 100: #else 101: char *str, 102: int len 103: #endif 104: ); 105: 106: /* API mentioning "UTF8" or "utf8" is an XFree86 extension, introduced in 107: November 2000. Its presence is indicated through the following macro. */ 108: #define X_HAVE_UTF8_STRING 1 109: 110: typedef char *XPointer; 111: 112: #define Bool int 113: #define Status int 114: #define True 1 115: #define False 0 116: 117: #define QueuedAlready 0 118: #define QueuedAfterReading 1 119: #define QueuedAfterFlush 2 120: 121: #define ConnectionNumber(dpy) (((_XPrivDisplay)dpy)->fd) 122: #define RootWindow(dpy, scr) (ScreenOfDisplay(dpy,scr)->root) 123: #define DefaultScreen(dpy) (((_XPrivDisplay)dpy)->default_screen) 124: #define DefaultRootWindow(dpy) (ScreenOfDisplay(dpy,DefaultScreen(dpy))->root) 125: #define DefaultVisual(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_visual) 126: #define DefaultGC(dpy, scr) (ScreenOfDisplay(dpy,scr)->default_gc) 127: #define BlackPixel(dpy, scr) (ScreenOfDisplay(dpy,scr)->black_pixel) 128: #define WhitePixel(dpy, scr) (ScreenOfDisplay(dpy,scr)->white_pixel) 129: #define AllPlanes ((unsigned long)~0L) 130: #define QLength(dpy) (((_XPrivDisplay)dpy)->qlen) 131: #define DisplayWidth(dpy, scr) (ScreenOfDisplay(dpy,scr)->width) 132: #define DisplayHeight(dpy, scr) (ScreenOfDisplay(dpy,scr)->height) 133: #define DisplayWidthMM(dpy, scr)(ScreenOfDisplay(dpy,scr)->mwidth) 134: #define DisplayHeightMM(dpy, scr)(ScreenOfDisplay(dpy,scr)->mheight) 135: #define DisplayPlanes(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_depth) 136: #define DisplayCells(dpy, scr) (DefaultVisual(dpy,scr)->map_entries) 137: #define ScreenCount(dpy) (((_XPrivDisplay)dpy)->nscreens) 138: #define ServerVendor(dpy) (((_XPrivDisplay)dpy)->vendor) 139: #define ProtocolVersion(dpy) (((_XPrivDisplay)dpy)->proto_major_version) 140: #define ProtocolRevision(dpy) (((_XPrivDisplay)dpy)->proto_minor_version) 141: #define VendorRelease(dpy) (((_XPrivDisplay)dpy)->release) 142: #define DisplayString(dpy) (((_XPrivDisplay)dpy)->display_name) 143: #define DefaultDepth(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_depth) 144: #define DefaultColormap(dpy, scr)(ScreenOfDisplay(dpy,scr)->cmap) 145: #define BitmapUnit(dpy) (((_XPrivDisplay)dpy)->bitmap_unit) 146: #define BitmapBitOrder(dpy) (((_XPrivDisplay)dpy)->bitmap_bit_order) 147: #define BitmapPad(dpy) (((_XPrivDisplay)dpy)->bitmap_pad) 148: #define ImageByteOrder(dpy) (((_XPrivDisplay)dpy)->byte_order) 149: #ifdef CRAY /* unable to get WORD64 without pulling in other symbols */ 150: #define NextRequest(dpy) XNextRequest(dpy) 151: #else 152: #define NextRequest(dpy) (((_XPrivDisplay)dpy)->request + 1) 153: #endif 154: #define LastKnownRequestProcessed(dpy) (((_XPrivDisplay)dpy)->last_request_read) 155: 156: /* macros for screen oriented applications (toolkit) */ 157: #define ScreenOfDisplay(dpy, scr)(&((_XPrivDisplay)dpy)->screens[scr]) 158: #define DefaultScreenOfDisplay(dpy) ScreenOfDisplay(dpy,DefaultScreen(dpy)) 159: #define DisplayOfScreen(s) ((s)->display) 160: #define RootWindowOfScreen(s) ((s)->root) 161: #define BlackPixelOfScreen(s) ((s)->black_pixel) 162: #define WhitePixelOfScreen(s) ((s)->white_pixel) 163: #define DefaultColormapOfScreen(s)((s)->cmap) 164: #define DefaultDepthOfScreen(s) ((s)->root_depth) 165: #define DefaultGCOfScreen(s) ((s)->default_gc) 166: #define DefaultVisualOfScreen(s)((s)->root_visual) 167: #define WidthOfScreen(s) ((s)->width) 168: #define HeightOfScreen(s) ((s)->height) 169: #define WidthMMOfScreen(s) ((s)->mwidth) 170: #define HeightMMOfScreen(s) ((s)->mheight) 171: #define PlanesOfScreen(s) ((s)->root_depth) 172: #define CellsOfScreen(s) (DefaultVisualOfScreen((s))->map_entries) 173: #define MinCmapsOfScreen(s) ((s)->min_maps) 174: #define MaxCmapsOfScreen(s) ((s)->max_maps) 175: #define DoesSaveUnders(s) ((s)->save_unders) 176: #define DoesBackingStore(s) ((s)->backing_store) 177: #define EventMaskOfScreen(s) ((s)->root_input_mask) 178: 179: /* 180: * Extensions need a way to hang private data on some structures. 181: */ 182: typedef struct _XExtData { 183: int number; /* number returned by XRegisterExtension */ 184: struct _XExtData *next; /* next item on list of data for structure */ 185: int (*free_private)( /* called to free private storage */ 186: struct _XExtData *extension 187: ); 188: XPointer private_data; /* data private to this extension. */ 189: } XExtData; 190: 191: /* 192: * This file contains structures used by the extension mechanism. 193: */ 194: typedef struct { /* public to extension, cannot be changed */ 195: int extension; /* extension number */ 196: int major_opcode; /* major op-code assigned by server */ 197: int first_event; /* first event number for the extension */ 198: int first_error; /* first error number for the extension */ 199: } XExtCodes; 200: 201: /* 202: * Data structure for retrieving info about pixmap formats. 203: */ 204: 205: typedef struct { 206: int depth; 207: int bits_per_pixel; 208: int scanline_pad; 209: } XPixmapFormatValues; 210: 211: 212: /* 213: * Data structure for setting graphics context. 214: */ 215: typedef struct { 216: int function; /* logical operation */ 217: unsigned long plane_mask;/* plane mask */ 218: unsigned long foreground;/* foreground pixel */ 219: unsigned long background;/* background pixel */ 220: int line_width; /* line width */ 221: int line_style; /* LineSolid, LineOnOffDash, LineDoubleDash */ 222: int cap_style; /* CapNotLast, CapButt, 223: CapRound, CapProjecting */ 224: int join_style; /* JoinMiter, JoinRound, JoinBevel */ 225: int fill_style; /* FillSolid, FillTiled, 226: FillStippled, FillOpaeueStippled */ 227: int fill_rule; /* EvenOddRule, WindingRule */ 228: int arc_mode; /* ArcChord, ArcPieSlice */ 229: Pixmap tile; /* tile pixmap for tiling operations */ 230: Pixmap stipple; /* stipple 1 plane pixmap for stipping */ 231: int ts_x_origin; /* offset for tile or stipple operations */ 232: int ts_y_origin; 233: Font font; /* default text font for text operations */ 234: int subwindow_mode; /* ClipByChildren, IncludeInferiors */ 235: Bool graphics_exposures;/* boolean, should exposures be generated */ 236: int clip_x_origin; /* origin for clipping */ 237: int clip_y_origin; 238: Pixmap clip_mask; /* bitmap clipping; other calls for rects */ 239: int dash_offset; /* patterned/dashed line information */ 240: char dashes; 241: } XGCValues; 242: 243: /* 244: * Graphics context. The contents of this structure are implementation 245: * dependent. A GC should be treated as opaque by application code. 246: */ 247: 248: typedef struct _XGC 249: #ifdef XLIB_ILLEGAL_ACCESS 250: { 251: XExtData *ext_data; /* hook for extension to hang data */ 252: GContext gid; /* protocol ID for graphics context */ 253: /* there is more to this structure, but it is private to Xlib */ 254: } 255: #endif 256: *GC; 257: 258: /* 259: * Visual structure; contains information about colormapping possible. 260: */ 261: typedef struct { 262: XExtData *ext_data; /* hook for extension to hang data */ 263: VisualID visualid; /* visual id of this visual */ 264: #if defined(__cplusplus) || defined(c_plusplus) 265: int c_class; /* C++ class of screen (monochrome, etc.) */ 266: #else 267: int class; /* class of screen (monochrome, etc.) */ 268: #endif 269: unsigned long red_mask, green_mask, blue_mask; /* mask values */ 270: int bits_per_rgb; /* log base 2 of distinct color values */ 271: int map_entries; /* color map entries */ 272: } Visual; 273: 274: /* 275: * Depth structure; contains information for each possible depth. 276: */ 277: typedef struct { 278: int depth; /* this depth (Z) of the depth */ 279: int nvisuals; /* number of Visual types at this depth */ 280: Visual *visuals; /* list of visuals possible at this depth */ 281: } Depth; 282: 283: /* 284: * Information about the screen. The contents of this structure are 285: * implementation dependent. A Screen should be treated as opaque 286: * by application code. 287: */ 288: 289: struct _XDisplay; /* Forward declare before use for C++ */ 290: 291: typedef struct { 292: XExtData *ext_data; /* hook for extension to hang data */ 293: struct _XDisplay *display;/* back pointer to display structure */ 294: Window root; /* Root window id. */ 295: int width, height; /* width and height of screen */ 296: int mwidth, mheight; /* width and height of in millimeters */ 297: int ndepths; /* number of depths possible */ 298: Depth *depths; /* list of allowable depths on the screen */ 299: int root_depth; /* bits per pixel */ 300: Visual *root_visual; /* root visual */ 301: GC default_gc; /* GC for the root root visual */ 302: Colormap cmap; /* default color map */ 303: unsigned long white_pixel; 304: unsigned long black_pixel; /* White and Black pixel values */ 305: int max_maps, min_maps; /* max and min color maps */ 306: int backing_store; /* Never, WhenMapped, Always */ 307: Bool save_unders; 308: long root_input_mask; /* initial root input mask */ 309: } Screen; 310: 311: /* 312: * Format structure; describes ZFormat data the screen will understand. 313: */ 314: typedef struct { 315: XExtData *ext_data; /* hook for extension to hang data */ 316: int depth; /* depth of this image format */ 317: int bits_per_pixel; /* bits/pixel at this depth */ 318: int scanline_pad; /* scanline must padded to this multiple */ 319: } ScreenFormat; 320: 321: /* 322: * Data structure for setting window attributes. 323: */ 324: typedef struct { 325: Pixmap background_pixmap; /* background or None or ParentRelative */ 326: unsigned long background_pixel; /* background pixel */ 327: Pixmap border_pixmap; /* border of the window */ 328: unsigned long border_pixel; /* border pixel value */ 329: int bit_gravity; /* one of bit gravity values */ 330: int win_gravity; /* one of the window gravity values */ 331: int backing_store; /* NotUseful, WhenMapped, Always */ 332: unsigned long backing_planes;/* planes to be preseved if possible */ 333: unsigned long backing_pixel;/* value to use in restoring planes */ 334: Bool save_under; /* should bits under be saved? (popups) */ 335: long event_mask; /* set of events that should be saved */ 336: long do_not_propagate_mask; /* set of events that should not propagate */ 337: Bool override_redirect; /* boolean value for override-redirect */ 338: Colormap colormap; /* color map to be associated with window */ 339: Cursor cursor; /* cursor to be displayed (or None) */ 340: } XSetWindowAttributes; 341: 342: typedef struct { 343: int x, y; /* location of window */ 344: int width, height; /* width and height of window */ 345: int border_width; /* border width of window */ 346: int depth; /* depth of window */ 347: Visual *visual; /* the associated visual structure */ 348: Window root; /* root of screen containing window */ 349: #if defined(__cplusplus) || defined(c_plusplus) 350: int c_class; /* C++ InputOutput, InputOnly*/ 351: #else 352: int class; /* InputOutput, InputOnly*/ 353: #endif 354: int bit_gravity; /* one of bit gravity values */ 355: int win_gravity; /* one of the window gravity values */ 356: int backing_store; /* NotUseful, WhenMapped, Always */ 357: unsigned long backing_planes;/* planes to be preserved if possible */ 358: unsigned long backing_pixel;/* value to be used when restoring planes */ 359: Bool save_under; /* boolean, should bits under be saved? */ 360: Colormap colormap; /* color map to be associated with window */ 361: Bool map_installed; /* boolean, is color map currently installed*/ 362: int map_state; /* IsUnmapped, IsUnviewable, IsViewable */ 363: long all_event_masks; /* set of events all people have interest in*/ 364: long your_event_mask; /* my event mask */ 365: long do_not_propagate_mask; /* set of events that should not propagate */ 366: Bool override_redirect; /* boolean value for override-redirect */ 367: Screen *screen; /* back pointer to correct screen */ 368: } XWindowAttributes; 369: 370: /* 371: * Data structure for host setting; getting routines. 372: * 373: */ 374: 375: typedef struct { 376: int family; /* for example FamilyInternet */ 377: int length; /* length of address, in bytes */ 378: char *address; /* pointer to where to find the bytes */ 379: } XHostAddress; 380: 381: /* 382: * Data structure for ServerFamilyInterpreted addresses in host routines 383: */ 384: typedef struct { 385: int typelength; /* length of type string, in bytes */ 386: int valuelength; /* length of value string, in bytes */ 387: char *type; /* pointer to where to find the type string */ 388: char *value; /* pointer to where to find the address */ 389: } XServerInterpretedAddress; 390: 391: /* 392: * Data structure for "image" data, used by image manipulation routines. 393: */ 394: typedef struct _XImage { 395: int width, height; /* size of image */ 396: int xoffset; /* number of pixels offset in X direction */ 397: int format; /* XYBitmap, XYPixmap, ZPixmap */ 398: char *data; /* pointer to image data */ 399: int byte_order; /* data byte order, LSBFirst, MSBFirst */ 400: int bitmap_unit; /* quant. of scanline 8, 16, 32 */ 401: int bitmap_bit_order; /* LSBFirst, MSBFirst */ 402: int bitmap_pad; /* 8, 16, 32 either XY or ZPixmap */ 403: int depth; /* depth of image */ 404: int bytes_per_line; /* accelarator to next line */ 405: int bits_per_pixel; /* bits per pixel (ZPixmap) */ 406: unsigned long red_mask; /* bits in z arrangment */ 407: unsigned long green_mask; 408: unsigned long blue_mask; 409: XPointer obdata; /* hook for the object routines to hang on */ 410: struct funcs { /* image manipulation routines */ 411: struct _XImage *(*create_image)( 412: struct _XDisplay* /* display */, 413: Visual* /* visual */, 414: unsigned int /* depth */, 415: int /* format */, 416: int /* offset */, 417: char* /* data */, 418: unsigned int /* width */, 419: unsigned int /* height */, 420: int /* bitmap_pad */, 421: int /* bytes_per_line */); 422: int (*destroy_image) (struct _XImage *); 423: unsigned long (*get_pixel) (struct _XImage *, int, int); 424: int (*put_pixel) (struct _XImage *, int, int, unsigned long); 425: struct _XImage *(*sub_image)(struct _XImage *, int, int, unsigned int, unsigned int); 426: int (*add_pixel) (struct _XImage *, long); 427: } f; 428: } XImage; 429: 430: /* 431: * Data structure for XReconfigureWindow 432: */ 433: typedef struct { 434: int x, y; 435: int width, height; 436: int border_width; 437: Window sibling; 438: int stack_mode; 439: } XWindowChanges; 440: 441: /* 442: * Data structure used by color operations 443: */ 444: typedef struct { 445: unsigned long pixel; 446: unsigned short red, green, blue; 447: char flags; /* do_red, do_green, do_blue */ 448: char pad; 449: } XColor; 450: 451: /* 452: * Data structures for graphics operations. On most machines, these are 453: * congruent with the wire protocol structures, so reformatting the data 454: * can be avoided on these architectures. 455: */ 456: typedef struct { 457: short x1, y1, x2, y2; 458: } XSegment; 459: 460: typedef struct { 461: short x, y; 462: } XPoint; 463: 464: typedef struct { 465: short x, y; 466: unsigned short width, height; 467: } XRectangle; 468: 469: typedef struct { 470: short x, y; 471: unsigned short width, height; 472: short angle1, angle2; 473: } XArc; 474: 475: 476: /* Data structure for XChangeKeyboardControl */ 477: 478: typedef struct { 479: int key_click_percent; 480: int bell_percent; 481: int bell_pitch; 482: int bell_duration; 483: int led; 484: int led_mode; 485: int key; 486: int auto_repeat_mode; /* On, Off, Default */ 487: } XKeyboardControl; 488: 489: /* Data structure for XGetKeyboardControl */ 490: 491: typedef struct { 492: int key_click_percent; 493: int bell_percent; 494: unsigned int bell_pitch, bell_duration; 495: unsigned long led_mask; 496: int global_auto_repeat; 497: char auto_repeats[32]; 498: } XKeyboardState; 499: 500: /* Data structure for XGetMotionEvents. */ 501: 502: typedef struct { 503: Time time; 504: short x, y; 505: } XTimeCoord; 506: 507: /* Data structure for X{Set,Get}ModifierMapping */ 508: 509: typedef struct { 510: int max_keypermod; /* The server's max # of keys per modifier */ 511: KeyCode *modifiermap; /* An 8 by max_keypermod array of modifiers */ 512: } XModifierKeymap; 513: 514: 515: /* 516: * Display datatype maintaining display specific data. 517: * The contents of this structure are implementation dependent. 518: * A Display should be treated as opaque by application code. 519: */ 520: #ifndef XLIB_ILLEGAL_ACCESS 521: typedef struct _XDisplay Display; 522: #endif 523: 524: struct _XPrivate; /* Forward declare before use for C++ */ 525: struct _XrmHashBucketRec; 526: 527: typedef struct 528: #ifdef XLIB_ILLEGAL_ACCESS 529: _XDisplay 530: #endif 531: { 532: XExtData *ext_data; /* hook for extension to hang data */ 533: struct _XPrivate *private1; 534: int fd; /* Network socket. */ 535: int private2; 536: int proto_major_version;/* major version of server's X protocol */ 537: int proto_minor_version;/* minor version of servers X protocol */ 538: char *vendor; /* vendor of the server hardware */ 539: XID private3; 540: XID private4; 541: XID private5; 542: int private6; 543: XID (*resource_alloc)( /* allocator function */ 544: struct _XDisplay* 545: ); 546: int byte_order; /* screen byte order, LSBFirst, MSBFirst */ 547: int bitmap_unit; /* padding and data requirements */ 548: int bitmap_pad; /* padding requirements on bitmaps */ 549: int bitmap_bit_order; /* LeastSignificant or MostSignificant */ 550: int nformats; /* number of pixmap formats in list */ 551: ScreenFormat *pixmap_format; /* pixmap format list */ 552: int private8; 553: int release; /* release of the server */ 554: struct _XPrivate *private9, *private10; 555: int qlen; /* Length of input event queue */ 556: unsigned long last_request_read; /* seq number of last event read */ 557: unsigned long request; /* sequence number of last request. */ 558: XPointer private11; 559: XPointer private12; 560: XPointer private13; 561: XPointer private14; 562: unsigned max_request_size; /* maximum number 32 bit words in request*/ 563: struct _XrmHashBucketRec *db; 564: int (*private15)( 565: struct _XDisplay* 566: ); 567: char *display_name; /* "host:display" string used on this connect*/ 568: int default_screen; /* default screen for operations */ 569: int nscreens; /* number of screens on this server*/ 570: Screen *screens; /* pointer to list of screens */ 571: unsigned long motion_buffer; /* size of motion buffer */ 572: unsigned long private16; 573: int min_keycode; /* minimum defined keycode */ 574: int max_keycode; /* maximum defined keycode */ 575: XPointer private17; 576: XPointer private18; 577: int private19; 578: char *xdefaults; /* contents of defaults from server */ 579: /* there is more to this structure, but it is private to Xlib */ 580: } 581: #ifdef XLIB_ILLEGAL_ACCESS 582: Display, 583: #endif 584: *_XPrivDisplay; 585: 586: #undef _XEVENT_ 587: #ifndef _XEVENT_ 588: /* 589: * Definitions of specific events. 590: */ 591: typedef struct { 592: int type; /* of event */ 593: unsigned long serial; /* # of last request processed by server */ 594: Bool send_event; /* true if this came from a SendEvent request */ 595: Display *display; /* Display the event was read from */ 596: Window window; /* "event" window it is reported relative to */ 597: Window root; /* root window that the event occurred on */ 598: Window subwindow; /* child window */ 599: Time time; /* milliseconds */ 600: int x, y; /* pointer x, y coordinates in event window */ 601: int x_root, y_root; /* coordinates relative to root */ 602: unsigned int state; /* key or button mask */ 603: unsigned int keycode; /* detail */ 604: Bool same_screen; /* same screen flag */ 605: } XKeyEvent; 606: typedef XKeyEvent XKeyPressedEvent; 607: typedef XKeyEvent XKeyReleasedEvent; 608: 609: typedef struct { 610: int type; /* of event */ 611: unsigned long serial; /* # of last request processed by server */ 612: Bool send_event; /* true if this came from a SendEvent request */ 613: Display *display; /* Display the event was read from */ 614: Window window; /* "event" window it is reported relative to */ 615: Window root; /* root window that the event occurred on */ 616: Window subwindow; /* child window */ 617: Time time; /* milliseconds */ 618: int x, y; /* pointer x, y coordinates in event window */ 619: int x_root, y_root; /* coordinates relative to root */ 620: unsigned int state; /* key or button mask */ 621: unsigned int button; /* detail */ 622: Bool same_screen; /* same screen flag */ 623: } XButtonEvent; 624: typedef XButtonEvent XButtonPressedEvent; 625: typedef XButtonEvent XButtonReleasedEvent; 626: 627: typedef struct { 628: int type; /* of event */ 629: unsigned long serial; /* # of last request processed by server */ 630: Bool send_event; /* true if this came from a SendEvent request */ 631: Display *display; /* Display the event was read from */ 632: Window window; /* "event" window reported relative to */ 633: Window root; /* root window that the event occurred on */ 634: Window subwindow; /* child window */ 635: Time time; /* milliseconds */ 636: int x, y; /* pointer x, y coordinates in event window */ 637: int x_root, y_root; /* coordinates relative to root */ 638: unsigned int state; /* key or button mask */ 639: char is_hint; /* detail */ 640: Bool same_screen; /* same screen flag */ 641: } XMotionEvent; 642: typedef XMotionEvent XPointerMovedEvent; 643: 644: typedef struct { 645: int type; /* of event */ 646: unsigned long serial; /* # of last request processed by server */ 647: Bool send_event; /* true if this came from a SendEvent request */ 648: Display *display; /* Display the event was read from */ 649: Window window; /* "event" window reported relative to */ 650: Window root; /* root window that the event occurred on */ 651: Window subwindow; /* child window */ 652: Time time; /* milliseconds */ 653: int x, y; /* pointer x, y coordinates in event window */ 654: int x_root, y_root; /* coordinates relative to root */ 655: int mode; /* NotifyNormal, NotifyGrab, NotifyUngrab */ 656: int detail; 657: /* 658: * NotifyAncestor, NotifyVirtual, NotifyInferior, 659: * NotifyNonlinear,NotifyNonlinearVirtual 660: */ 661: Bool same_screen; /* same screen flag */ 662: Bool focus; /* boolean focus */ 663: unsigned int state; /* key or button mask */ 664: } XCrossingEvent; 665: typedef XCrossingEvent XEnterWindowEvent; 666: typedef XCrossingEvent XLeaveWindowEvent; 667: 668: typedef struct { 669: int type; /* FocusIn or FocusOut */ 670: unsigned long serial; /* # of last request processed by server */ 671: Bool send_event; /* true if this came from a SendEvent request */ 672: Display *display; /* Display the event was read from */ 673: Window window; /* window of event */ 674: int mode; /* NotifyNormal, NotifyGrab, NotifyUngrab */ 675: int detail; 676: /* 677: * NotifyAncestor, NotifyVirtual, NotifyInferior, 678: * NotifyNonlinear,NotifyNonlinearVirtual, NotifyPointer, 679: * NotifyPointerRoot, NotifyDetailNone 680: */ 681: } XFocusChangeEvent; 682: typedef XFocusChangeEvent XFocusInEvent; 683: typedef XFocusChangeEvent XFocusOutEvent; 684: 685: /* generated on EnterWindow and FocusIn when KeyMapState selected */ 686: typedef struct { 687: int type; 688: unsigned long serial; /* # of last request processed by server */ 689: Bool send_event; /* true if this came from a SendEvent request */ 690: Display *display; /* Display the event was read from */ 691: Window window; 692: char key_vector[32]; 693: } XKeymapEvent; 694: 695: typedef struct { 696: int type; 697: unsigned long serial; /* # of last request processed by server */ 698: Bool send_event; /* true if this came from a SendEvent request */ 699: Display *display; /* Display the event was read from */ 700: Window window; 701: int x, y; 702: int width, height; 703: int count; /* if non-zero, at least this many more */ 704: } XExposeEvent; 705: 706: typedef struct { 707: int type; 708: unsigned long serial; /* # of last request processed by server */ 709: Bool send_event; /* true if this came from a SendEvent request */ 710: Display *display; /* Display the event was read from */ 711: Drawable drawable; 712: int x, y; 713: int width, height; 714: int count; /* if non-zero, at least this many more */ 715: int major_code; /* core is CopyArea or CopyPlane */ 716: int minor_code; /* not defined in the core */ 717: } XGraphicsExposeEvent; 718: 719: typedef struct { 720: int type; 721: unsigned long serial; /* # of last request processed by server */ 722: Bool send_event; /* true if this came from a SendEvent request */ 723: Display *display; /* Display the event was read from */ 724: Drawable drawable; 725: int major_code; /* core is CopyArea or CopyPlane */ 726: int minor_code; /* not defined in the core */ 727: } XNoExposeEvent; 728: 729: typedef struct { 730: int type; 731: unsigned long serial; /* # of last request processed by server */ 732: Bool send_event; /* true if this came from a SendEvent request */ 733: Display *display; /* Display the event was read from */ 734: Window window; 735: int state; /* Visibility state */ 736: } XVisibilityEvent; 737: 738: typedef struct { 739: int type; 740: unsigned long serial; /* # of last request processed by server */ 741: Bool send_event; /* true if this came from a SendEvent request */ 742: Display *display; /* Display the event was read from */ 743: Window parent; /* parent of the window */ 744: Window window; /* window id of window created */ 745: int x, y; /* window location */ 746: int width, height; /* size of window */ 747: int border_width; /* border width */ 748: Bool override_redirect; /* creation should be overridden */ 749: } XCreateWindowEvent; 750: 751: typedef struct { 752: int type; 753: unsigned long serial; /* # of last request processed by server */ 754: Bool send_event; /* true if this came from a SendEvent request */ 755: Display *display; /* Display the event was read from */ 756: Window event; 757: Window window; 758: } XDestroyWindowEvent; 759: 760: typedef struct { 761: int type; 762: unsigned long serial; /* # of last request processed by server */ 763: Bool send_event; /* true if this came from a SendEvent request */ 764: Display *display; /* Display the event was read from */ 765: Window event; 766: Window window; 767: Bool from_configure; 768: } XUnmapEvent; 769: 770: typedef struct { 771: int type; 772: unsigned long serial; /* # of last request processed by server */ 773: Bool send_event; /* true if this came from a SendEvent request */ 774: Display *display; /* Display the event was read from */ 775: Window event; 776: Window window; 777: Bool override_redirect; /* boolean, is override set... */ 778: } XMapEvent; 779: 780: typedef struct { 781: int type; 782: unsigned long serial; /* # of last request processed by server */ 783: Bool send_event; /* true if this came from a SendEvent request */ 784: Display *display; /* Display the event was read from */ 785: Window parent; 786: Window window; 787: } XMapRequestEvent; 788: 789: typedef struct { 790: int type; 791: unsigned long serial; /* # of last request processed by server */ 792: Bool send_event; /* true if this came from a SendEvent request */ 793: Display *display; /* Display the event was read from */ 794: Window event; 795: Window window; 796: Window parent; 797: int x, y; 798: Bool override_redirect; 799: } XReparentEvent; 800: 801: typedef struct { 802: int type; 803: unsigned long serial; /* # of last request processed by server */ 804: Bool send_event; /* true if this came from a SendEvent request */ 805: Display *display; /* Display the event was read from */ 806: Window event; 807: Window window; 808: int x, y; 809: int width, height; 810: int border_width; 811: Window above; 812: Bool override_redirect; 813: } XConfigureEvent; 814: 815: typedef struct { 816: int type; 817: unsigned long serial; /* # of last request processed by server */ 818: Bool send_event; /* true if this came from a SendEvent request */ 819: Display *display; /* Display the event was read from */ 820: Window event; 821: Window window; 822: int x, y; 823: } XGravityEvent; 824: 825: typedef struct { 826: int type; 827: unsigned long serial; /* # of last request processed by server */ 828: Bool send_event; /* true if this came from a SendEvent request */ 829: Display *display; /* Display the event was read from */ 830: Window window; 831: int width, height; 832: } XResizeRequestEvent; 833: 834: typedef struct { 835: int type; 836: unsigned long serial; /* # of last request processed by server */ 837: Bool send_event; /* true if this came from a SendEvent request */ 838: Display *display; /* Display the event was read from */ 839: Window parent; 840: Window window; 841: int x, y; 842: int width, height; 843: int border_width; 844: Window above; 845: int detail; /* Above, Below, TopIf, BottomIf, Opposite */ 846: unsigned long value_mask; 847: } XConfigureRequestEvent; 848: 849: typedef struct { 850: int type; 851: unsigned long serial; /* # of last request processed by server */ 852: Bool send_event; /* true if this came from a SendEvent request */ 853: Display *display; /* Display the event was read from */ 854: Window event; 855: Window window; 856: int place; /* PlaceOnTop, PlaceOnBottom */ 857: } XCirculateEvent; 858: 859: typedef struct { 860: int type; 861: unsigned long serial; /* # of last request processed by server */ 862: Bool send_event; /* true if this came from a SendEvent request */ 863: Display *display; /* Display the event was read from */ 864: Window parent; 865: Window window; 866: int place; /* PlaceOnTop, PlaceOnBottom */ 867: } XCirculateRequestEvent; 868: 869: typedef struct { 870: int type; 871: unsigned long serial; /* # of last request processed by server */ 872: Bool send_event; /* true if this came from a SendEvent request */ 873: Display *display; /* Display the event was read from */ 874: Window window; 875: Atom atom; 876: Time time; 877: int state; /* NewValue, Deleted */ 878: } XPropertyEvent; 879: 880: typedef struct { 881: int type; 882: unsigned long serial; /* # of last request processed by server */ 883: Bool send_event; /* true if this came from a SendEvent request */ 884: Display *display; /* Display the event was read from */ 885: Window window; 886: Atom selection; 887: Time time; 888: } XSelectionClearEvent; 889: 890: typedef struct { 891: int type; 892: unsigned long serial; /* # of last request processed by server */ 893: Bool send_event; /* true if this came from a SendEvent request */ 894: Display *display; /* Display the event was read from */ 895: Window owner; 896: Window requestor; 897: Atom selection; 898: Atom target; 899: Atom property; 900: Time time; 901: } XSelectionRequestEvent; 902: 903: typedef struct { 904: int type; 905: unsigned long serial; /* # of last request processed by server */ 906: Bool send_event; /* true if this came from a SendEvent request */ 907: Display *display; /* Display the event was read from */ 908: Window requestor; 909: Atom selection; 910: Atom target; 911: Atom property; /* ATOM or None */ 912: Time time; 913: } XSelectionEvent; 914: 915: typedef struct { 916: int type; 917: unsigned long serial; /* # of last request processed by server */ 918: Bool send_event; /* true if this came from a SendEvent request */ 919: Display *display; /* Display the event was read from */ 920: Window window; 921: Colormap colormap; /* COLORMAP or None */ 922: #if defined(__cplusplus) || defined(c_plusplus) 923: Bool c_new; /* C++ */ 924: #else 925: Bool new; 926: #endif 927: int state; /* ColormapInstalled, ColormapUninstalled */ 928: } XColormapEvent; 929: 930: typedef struct { 931: int type; 932: unsigned long serial; /* # of last request processed by server */ 933: Bool send_event; /* true if this came from a SendEvent request */ 934: Display *display; /* Display the event was read from */ 935: Window window; 936: Atom message_type; 937: int format; 938: union { 939: char b[20]; 940: short s[10]; 941: long l[5]; 942: } data; 943: } XClientMessageEvent; 944: 945: typedef struct { 946: int type; 947: unsigned long serial; /* # of last request processed by server */ 948: Bool send_event; /* true if this came from a SendEvent request */ 949: Display *display; /* Display the event was read from */ 950: Window window; /* unused */ 951: int request; /* one of MappingModifier, MappingKeyboard, 952: MappingPointer */ 953: int first_keycode; /* first keycode */ 954: int count; /* defines range of change w. first_keycode*/ 955: } XMappingEvent; 956: 957: typedef struct { 958: int type; 959: Display *display; /* Display the event was read from */ 960: XID resourceid; /* resource id */ 961: unsigned long serial; /* serial number of failed request */ 962: unsigned char error_code; /* error code of failed request */ 963: unsigned char request_code; /* Major op-code of failed request */ 964: unsigned char minor_code; /* Minor op-code of failed request */ 965: } XErrorEvent; 966: 967: typedef struct { 968: int type; 969: unsigned long serial; /* # of last request processed by server */ 970: Bool send_event; /* true if this came from a SendEvent request */ 971: Display *display;/* Display the event was read from */ 972: Window window; /* window on which event was requested in event mask */ 973: } XAnyEvent; 974: 975: /* 976: * this union is defined so Xlib can always use the same sized 977: * event structure internally, to avoid memory fragmentation. 978: */ 979: typedef union _XEvent { 980: int type; /* must not be changed; first element */ 981: XAnyEvent xany; 982: XKeyEvent xkey; 983: XButtonEvent xbutton; 984: XMotionEvent xmotion; 985: XCrossingEvent xcrossing; 986: XFocusChangeEvent xfocus; 987: XExposeEvent xexpose; 988: XGraphicsExposeEvent xgraphicsexpose; 989: XNoExposeEvent xnoexpose; 990: XVisibilityEvent xvisibility; 991: XCreateWindowEvent xcreatewindow; 992: XDestroyWindowEvent xdestroywindow; 993: XUnmapEvent xunmap; 994: XMapEvent xmap; 995: XMapRequestEvent xmaprequest; 996: XReparentEvent xreparent; 997: XConfigureEvent xconfigure; 998: XGravityEvent xgravity; 999: XResizeRequestEvent xresizerequest; 1000: XConfigureRequestEvent xconfigurerequest; 1001: XCirculateEvent xcirculate; 1002: XCirculateRequestEvent xcirculaterequest; 1003: XPropertyEvent xproperty; 1004: XSelectionClearEvent xselectionclear; 1005: XSelectionRequestEvent xselectionrequest; 1006: XSelectionEvent xselection; 1007: XColormapEvent xcolormap; 1008: XClientMessageEvent xclient; 1009: XMappingEvent xmapping; 1010: XErrorEvent xerror; 1011: XKeymapEvent xkeymap; 1012: long pad[24]; 1013: } XEvent; 1014: #endif 1015: 1016: #define XAllocID(dpy) ((*((_XPrivDisplay)dpy)->resource_alloc)((dpy))) 1017: 1018: /* 1019: * per character font metric information. 1020: */ 1021: typedef struct { 1022: short lbearing; /* origin to left edge of raster */ 1023: short rbearing; /* origin to right edge of raster */ 1024: short width; /* advance to next char's origin */ 1025: short ascent; /* baseline to top edge of raster */ 1026: short descent; /* baseline to bottom edge of raster */ 1027: unsigned short attributes; /* per char flags (not predefined) */ 1028: } XCharStruct; 1029: 1030: /* 1031: * To allow arbitrary information with fonts, there are additional properties 1032: * returned. 1033: */ 1034: typedef struct { 1035: Atom name; 1036: unsigned long card32; 1037: } XFontProp; 1038: 1039: typedef struct { 1040: XExtData *ext_data; /* hook for extension to hang data */ 1041: Font fid; /* Font id for this font */ 1042: unsigned direction; /* hint about direction the font is painted */ 1043: unsigned min_char_or_byte2;/* first character */ 1044: unsigned max_char_or_byte2;/* last character */ 1045: unsigned min_byte1; /* first row that exists */ 1046: unsigned max_byte1; /* last row that exists */ 1047: Bool all_chars_exist;/* flag if all characters have non-zero size*/ 1048: unsigned default_char; /* char to print for undefined character */ 1049: int n_properties; /* how many properties there are */ 1050: XFontProp *properties; /* pointer to array of additional properties*/ 1051: XCharStruct min_bounds; /* minimum bounds over all existing char*/ 1052: XCharStruct max_bounds; /* maximum bounds over all existing char*/ 1053: XCharStruct *per_char; /* first_char to last_char information */ 1054: int ascent; /* log. extent above baseline for spacing */ 1055: int descent; /* log. descent below baseline for spacing */ 1056: } XFontStruct; 1057: 1058: /* 1059: * PolyText routines take these as arguments. 1060: */ 1061: typedef struct { 1062: char *chars; /* pointer to string */ 1063: int nchars; /* number of characters */ 1064: int delta; /* delta between strings */ 1065: Font font; /* font to print it in, None don't change */ 1066: } XTextItem; 1067: 1068: typedef struct { /* normal 16 bit characters are two bytes */ 1069: unsigned char byte1; 1070: unsigned char byte2; 1071: } XChar2b; 1072: 1073: typedef struct { 1074: XChar2b *chars; /* two byte characters */ 1075: int nchars; /* number of characters */ 1076: int delta; /* delta between strings */ 1077: Font font; /* font to print it in, None don't change */ 1078: } XTextItem16; 1079: 1080: 1081: typedef union { Display *display; 1082: GC gc; 1083: Visual *visual; 1084: Screen *screen; 1085: ScreenFormat *pixmap_format; 1086: XFontStruct *font; } XEDataObject; 1087: 1088: typedef struct { 1089: XRectangle max_ink_extent; 1090: XRectangle max_logical_extent; 1091: } XFontSetExtents; 1092: 1093: /* unused: 1094: typedef void (*XOMProc)(); 1095: */ 1096: 1097: typedef struct _XOM *XOM; 1098: typedef struct _XOC *XOC, *XFontSet; 1099: 1100: typedef struct { 1101: char *chars; 1102: int nchars; 1103: int delta; 1104: XFontSet font_set; 1105: } XmbTextItem; 1106: 1107: typedef struct { 1108: wchar_t *chars; 1109: int nchars; 1110: int delta; 1111: XFontSet font_set; 1112: } XwcTextItem; 1113: 1114: #define XNRequiredCharSet "requiredCharSet" 1115: #define XNQueryOrientation "queryOrientation" 1116: #define XNBaseFontName "baseFontName" 1117: #define XNOMAutomatic "omAutomatic" 1118: #define XNMissingCharSet "missingCharSet" 1119: #define XNDefaultString "defaultString" 1120: #define XNOrientation "orientation" 1121: #define XNDirectionalDependentDrawing "directionalDependentDrawing" 1122: #define XNContextualDrawing "contextualDrawing" 1123: #define XNFontInfo "fontInfo" 1124: 1125: typedef struct { 1126: int charset_count; 1127: char **charset_list; 1128: } XOMCharSetList; 1129: 1130: typedef enum { 1131: XOMOrientation_LTR_TTB, 1132: XOMOrientation_RTL_TTB, 1133: XOMOrientation_TTB_LTR, 1134: XOMOrientation_TTB_RTL, 1135: XOMOrientation_Context 1136: } XOrientation; 1137: 1138: typedef struct { 1139: int num_orientation; 1140: XOrientation *orientation; /* Input Text description */ 1141: } XOMOrientation; 1142: 1143: typedef struct { 1144: int num_font; 1145: XFontStruct **font_struct_list; 1146: char **font_name_list; 1147: } XOMFontInfo; 1148: 1149: typedef struct _XIM *XIM; 1150: typedef struct _XIC *XIC; 1151: 1152: typedef void (*XIMProc)( 1153: XIM, 1154: XPointer, 1155: XPointer 1156: ); 1157: 1158: typedef Bool (*XICProc)( 1159: XIC, 1160: XPointer, 1161: XPointer 1162: ); 1163: 1164: typedef void (*XIDProc)( 1165: Display*, 1166: XPointer, 1167: XPointer 1168: ); 1169: 1170: typedef unsigned long XIMStyle; 1171: 1172: typedef struct { 1173: unsigned short count_styles; 1174: XIMStyle *supported_styles; 1175: } XIMStyles; 1176: 1177: #define XIMPreeditArea 0x0001L 1178: #define XIMPreeditCallbacks 0x0002L 1179: #define XIMPreeditPosition 0x0004L 1180: #define XIMPreeditNothing 0x0008L 1181: #define XIMPreeditNone 0x0010L 1182: #define XIMStatusArea 0x0100L 1183: #define XIMStatusCallbacks 0x0200L 1184: #define XIMStatusNothing 0x0400L 1185: #define XIMStatusNone 0x0800L 1186: 1187: #define XNVaNestedList "XNVaNestedList" 1188: #define XNQueryInputStyle "queryInputStyle" 1189: #define XNClientWindow "clientWindow" 1190: #define XNInputStyle "inputStyle" 1191: #define XNFocusWindow "focusWindow" 1192: #define XNResourceName "resourceName" 1193: #define XNResourceClass "resourceClass" 1194: #define XNGeometryCallback "geometryCallback" 1195: #define XNDestroyCallback "destroyCallback" 1196: #define XNFilterEvents "filterEvents" 1197: #define XNPreeditStartCallback "preeditStartCallback" 1198: #define XNPreeditDoneCallback "preeditDoneCallback" 1199: #define XNPreeditDrawCallback "preeditDrawCallback" 1200: #define XNPreeditCaretCallback "preeditCaretCallback" 1201: #define XNPreeditStateNotifyCallback "preeditStateNotifyCallback" 1202: #define XNPreeditAttributes "preeditAttributes" 1203: #define XNStatusStartCallback "statusStartCallback" 1204: #define XNStatusDoneCallback "statusDoneCallback" 1205: #define XNStatusDrawCallback "statusDrawCallback" 1206: #define XNStatusAttributes "statusAttributes" 1207: #define XNArea "area" 1208: #define XNAreaNeeded "areaNeeded" 1209: #define XNSpotLocation "spotLocation" 1210: #define XNColormap "colorMap" 1211: #define XNStdColormap "stdColorMap" 1212: #define XNForeground "foreground" 1213: #define XNBackground "background" 1214: #define XNBackgroundPixmap "backgroundPixmap" 1215: #define XNFontSet "fontSet" 1216: #define XNLineSpace "lineSpace" 1217: #define XNCursor "cursor" 1218: 1219: #define XNQueryIMValuesList "queryIMValuesList" 1220: #define XNQueryICValuesList "queryICValuesList" 1221: #define XNVisiblePosition "visiblePosition" 1222: #define XNR6PreeditCallback "r6PreeditCallback" 1223: #define XNStringConversionCallback "stringConversionCallback" 1224: #define XNStringConversion "stringConversion" 1225: #define XNResetState "resetState" 1226: #define XNHotKey "hotKey" 1227: #define XNHotKeyState "hotKeyState" 1228: #define XNPreeditState "preeditState" 1229: #define XNSeparatorofNestedList "separatorofNestedList" 1230: 1231: #define XBufferOverflow -1 1232: #define XLookupNone 1 1233: #define XLookupChars 2 1234: #define XLookupKeySym 3 1235: #define XLookupBoth 4 1236: 1237: typedef void *XVaNestedList; 1238: 1239: typedef struct { 1240: XPointer client_data; 1241: XIMProc callback; 1242: } XIMCallback; 1243: 1244: typedef struct { 1245: XPointer client_data; 1246: XICProc callback; 1247: } XICCallback; 1248: 1249: typedef unsigned long XIMFeedback; 1250: 1251: #define XIMReverse 1L 1252: #define XIMUnderline (1L<<1) 1253: #define XIMHighlight (1L<<2) 1254: #define XIMPrimary (1L<<5) 1255: #define XIMSecondary (1L<<6) 1256: #define XIMTertiary (1L<<7) 1257: #define XIMVisibleToForward (1L<<8) 1258: #define XIMVisibleToBackword (1L<<9) 1259: #define XIMVisibleToCenter (1L<<10) 1260: 1261: typedef struct _XIMText { 1262: unsigned short length; 1263: XIMFeedback *feedback; 1264: Bool encoding_is_wchar; 1265: union { 1266: char *multi_byte; 1267: wchar_t *wide_char; 1268: } string; 1269: } XIMText; 1270: 1271: typedef unsigned long XIMPreeditState; 1272: 1273: #define XIMPreeditUnKnown 0L 1274: #define XIMPreeditEnable 1L 1275: #define XIMPreeditDisable (1L<<1) 1276: 1277: typedef struct _XIMPreeditStateNotifyCallbackStruct { 1278: XIMPreeditState state; 1279: } XIMPreeditStateNotifyCallbackStruct; 1280: 1281: typedef unsigned long XIMResetState; 1282: 1283: #define XIMInitialState 1L 1284: #define XIMPreserveState (1L<<1) 1285: 1286: typedef unsigned long XIMStringConversionFeedback; 1287: 1288: #define XIMStringConversionLeftEdge (0x00000001) 1289: #define XIMStringConversionRightEdge (0x00000002) 1290: #define XIMStringConversionTopEdge (0x00000004) 1291: #define XIMStringConversionBottomEdge (0x00000008) 1292: #define XIMStringConversionConcealed (0x00000010) 1293: #define XIMStringConversionWrapped (0x00000020) 1294: 1295: typedef struct _XIMStringConversionText { 1296: unsigned short length; 1297: XIMStringConversionFeedback *feedback; 1298: Bool encoding_is_wchar; 1299: union { 1300: char *mbs; 1301: wchar_t *wcs; 1302: } string; 1303: } XIMStringConversionText; 1304: 1305: typedef unsigned short XIMStringConversionPosition; 1306: 1307: typedef unsigned short XIMStringConversionType; 1308: 1309: #define XIMStringConversionBuffer (0x0001) 1310: #define XIMStringConversionLine (0x0002) 1311: #define XIMStringConversionWord (0x0003) 1312: #define XIMStringConversionChar (0x0004) 1313: 1314: typedef unsigned short XIMStringConversionOperation; 1315: 1316: #define XIMStringConversionSubstitution (0x0001) 1317: #define XIMStringConversionRetrieval (0x0002) 1318: 1319: typedef enum { 1320: XIMForwardChar, XIMBackwardChar, 1321: XIMForwardWord, XIMBackwardWord, 1322: XIMCaretUp, XIMCaretDown, 1323: XIMNextLine, XIMPreviousLine, 1324: XIMLineStart, XIMLineEnd, 1325: XIMAbsolutePosition, 1326: XIMDontChange 1327: } XIMCaretDirection; 1328: 1329: typedef struct _XIMStringConversionCallbackStruct { 1330: XIMStringConversionPosition position; 1331: XIMCaretDirection direction; 1332: XIMStringConversionOperation operation; 1333: unsigned short factor; 1334: XIMStringConversionText *text; 1335: } XIMStringConversionCallbackStruct; 1336: 1337: typedef struct _XIMPreeditDrawCallbackStruct { 1338: int caret; /* Cursor offset within pre-edit string */ 1339: int chg_first; /* Starting change position */ 1340: int chg_length; /* Length of the change in character count */ 1341: XIMText *text; 1342: } XIMPreeditDrawCallbackStruct; 1343: 1344: typedef enum { 1345: XIMIsInvisible, /* Disable caret feedback */ 1346: XIMIsPrimary, /* UI defined caret feedback */ 1347: XIMIsSecondary /* UI defined caret feedback */ 1348: } XIMCaretStyle; 1349: 1350: typedef struct _XIMPreeditCaretCallbackStruct { 1351: int position; /* Caret offset within pre-edit string */ 1352: XIMCaretDirection direction; /* Caret moves direction */ 1353: XIMCaretStyle style; /* Feedback of the caret */ 1354: } XIMPreeditCaretCallbackStruct; 1355: 1356: typedef enum { 1357: XIMTextType, 1358: XIMBitmapType 1359: } XIMStatusDataType; 1360: 1361: typedef struct _XIMStatusDrawCallbackStruct { 1362: XIMStatusDataType type; 1363: union { 1364: XIMText *text; 1365: Pixmap bitmap; 1366: } data; 1367: } XIMStatusDrawCallbackStruct; 1368: 1369: typedef struct _XIMHotKeyTrigger { 1370: KeySym keysym; 1371: int modifier; 1372: int modifier_mask; 1373: } XIMHotKeyTrigger; 1374: 1375: typedef struct _XIMHotKeyTriggers { 1376: int num_hot_key; 1377: XIMHotKeyTrigger *key; 1378: } XIMHotKeyTriggers; 1379: 1380: typedef unsigned long XIMHotKeyState; 1381: 1382: #define XIMHotKeyStateON (0x0001L) 1383: #define XIMHotKeyStateOFF (0x0002L) 1384: 1385: typedef struct { 1386: unsigned short count_values; 1387: char **supported_values; 1388: } XIMValuesList; 1389: 1390: _XFUNCPROTOBEGIN 1391: 1392: #if defined(WIN32) && !defined(_XLIBINT_) 1393: #define _Xdebug (*_Xdebug_p) 1394: #endif 1395: 1396: extern int _Xdebug; 1397: 1398: extern XFontStruct *XLoadQueryFont( 1399: Display* /* display */, 1400: _Xconst char* /* name */ 1401: ); 1402: 1403: extern XFontStruct *XQueryFont( 1404: Display* /* display */, 1405: XID /* font_ID */ 1406: ); 1407: 1408: 1409: extern XTimeCoord *XGetMotionEvents( 1410: Display* /* display */, 1411: Window /* w */, 1412: Time /* start */, 1413: Time /* stop */, 1414: int* /* nevents_return */ 1415: ); 1416: 1417: extern XModifierKeymap *XDeleteModifiermapEntry( 1418: XModifierKeymap* /* modmap */, 1419: #if NeedWidePrototypes 1420: unsigned int /* keycode_entry */, 1421: #else 1422: KeyCode /* keycode_entry */, 1423: #endif 1424: int /* modifier */ 1425: ); 1426: 1427: extern XModifierKeymap *XGetModifierMapping( 1428: Display* /* display */ 1429: ); 1430: 1431: extern XModifierKeymap *XInsertModifiermapEntry( 1432: XModifierKeymap* /* modmap */, 1433: #if NeedWidePrototypes 1434: unsigned int /* keycode_entry */, 1435: #else 1436: KeyCode /* keycode_entry */, 1437: #endif 1438: int /* modifier */ 1439: ); 1440: 1441: extern XModifierKeymap *XNewModifiermap( 1442: int /* max_keys_per_mod */ 1443: ); 1444: 1445: extern XImage *XCreateImage( 1446: Display* /* display */, 1447: Visual* /* visual */, 1448: unsigned int /* depth */, 1449: int /* format */, 1450: int /* offset */, 1451: char* /* data */, 1452: unsigned int /* width */, 1453: unsigned int /* height */, 1454: int /* bitmap_pad */, 1455: int /* bytes_per_line */ 1456: ); 1457: extern Status XInitImage( 1458: XImage* /* image */ 1459: ); 1460: extern XImage *XGetImage( 1461: Display* /* display */, 1462: Drawable /* d */, 1463: int /* x */, 1464: int /* y */, 1465: unsigned int /* width */, 1466: unsigned int /* height */, 1467: unsigned long /* plane_mask */, 1468: int /* format */ 1469: ); 1470: extern XImage *XGetSubImage( 1471: Display* /* display */, 1472: Drawable /* d */, 1473: int /* x */, 1474: int /* y */, 1475: unsigned int /* width */, 1476: unsigned int /* height */, 1477: unsigned long /* plane_mask */, 1478: int /* format */, 1479: XImage* /* dest_image */, 1480: int /* dest_x */, 1481: int /* dest_y */ 1482: ); 1483: 1484: /* 1485: * X function declarations. 1486: */ 1487: extern Display *XOpenDisplay( 1488: _Xconst char* /* display_name */ 1489: ); 1490: 1491: extern void XrmInitialize( 1492: void 1493: ); 1494: 1495: extern char *XFetchBytes( 1496: Display* /* display */, 1497: int* /* nbytes_return */ 1498: ); 1499: extern char *XFetchBuffer( 1500: Display* /* display */, 1501: int* /* nbytes_return */, 1502: int /* buffer */ 1503: ); 1504: extern char *XGetAtomName( 1505: Display* /* display */, 1506: Atom /* atom */ 1507: ); 1508: extern Status XGetAtomNames( 1509: Display* /* dpy */, 1510: Atom* /* atoms */, 1511: int /* count */, 1512: char** /* names_return */ 1513: ); 1514: extern char *XGetDefault( 1515: Display* /* display */, 1516: _Xconst char* /* program */, 1517: _Xconst char* /* option */ 1518: ); 1519: extern char *XDisplayName( 1520: _Xconst char* /* string */ 1521: ); 1522: extern char *XKeysymToString( 1523: KeySym /* keysym */ 1524: ); 1525: 1526: extern int (*XSynchronize( 1527: Display* /* display */, 1528: Bool /* onoff */ 1529: ))( 1530: Display* /* display */ 1531: ); 1532: extern int (*XSetAfterFunction( 1533: Display* /* display */, 1534: int (*) ( 1535: Display* /* display */ 1536: ) /* procedure */ 1537: ))( 1538: Display* /* display */ 1539: ); 1540: extern Atom XInternAtom( 1541: Display* /* display */, 1542: _Xconst char* /* atom_name */, 1543: Bool /* only_if_exists */ 1544: ); 1545: extern Status XInternAtoms( 1546: Display* /* dpy */, 1547: char** /* names */, 1548: int /* count */, 1549: Bool /* onlyIfExists */, 1550: Atom* /* atoms_return */ 1551: ); 1552: extern Colormap XCopyColormapAndFree( 1553: Display* /* display */, 1554: Colormap /* colormap */ 1555: ); 1556: extern Colormap XCreateColormap( 1557: Display* /* display */, 1558: Window /* w */, 1559: Visual* /* visual */, 1560: int /* alloc */ 1561: ); 1562: extern Cursor XCreatePixmapCursor( 1563: Display* /* display */, 1564: Pixmap /* source */, 1565: Pixmap /* mask */, 1566: XColor* /* foreground_color */, 1567: XColor* /* background_color */, 1568: unsigned int /* x */, 1569: unsigned int /* y */ 1570: ); 1571: extern Cursor XCreateGlyphCursor( 1572: Display* /* display */, 1573: Font /* source_font */, 1574: Font /* mask_font */, 1575: unsigned int /* source_char */, 1576: unsigned int /* mask_char */, 1577: XColor _Xconst * /* foreground_color */, 1578: XColor _Xconst * /* background_color */ 1579: ); 1580: extern Cursor XCreateFontCursor( 1581: Display* /* display */, 1582: unsigned int /* shape */ 1583: ); 1584: extern Font XLoadFont( 1585: Display* /* display */, 1586: _Xconst char* /* name */ 1587: ); 1588: extern GC XCreateGC( 1589: Display* /* display */, 1590: Drawable /* d */, 1591: unsigned long /* valuemask */, 1592: XGCValues* /* values */ 1593: ); 1594: extern GContext XGContextFromGC( 1595: GC /* gc */ 1596: ); 1597: extern void XFlushGC( 1598: Display* /* display */, 1599: GC /* gc */ 1600: ); 1601: extern Pixmap XCreatePixmap( 1602: Display* /* display */, 1603: Drawable /* d */, 1604: unsigned int /* width */, 1605: unsigned int /* height */, 1606: unsigned int /* depth */ 1607: ); 1608: extern Pixmap XCreateBitmapFromData( 1609: Display* /* display */, 1610: Drawable /* d */, 1611: _Xconst char* /* data */, 1612: unsigned int /* width */, 1613: unsigned int /* height */ 1614: ); 1615: extern Pixmap XCreatePixmapFromBitmapData( 1616: Display* /* display */, 1617: Drawable /* d */, 1618: char* /* data */, 1619: unsigned int /* width */, 1620: unsigned int /* height */, 1621: unsigned long /* fg */, 1622: unsigned long /* bg */, 1623: unsigned int /* depth */ 1624: ); 1625: extern Window XCreateSimpleWindow( 1626: Display* /* display */, 1627: Window /* parent */, 1628: int /* x */, 1629: int /* y */, 1630: unsigned int /* width */, 1631: unsigned int /* height */, 1632: unsigned int /* border_width */, 1633: unsigned long /* border */, 1634: unsigned long /* background */ 1635: ); 1636: extern Window XGetSelectionOwner( 1637: Display* /* display */, 1638: Atom /* selection */ 1639: ); 1640: extern Window XCreateWindow( 1641: Display* /* display */, 1642: Window /* parent */, 1643: int /* x */, 1644: int /* y */, 1645: unsigned int /* width */, 1646: unsigned int /* height */, 1647: unsigned int /* border_width */, 1648: int /* depth */, 1649: unsigned int /* class */, 1650: Visual* /* visual */, 1651: unsigned long /* valuemask */, 1652: XSetWindowAttributes* /* attributes */ 1653: ); 1654: extern Colormap *XListInstalledColormaps( 1655: Display* /* display */, 1656: Window /* w */, 1657: int* /* num_return */ 1658: ); 1659: extern char **XListFonts( 1660: Display* /* display */, 1661: _Xconst char* /* pattern */, 1662: int /* maxnames */, 1663: int* /* actual_count_return */ 1664: ); 1665: extern char **XListFontsWithInfo( 1666: Display* /* display */, 1667: _Xconst char* /* pattern */, 1668: int /* maxnames */, 1669: int* /* count_return */, 1670: XFontStruct** /* info_return */ 1671: ); 1672: extern char **XGetFontPath( 1673: Display* /* display */, 1674: int* /* npaths_return */ 1675: ); 1676: extern char **XListExtensions( 1677: Display* /* display */, 1678: int* /* nextensions_return */ 1679: ); 1680: extern Atom *XListProperties( 1681: Display* /* display */, 1682: Window /* w */, 1683: int* /* num_prop_return */ 1684: ); 1685: extern XHostAddress *XListHosts( 1686: Display* /* display */, 1687: int* /* nhosts_return */, 1688: Bool* /* state_return */ 1689: ); 1690: extern KeySym XKeycodeToKeysym( 1691: Display* /* display */, 1692: #if NeedWidePrototypes 1693: unsigned int /* keycode */, 1694: #else 1695: KeyCode /* keycode */, 1696: #endif 1697: int /* index */ 1698: ); 1699: extern KeySym XLookupKeysym( 1700: XKeyEvent* /* key_event */, 1701: int /* index */ 1702: ); 1703: extern KeySym *XGetKeyboardMapping( 1704: Display* /* display */, 1705: #if NeedWidePrototypes 1706: unsigned int /* first_keycode */, 1707: #else 1708: KeyCode /* first_keycode */, 1709: #endif 1710: int /* keycode_count */, 1711: int* /* keysyms_per_keycode_return */ 1712: ); 1713: extern KeySym XStringToKeysym( 1714: _Xconst char* /* string */ 1715: ); 1716: extern long XMaxRequestSize( 1717: Display* /* display */ 1718: ); 1719: extern long XExtendedMaxRequestSize( 1720: Display* /* display */ 1721: ); 1722: extern char *XResourceManagerString( 1723: Display* /* display */ 1724: ); 1725: extern char *XScreenResourceString( 1726: Screen* /* screen */ 1727: ); 1728: extern unsigned long XDisplayMotionBufferSize( 1729: Display* /* display */ 1730: ); 1731: extern VisualID XVisualIDFromVisual( 1732: Visual* /* visual */ 1733: ); 1734: 1735: /* multithread routines */ 1736: 1737: extern Status XInitThreads( 1738: void 1739: ); 1740: 1741: extern void XLockDisplay( 1742: Display* /* display */ 1743: ); 1744: 1745: extern void XUnlockDisplay( 1746: Display* /* display */ 1747: ); 1748: 1749: /* routines for dealing with extensions */ 1750: 1751: extern XExtCodes *XInitExtension( 1752: Display* /* display */, 1753: _Xconst char* /* name */ 1754: ); 1755: 1756: extern XExtCodes *XAddExtension( 1757: Display* /* display */ 1758: ); 1759: extern XExtData *XFindOnExtensionList( 1760: XExtData** /* structure */, 1761: int /* number */ 1762: ); 1763: extern XExtData **XEHeadOfExtensionList( 1764: XEDataObject /* object */ 1765: ); 1766: 1767: /* these are routines for which there are also macros */ 1768: extern Window XRootWindow( 1769: Display* /* display */, 1770: int /* screen_number */ 1771: ); 1772: extern Window XDefaultRootWindow( 1773: Display* /* display */ 1774: ); 1775: extern Window XRootWindowOfScreen( 1776: Screen* /* screen */ 1777: ); 1778: extern Visual *XDefaultVisual( 1779: Display* /* display */, 1780: int /* screen_number */ 1781: ); 1782: extern Visual *XDefaultVisualOfScreen( 1783: Screen* /* screen */ 1784: ); 1785: extern GC XDefaultGC( 1786: Display* /* display */, 1787: int /* screen_number */ 1788: ); 1789: extern GC XDefaultGCOfScreen( 1790: Screen* /* screen */ 1791: ); 1792: extern unsigned long XBlackPixel( 1793: Display* /* display */, 1794: int /* screen_number */ 1795: ); 1796: extern unsigned long XWhitePixel( 1797: Display* /* display */, 1798: int /* screen_number */ 1799: ); 1800: extern unsigned long XAllPlanes( 1801: void 1802: ); 1803: extern unsigned long XBlackPixelOfScreen( 1804: Screen* /* screen */ 1805: ); 1806: extern unsigned long XWhitePixelOfScreen( 1807: Screen* /* screen */ 1808: ); 1809: extern unsigned long XNextRequest( 1810: Display* /* display */ 1811: ); 1812: extern unsigned long XLastKnownRequestProcessed( 1813: Display* /* display */ 1814: ); 1815: extern char *XServerVendor( 1816: Display* /* display */ 1817: ); 1818: extern char *XDisplayString( 1819: Display* /* display */ 1820: ); 1821: extern Colormap XDefaultColormap( 1822: Display* /* display */, 1823: int /* screen_number */ 1824: ); 1825: extern Colormap XDefaultColormapOfScreen( 1826: Screen* /* screen */ 1827: ); 1828: extern Display *XDisplayOfScreen( 1829: Screen* /* screen */ 1830: ); 1831: extern Screen *XScreenOfDisplay( 1832: Display* /* display */, 1833: int /* screen_number */ 1834: ); 1835: extern Screen *XDefaultScreenOfDisplay( 1836: Display* /* display */ 1837: ); 1838: extern long XEventMaskOfScreen( 1839: Screen* /* screen */ 1840: ); 1841: 1842: extern int XScreenNumberOfScreen( 1843: Screen* /* screen */ 1844: ); 1845: 1846: typedef int (*XErrorHandler) ( /* WARNING, this type not in Xlib spec */ 1847: Display* /* display */, 1848: XErrorEvent* /* error_event */ 1849: ); 1850: 1851: extern XErrorHandler XSetErrorHandler ( 1852: XErrorHandler /* handler */ 1853: ); 1854: 1855: 1856: typedef int (*XIOErrorHandler) ( /* WARNING, this type not in Xlib spec */ 1857: Display* /* display */ 1858: ); 1859: 1860: extern XIOErrorHandler XSetIOErrorHandler ( 1861: XIOErrorHandler /* handler */ 1862: ); 1863: 1864: 1865: extern XPixmapFormatValues *XListPixmapFormats( 1866: Display* /* display */, 1867: int* /* count_return */ 1868: ); 1869: extern int *XListDepths( 1870: Display* /* display */, 1871: int /* screen_number */, 1872: int* /* count_return */ 1873: ); 1874: 1875: /* ICCCM routines for things that don't require special include files; */ 1876: /* other declarations are given in Xutil.h */ 1877: extern Status XReconfigureWMWindow( 1878: Display* /* display */, 1879: Window /* w */, 1880: int /* screen_number */, 1881: unsigned int /* mask */, 1882: XWindowChanges* /* changes */ 1883: ); 1884: 1885: extern Status XGetWMProtocols( 1886: Display* /* display */, 1887: Window /* w */, 1888: Atom** /* protocols_return */, 1889: int* /* count_return */ 1890: ); 1891: extern Status XSetWMProtocols( 1892: Display* /* display */, 1893: Window /* w */, 1894: Atom* /* protocols */, 1895: int /* count */ 1896: ); 1897: extern Status XIconifyWindow( 1898: Display* /* display */, 1899: Window /* w */, 1900: int /* screen_number */ 1901: ); 1902: extern Status XWithdrawWindow( 1903: Display* /* display */, 1904: Window /* w */, 1905: int /* screen_number */ 1906: ); 1907: extern Status XGetCommand( 1908: Display* /* display */, 1909: Window /* w */, 1910: char*** /* argv_return */, 1911: int* /* argc_return */ 1912: ); 1913: extern Status XGetWMColormapWindows( 1914: Display* /* display */, 1915: Window /* w */, 1916: Window** /* windows_return */, 1917: int* /* count_return */ 1918: ); 1919: extern Status XSetWMColormapWindows( 1920: Display* /* display */, 1921: Window /* w */, 1922: Window* /* colormap_windows */, 1923: int /* count */ 1924: ); 1925: extern void XFreeStringList( 1926: char** /* list */ 1927: ); 1928: extern int XSetTransientForHint( 1929: Display* /* display */, 1930: Window /* w */, 1931: Window /* prop_window */ 1932: ); 1933: 1934: /* The following are given in alphabetical order */ 1935: 1936: extern int XActivateScreenSaver( 1937: Display* /* display */ 1938: ); 1939: 1940: extern int XAddHost( 1941: Display* /* display */, 1942: XHostAddress* /* host */ 1943: ); 1944: 1945: extern int XAddHosts( 1946: Display* /* display */, 1947: XHostAddress* /* hosts */, 1948: int /* num_hosts */ 1949: ); 1950: 1951: extern int XAddToExtensionList( 1952: struct _XExtData** /* structure */, 1953: XExtData* /* ext_data */ 1954: ); 1955: 1956: extern int XAddToSaveSet( 1957: Display* /* display */, 1958: Window /* w */ 1959: ); 1960: 1961: extern Status XAllocColor( 1962: Display* /* display */, 1963: Colormap /* colormap */, 1964: XColor* /* screen_in_out */ 1965: ); 1966: 1967: extern Status XAllocColorCells( 1968: Display* /* display */, 1969: Colormap /* colormap */, 1970: Bool /* contig */, 1971: unsigned long* /* plane_masks_return */, 1972: unsigned int /* nplanes */, 1973: unsigned long* /* pixels_return */, 1974: unsigned int /* npixels */ 1975: ); 1976: 1977: extern Status XAllocColorPlanes( 1978: Display* /* display */, 1979: Colormap /* colormap */, 1980: Bool /* contig */, 1981: unsigned long* /* pixels_return */, 1982: int /* ncolors */, 1983: int /* nreds */, 1984: int /* ngreens */, 1985: int /* nblues */, 1986: unsigned long* /* rmask_return */, 1987: unsigned long* /* gmask_return */, 1988: unsigned long* /* bmask_return */ 1989: ); 1990: 1991: extern Status XAllocNamedColor( 1992: Display* /* display */, 1993: Colormap /* colormap */, 1994: _Xconst char* /* color_name */, 1995: XColor* /* screen_def_return */, 1996: XColor* /* exact_def_return */ 1997: ); 1998: 1999: extern int XAllowEvents( 2000: Display* /* display */, 2001: int /* event_mode */, 2002: Time /* time */ 2003: ); 2004: 2005: extern int XAutoRepeatOff( 2006: Display* /* display */ 2007: ); 2008: 2009: extern int XAutoRepeatOn( 2010: Display* /* display */ 2011: ); 2012: 2013: extern int XBell( 2014: Display* /* display */, 2015: int /* percent */ 2016: ); 2017: 2018: extern int XBitmapBitOrder( 2019: Display* /* display */ 2020: ); 2021: 2022: extern int XBitmapPad( 2023: Display* /* display */ 2024: ); 2025: 2026: extern int XBitmapUnit( 2027: Display* /* display */ 2028: ); 2029: 2030: extern int XCellsOfScreen( 2031: Screen* /* screen */ 2032: ); 2033: 2034: extern int XChangeActivePointerGrab( 2035: Display* /* display */, 2036: unsigned int /* event_mask */, 2037: Cursor /* cursor */, 2038: Time /* time */ 2039: ); 2040: 2041: extern int XChangeGC( 2042: Display* /* display */, 2043: GC /* gc */, 2044: unsigned long /* valuemask */, 2045: XGCValues* /* values */ 2046: ); 2047: 2048: extern int XChangeKeyboardControl( 2049: Display* /* display */, 2050: unsigned long /* value_mask */, 2051: XKeyboardControl* /* values */ 2052: ); 2053: 2054: extern int XChangeKeyboardMapping( 2055: Display* /* display */, 2056: int /* first_keycode */, 2057: int /* keysyms_per_keycode */, 2058: KeySym* /* keysyms */, 2059: int /* num_codes */ 2060: ); 2061: 2062: extern int XChangePointerControl( 2063: Display* /* display */, 2064: Bool /* do_accel */, 2065: Bool /* do_threshold */, 2066: int /* accel_numerator */, 2067: int /* accel_denominator */, 2068: int /* threshold */ 2069: ); 2070: 2071: extern int XChangeProperty( 2072: Display* /* display */, 2073: Window /* w */, 2074: Atom /* property */, 2075: Atom /* type */, 2076: int /* format */, 2077: int /* mode */, 2078: _Xconst unsigned char* /* data */, 2079: int /* nelements */ 2080: ); 2081: 2082: extern int XChangeSaveSet( 2083: Display* /* display */, 2084: Window /* w */, 2085: int /* change_mode */ 2086: ); 2087: 2088: extern int XChangeWindowAttributes( 2089: Display* /* display */, 2090: Window /* w */, 2091: unsigned long /* valuemask */, 2092: XSetWindowAttributes* /* attributes */ 2093: ); 2094: 2095: extern Bool XCheckIfEvent( 2096: Display* /* display */, 2097: XEvent* /* event_return */, 2098: Bool (*) ( 2099: Display* /* display */, 2100: XEvent* /* event */, 2101: XPointer /* arg */ 2102: ) /* predicate */, 2103: XPointer /* arg */ 2104: ); 2105: 2106: extern Bool XCheckMaskEvent( 2107: Display* /* display */, 2108: long /* event_mask */, 2109: XEvent* /* event_return */ 2110: ); 2111: 2112: extern Bool XCheckTypedEvent( 2113: Display* /* display */, 2114: int /* event_type */, 2115: XEvent* /* event_return */ 2116: ); 2117: 2118: extern Bool XCheckTypedWindowEvent( 2119: Display* /* display */, 2120: Window /* w */, 2121: int /* event_type */, 2122: XEvent* /* event_return */ 2123: ); 2124: 2125: extern Bool XCheckWindowEvent( 2126: Display* /* display */, 2127: Window /* w */, 2128: long /* event_mask */, 2129: XEvent* /* event_return */ 2130: ); 2131: 2132: extern int XCirculateSubwindows( 2133: Display* /* display */, 2134: Window /* w */, 2135: int /* direction */ 2136: ); 2137: 2138: extern int XCirculateSubwindowsDown( 2139: Display* /* display */, 2140: Window /* w */ 2141: ); 2142: 2143: extern int XCirculateSubwindowsUp( 2144: Display* /* display */, 2145: Window /* w */ 2146: ); 2147: 2148: extern int XClearArea( 2149: Display* /* display */, 2150: Window /* w */, 2151: int /* x */, 2152: int /* y */, 2153: unsigned int /* width */, 2154: unsigned int /* height */, 2155: Bool /* exposures */ 2156: ); 2157: 2158: extern int XClearWindow( 2159: Display* /* display */, 2160: Window /* w */ 2161: ); 2162: 2163: extern int XCloseDisplay( 2164: Display* /* display */ 2165: ); 2166: 2167: extern int XConfigureWindow( 2168: Display* /* display */, 2169: Window /* w */, 2170: unsigned int /* value_mask */, 2171: XWindowChanges* /* values */ 2172: ); 2173: 2174: extern int XConnectionNumber( 2175: Display* /* display */ 2176: ); 2177: 2178: extern int XConvertSelection( 2179: Display* /* display */, 2180: Atom /* selection */, 2181: Atom /* target */, 2182: Atom /* property */, 2183: Window /* requestor */, 2184: Time /* time */ 2185: ); 2186: 2187: extern int XCopyArea( 2188: Display* /* display */, 2189: Drawable /* src */, 2190: Drawable /* dest */, 2191: GC /* gc */, 2192: int /* src_x */, 2193: int /* src_y */, 2194: unsigned int /* width */, 2195: unsigned int /* height */, 2196: int /* dest_x */, 2197: int /* dest_y */ 2198: ); 2199: 2200: extern int XCopyGC( 2201: Display* /* display */, 2202: GC /* src */, 2203: unsigned long /* valuemask */, 2204: GC /* dest */ 2205: ); 2206: 2207: extern int XCopyPlane( 2208: Display* /* display */, 2209: Drawable /* src */, 2210: Drawable /* dest */, 2211: GC /* gc */, 2212: int /* src_x */, 2213: int /* src_y */, 2214: unsigned int /* width */, 2215: unsigned int /* height */, 2216: int /* dest_x */, 2217: int /* dest_y */, 2218: unsigned long /* plane */ 2219: ); 2220: 2221: extern int XDefaultDepth( 2222: Display* /* display */, 2223: int /* screen_number */ 2224: ); 2225: 2226: extern int XDefaultDepthOfScreen( 2227: Screen* /* screen */ 2228: ); 2229: 2230: extern int XDefaultScreen( 2231: Display* /* display */ 2232: ); 2233: 2234: extern int XDefineCursor( 2235: Display* /* display */, 2236: Window /* w */, 2237: Cursor /* cursor */ 2238: ); 2239: 2240: extern int XDeleteProperty( 2241: Display* /* display */, 2242: Window /* w */, 2243: Atom /* property */ 2244: ); 2245: 2246: extern int XDestroyWindow( 2247: Display* /* display */, 2248: Window /* w */ 2249: ); 2250: 2251: extern int XDestroySubwindows( 2252: Display* /* display */, 2253: Window /* w */ 2254: ); 2255: 2256: extern int XDoesBackingStore( 2257: Screen* /* screen */ 2258: ); 2259: 2260: extern Bool XDoesSaveUnders( 2261: Screen* /* screen */ 2262: ); 2263: 2264: extern int XDisableAccessControl( 2265: Display* /* display */ 2266: ); 2267: 2268: 2269: extern int XDisplayCells( 2270: Display* /* display */, 2271: int /* screen_number */ 2272: ); 2273: 2274: extern int XDisplayHeight( 2275: Display* /* display */, 2276: int /* screen_number */ 2277: ); 2278: 2279: extern int XDisplayHeightMM( 2280: Display* /* display */, 2281: int /* screen_number */ 2282: ); 2283: 2284: extern int XDisplayKeycodes( 2285: Display* /* display */, 2286: int* /* min_keycodes_return */, 2287: int* /* max_keycodes_return */ 2288: ); 2289: 2290: extern int XDisplayPlanes( 2291: Display* /* display */, 2292: int /* screen_number */ 2293: ); 2294: 2295: extern int XDisplayWidth( 2296: Display* /* display */, 2297: int /* screen_number */ 2298: ); 2299: 2300: extern int XDisplayWidthMM( 2301: Display* /* display */, 2302: int /* screen_number */ 2303: ); 2304: 2305: extern int XDrawArc( 2306: Display* /* display */, 2307: Drawable /* d */, 2308: GC /* gc */, 2309: int /* x */, 2310: int /* y */, 2311: unsigned int /* width */, 2312: unsigned int /* height */, 2313: int /* angle1 */, 2314: int /* angle2 */ 2315: ); 2316: 2317: extern int XDrawArcs( 2318: Display* /* display */, 2319: Drawable /* d */, 2320: GC /* gc */, 2321: XArc* /* arcs */, 2322: int /* narcs */ 2323: ); 2324: 2325: extern int XDrawImageString( 2326: Display* /* display */, 2327: Drawable /* d */, 2328: GC /* gc */, 2329: int /* x */, 2330: int /* y */, 2331: _Xconst char* /* string */, 2332: int /* length */ 2333: ); 2334: 2335: extern int XDrawImageString16( 2336: Display* /* display */, 2337: Drawable /* d */, 2338: GC /* gc */, 2339: int /* x */, 2340: int /* y */, 2341: _Xconst XChar2b* /* string */, 2342: int /* length */ 2343: ); 2344: 2345: extern int XDrawLine( 2346: Display* /* display */, 2347: Drawable /* d */, 2348: GC /* gc */, 2349: int /* x1 */, 2350: int /* y1 */, 2351: int /* x2 */, 2352: int /* y2 */ 2353: ); 2354: 2355: extern int XDrawLines( 2356: Display* /* display */, 2357: Drawable /* d */, 2358: GC /* gc */, 2359: XPoint* /* points */, 2360: int /* npoints */, 2361: int /* mode */ 2362: ); 2363: 2364: extern int XDrawPoint( 2365: Display* /* display */, 2366: Drawable /* d */, 2367: GC /* gc */, 2368: int /* x */, 2369: int /* y */ 2370: ); 2371: 2372: extern int XDrawPoints( 2373: Display* /* display */, 2374: Drawable /* d */, 2375: GC /* gc */, 2376: XPoint* /* points */, 2377: int /* npoints */, 2378: int /* mode */ 2379: ); 2380: 2381: extern int XDrawRectangle( 2382: Display* /* display */, 2383: Drawable /* d */, 2384: GC /* gc */, 2385: int /* x */, 2386: int /* y */, 2387: unsigned int /* width */, 2388: unsigned int /* height */ 2389: ); 2390: 2391: extern int XDrawRectangles( 2392: Display* /* display */, 2393: Drawable /* d */, 2394: GC /* gc */, 2395: XRectangle* /* rectangles */, 2396: int /* nrectangles */ 2397: ); 2398: 2399: extern int XDrawSegments( 2400: Display* /* display */, 2401: Drawable /* d */, 2402: GC /* gc */, 2403: XSegment* /* segments */, 2404: int /* nsegments */ 2405: ); 2406: 2407: extern int XDrawString( 2408: Display* /* display */, 2409: Drawable /* d */, 2410: GC /* gc */, 2411: int /* x */, 2412: int /* y */, 2413: _Xconst char* /* string */, 2414: int /* length */ 2415: ); 2416: 2417: extern int XDrawString16( 2418: Display* /* display */, 2419: Drawable /* d */, 2420: GC /* gc */, 2421: int /* x */, 2422: int /* y */, 2423: _Xconst XChar2b* /* string */, 2424: int /* length */ 2425: ); 2426: 2427: extern int XDrawText( 2428: Display* /* display */, 2429: Drawable /* d */, 2430: GC /* gc */, 2431: int /* x */, 2432: int /* y */, 2433: XTextItem* /* items */, 2434: int /* nitems */ 2435: ); 2436: 2437: extern int XDrawText16( 2438: Display* /* display */, 2439: Drawable /* d */, 2440: GC /* gc */, 2441: int /* x */, 2442: int /* y */, 2443: XTextItem16* /* items */, 2444: int /* nitems */ 2445: ); 2446: 2447: extern int XEnableAccessControl( 2448: Display* /* display */ 2449: ); 2450: 2451: extern int XEventsQueued( 2452: Display* /* display */, 2453: int /* mode */ 2454: ); 2455: 2456: extern Status XFetchName( 2457: Display* /* display */, 2458: Window /* w */, 2459: char** /* window_name_return */ 2460: ); 2461: 2462: extern int XFillArc( 2463: Display* /* display */, 2464: Drawable /* d */, 2465: GC /* gc */, 2466: int /* x */, 2467: int /* y */, 2468: unsigned int /* width */, 2469: unsigned int /* height */, 2470: int /* angle1 */, 2471: int /* angle2 */ 2472: ); 2473: 2474: extern int XFillArcs( 2475: Display* /* display */, 2476: Drawable /* d */, 2477: GC /* gc */, 2478: XArc* /* arcs */, 2479: int /* narcs */ 2480: ); 2481: 2482: extern int XFillPolygon( 2483: Display* /* display */, 2484: Drawable /* d */, 2485: GC /* gc */, 2486: XPoint* /* points */, 2487: int /* npoints */, 2488: int /* shape */, 2489: int /* mode */ 2490: ); 2491: 2492: extern int XFillRectangle( 2493: Display* /* display */, 2494: Drawable /* d */, 2495: GC /* gc */, 2496: int /* x */, 2497: int /* y */, 2498: unsigned int /* width */, 2499: unsigned int /* height */ 2500: ); 2501: 2502: extern int XFillRectangles( 2503: Display* /* display */, 2504: Drawable /* d */, 2505: GC /* gc */, 2506: XRectangle* /* rectangles */, 2507: int /* nrectangles */ 2508: ); 2509: 2510: extern int XFlush( 2511: Display* /* display */ 2512: ); 2513: 2514: extern int XForceScreenSaver( 2515: Display* /* display */, 2516: int /* mode */ 2517: ); 2518: 2519: extern int XFree( 2520: void* /* data */ 2521: ); 2522: 2523: extern int XFreeColormap( 2524: Display* /* display */, 2525: Colormap /* colormap */ 2526: ); 2527: 2528: extern int XFreeColors( 2529: Display* /* display */, 2530: Colormap /* colormap */, 2531: unsigned long* /* pixels */, 2532: int /* npixels */, 2533: unsigned long /* planes */ 2534: ); 2535: 2536: extern int XFreeCursor( 2537: Display* /* display */, 2538: Cursor /* cursor */ 2539: ); 2540: 2541: extern int XFreeExtensionList( 2542: char** /* list */ 2543: ); 2544: 2545: extern int XFreeFont( 2546: Display* /* display */, 2547: XFontStruct* /* font_struct */ 2548: ); 2549: 2550: extern int XFreeFontInfo( 2551: char** /* names */, 2552: XFontStruct* /* free_info */, 2553: int /* actual_count */ 2554: ); 2555: 2556: extern int XFreeFontNames( 2557: char** /* list */ 2558: ); 2559: 2560: extern int XFreeFontPath( 2561: char** /* list */ 2562: ); 2563: 2564: extern int XFreeGC( 2565: Display* /* display */, 2566: GC /* gc */ 2567: ); 2568: 2569: extern int XFreeModifiermap( 2570: XModifierKeymap* /* modmap */ 2571: ); 2572: 2573: extern int XFreePixmap( 2574: Display* /* display */, 2575: Pixmap /* pixmap */ 2576: ); 2577: 2578: extern int XGeometry( 2579: Display* /* display */, 2580: int /* screen */, 2581: _Xconst char* /* position */, 2582: _Xconst char* /* default_position */, 2583: unsigned int /* bwidth */, 2584: unsigned int /* fwidth */, 2585: unsigned int /* fheight */, 2586: int /* xadder */, 2587: int /* yadder */, 2588: int* /* x_return */, 2589: int* /* y_return */, 2590: int* /* width_return */, 2591: int* /* height_return */ 2592: ); 2593: 2594: extern int XGetErrorDatabaseText( 2595: Display* /* display */, 2596: _Xconst char* /* name */, 2597: _Xconst char* /* message */, 2598: _Xconst char* /* default_string */, 2599: char* /* buffer_return */, 2600: int /* length */ 2601: ); 2602: 2603: extern int XGetErrorText( 2604: Display* /* display */, 2605: int /* code */, 2606: char* /* buffer_return */, 2607: int /* length */ 2608: ); 2609: 2610: extern Bool XGetFontProperty( 2611: XFontStruct* /* font_struct */, 2612: Atom /* atom */, 2613: unsigned long* /* value_return */ 2614: ); 2615: 2616: extern Status XGetGCValues( 2617: Display* /* display */, 2618: GC /* gc */, 2619: unsigned long /* valuemask */, 2620: XGCValues* /* values_return */ 2621: ); 2622: 2623: extern Status XGetGeometry( 2624: Display* /* display */, 2625: Drawable /* d */, 2626: Window* /* root_return */, 2627: int* /* x_return */, 2628: int* /* y_return */, 2629: unsigned int* /* width_return */, 2630: unsigned int* /* height_return */, 2631: unsigned int* /* border_width_return */, 2632: unsigned int* /* depth_return */ 2633: ); 2634: 2635: extern Status XGetIconName( 2636: Display* /* display */, 2637: Window /* w */, 2638: char** /* icon_name_return */ 2639: ); 2640: 2641: extern int XGetInputFocus( 2642: Display* /* display */, 2643: Window* /* focus_return */, 2644: int* /* revert_to_return */ 2645: ); 2646: 2647: extern int XGetKeyboardControl( 2648: Display* /* display */, 2649: XKeyboardState* /* values_return */ 2650: ); 2651: 2652: extern int XGetPointerControl( 2653: Display* /* display */, 2654: int* /* accel_numerator_return */, 2655: int* /* accel_denominator_return */, 2656: int* /* threshold_return */ 2657: ); 2658: 2659: extern int XGetPointerMapping( 2660: Display* /* display */, 2661: unsigned char* /* map_return */, 2662: int /* nmap */ 2663: ); 2664: 2665: extern int XGetScreenSaver( 2666: Display* /* display */, 2667: int* /* timeout_return */, 2668: int* /* interval_return */, 2669: int* /* prefer_blanking_return */, 2670: int* /* allow_exposures_return */ 2671: ); 2672: 2673: extern Status XGetTransientForHint( 2674: Display* /* display */, 2675: Window /* w */, 2676: Window* /* prop_window_return */ 2677: ); 2678: 2679: extern int XGetWindowProperty( 2680: Display* /* display */, 2681: Window /* w */, 2682: Atom /* property */, 2683: long /* long_offset */, 2684: long /* long_length */, 2685: Bool /* delete */, 2686: Atom /* req_type */, 2687: Atom* /* actual_type_return */, 2688: int* /* actual_format_return */, 2689: unsigned long* /* nitems_return */, 2690: unsigned long* /* bytes_after_return */, 2691: unsigned char** /* prop_return */ 2692: ); 2693: 2694: extern Status XGetWindowAttributes( 2695: Display* /* display */, 2696: Window /* w */, 2697: XWindowAttributes* /* window_attributes_return */ 2698: ); 2699: 2700: extern int XGrabButton( 2701: Display* /* display */, 2702: unsigned int /* button */, 2703: unsigned int /* modifiers */, 2704: Window /* grab_window */, 2705: Bool /* owner_events */, 2706: unsigned int /* event_mask */, 2707: int /* pointer_mode */, 2708: int /* keyboard_mode */, 2709: Window /* confine_to */, 2710: Cursor /* cursor */ 2711: ); 2712: 2713: extern int XGrabKey( 2714: Display* /* display */, 2715: int /* keycode */, 2716: unsigned int /* modifiers */, 2717: Window /* grab_window */, 2718: Bool /* owner_events */, 2719: int /* pointer_mode */, 2720: int /* keyboard_mode */ 2721: ); 2722: 2723: extern int XGrabKeyboard( 2724: Display* /* display */, 2725: Window /* grab_window */, 2726: Bool /* owner_events */, 2727: int /* pointer_mode */, 2728: int /* keyboard_mode */, 2729: Time /* time */ 2730: ); 2731: 2732: extern int XGrabPointer( 2733: Display* /* display */, 2734: Window /* grab_window */, 2735: Bool /* owner_events */, 2736: unsigned int /* event_mask */, 2737: int /* pointer_mode */, 2738: int /* keyboard_mode */, 2739: Window /* confine_to */, 2740: Cursor /* cursor */, 2741: Time /* time */ 2742: ); 2743: 2744: extern int XGrabServer( 2745: Display* /* display */ 2746: ); 2747: 2748: extern int XHeightMMOfScreen( 2749: Screen* /* screen */ 2750: ); 2751: 2752: extern int XHeightOfScreen( 2753: Screen* /* screen */ 2754: ); 2755: 2756: extern int XIfEvent( 2757: Display* /* display */, 2758: XEvent* /* event_return */, 2759: Bool (*) ( 2760: Display* /* display */, 2761: XEvent* /* event */, 2762: XPointer /* arg */ 2763: ) /* predicate */, 2764: XPointer /* arg */ 2765: ); 2766: 2767: extern int XImageByteOrder( 2768: Display* /* display */ 2769: ); 2770: 2771: extern int XInstallColormap( 2772: Display* /* display */, 2773: Colormap /* colormap */ 2774: ); 2775: 2776: extern KeyCode XKeysymToKeycode( 2777: Display* /* display */, 2778: KeySym /* keysym */ 2779: ); 2780: 2781: extern int XKillClient( 2782: Display* /* display */, 2783: XID /* resource */ 2784: ); 2785: 2786: extern Status XLookupColor( 2787: Display* /* display */, 2788: Colormap /* colormap */, 2789: _Xconst char* /* color_name */, 2790: XColor* /* exact_def_return */, 2791: XColor* /* screen_def_return */ 2792: ); 2793: 2794: extern int XLowerWindow( 2795: Display* /* display */, 2796: Window /* w */ 2797: ); 2798: 2799: extern int XMapRaised( 2800: Display* /* display */, 2801: Window /* w */ 2802: ); 2803: 2804: extern int XMapSubwindows( 2805: Display* /* display */, 2806: Window /* w */ 2807: ); 2808: 2809: extern int XMapWindow( 2810: Display* /* display */, 2811: Window /* w */ 2812: ); 2813: 2814: extern int XMaskEvent( 2815: Display* /* display */, 2816: long /* event_mask */, 2817: XEvent* /* event_return */ 2818: ); 2819: 2820: extern int XMaxCmapsOfScreen( 2821: Screen* /* screen */ 2822: ); 2823: 2824: extern int XMinCmapsOfScreen( 2825: Screen* /* screen */ 2826: ); 2827: 2828: extern int XMoveResizeWindow( 2829: Display* /* display */, 2830: Window /* w */, 2831: int /* x */, 2832: int /* y */, 2833: unsigned int /* width */, 2834: unsigned int /* height */ 2835: ); 2836: 2837: extern int XMoveWindow( 2838: Display* /* display */, 2839: Window /* w */, 2840: int /* x */, 2841: int /* y */ 2842: ); 2843: 2844: extern int XNextEvent( 2845: Display* /* display */, 2846: XEvent* /* event_return */ 2847: ); 2848: 2849: extern int XNoOp( 2850: Display* /* display */ 2851: ); 2852: 2853: extern Status XParseColor( 2854: Display* /* display */, 2855: Colormap /* colormap */, 2856: _Xconst char* /* spec */, 2857: XColor* /* exact_def_return */ 2858: ); 2859: 2860: extern int XParseGeometry( 2861: _Xconst char* /* parsestring */, 2862: int* /* x_return */, 2863: int* /* y_return */, 2864: unsigned int* /* width_return */, 2865: unsigned int* /* height_return */ 2866: ); 2867: 2868: extern int XPeekEvent( 2869: Display* /* display */, 2870: XEvent* /* event_return */ 2871: ); 2872: 2873: extern int XPeekIfEvent( 2874: Display* /* display */, 2875: XEvent* /* event_return */, 2876: Bool (*) ( 2877: Display* /* display */, 2878: XEvent* /* event */, 2879: XPointer /* arg */ 2880: ) /* predicate */, 2881: XPointer /* arg */ 2882: ); 2883: 2884: extern int XPending( 2885: Display* /* display */ 2886: ); 2887: 2888: extern int XPlanesOfScreen( 2889: Screen* /* screen */ 2890: ); 2891: 2892: extern int XProtocolRevision( 2893: Display* /* display */ 2894: ); 2895: 2896: extern int XProtocolVersion( 2897: Display* /* display */ 2898: ); 2899: 2900: 2901: extern int XPutBackEvent( 2902: Display* /* display */, 2903: XEvent* /* event */ 2904: ); 2905: 2906: extern int XPutImage( 2907: Display* /* display */, 2908: Drawable /* d */, 2909: GC /* gc */, 2910: XImage* /* image */, 2911: int /* src_x */, 2912: int /* src_y */, 2913: int /* dest_x */, 2914: int /* dest_y */, 2915: unsigned int /* width */, 2916: unsigned int /* height */ 2917: ); 2918: 2919: extern int XQLength( 2920: Display* /* display */ 2921: ); 2922: 2923: extern Status XQueryBestCursor( 2924: Display* /* display */, 2925: Drawable /* d */, 2926: unsigned int /* width */, 2927: unsigned int /* height */, 2928: unsigned int* /* width_return */, 2929: unsigned int* /* height_return */ 2930: ); 2931: 2932: extern Status XQueryBestSize( 2933: Display* /* display */, 2934: int /* class */, 2935: Drawable /* which_screen */, 2936: unsigned int /* width */, 2937: unsigned int /* height */, 2938: unsigned int* /* width_return */, 2939: unsigned int* /* height_return */ 2940: ); 2941: 2942: extern Status XQueryBestStipple( 2943: Display* /* display */, 2944: Drawable /* which_screen */, 2945: unsigned int /* width */, 2946: unsigned int /* height */, 2947: unsigned int* /* width_return */, 2948: unsigned int* /* height_return */ 2949: ); 2950: 2951: extern Status XQueryBestTile( 2952: Display* /* display */, 2953: Drawable /* which_screen */, 2954: unsigned int /* width */, 2955: unsigned int /* height */, 2956: unsigned int* /* width_return */, 2957: unsigned int* /* height_return */ 2958: ); 2959: 2960: extern int XQueryColor( 2961: Display* /* display */, 2962: Colormap /* colormap */, 2963: XColor* /* def_in_out */ 2964: ); 2965: 2966: extern int XQueryColors( 2967: Display* /* display */, 2968: Colormap /* colormap */, 2969: XColor* /* defs_in_out */, 2970: int /* ncolors */ 2971: ); 2972: 2973: extern Bool XQueryExtension( 2974: Display* /* display */, 2975: _Xconst char* /* name */, 2976: int* /* major_opcode_return */, 2977: int* /* first_event_return */, 2978: int* /* first_error_return */ 2979: ); 2980: 2981: extern int XQueryKeymap( 2982: Display* /* display */, 2983: char [32] /* keys_return */ 2984: ); 2985: 2986: extern Bool XQueryPointer( 2987: Display* /* display */, 2988: Window /* w */, 2989: Window* /* root_return */, 2990: Window* /* child_return */, 2991: int* /* root_x_return */, 2992: int* /* root_y_return */, 2993: int* /* win_x_return */, 2994: int* /* win_y_return */, 2995: unsigned int* /* mask_return */ 2996: ); 2997: 2998: extern int XQueryTextExtents( 2999: Display* /* display */, 3000: XID /* font_ID */, 3001: _Xconst char* /* string */, 3002: int /* nchars */, 3003: int* /* direction_return */, 3004: int* /* font_ascent_return */, 3005: int* /* font_descent_return */, 3006: XCharStruct* /* overall_return */ 3007: ); 3008: 3009: extern int XQueryTextExtents16( 3010: Display* /* display */, 3011: XID /* font_ID */, 3012: _Xconst XChar2b* /* string */, 3013: int /* nchars */, 3014: int* /* direction_return */, 3015: int* /* font_ascent_return */, 3016: int* /* font_descent_return */, 3017: XCharStruct* /* overall_return */ 3018: ); 3019: 3020: extern Status XQueryTree( 3021: Display* /* display */, 3022: Window /* w */, 3023: Window* /* root_return */, 3024: Window* /* parent_return */, 3025: Window** /* children_return */, 3026: unsigned int* /* nchildren_return */ 3027: ); 3028: 3029: extern int XRaiseWindow( 3030: Display* /* display */, 3031: Window /* w */ 3032: ); 3033: 3034: extern int XReadBitmapFile( 3035: Display* /* display */, 3036: Drawable /* d */, 3037: _Xconst char* /* filename */, 3038: unsigned int* /* width_return */, 3039: unsigned int* /* height_return */, 3040: Pixmap* /* bitmap_return */, 3041: int* /* x_hot_return */, 3042: int* /* y_hot_return */ 3043: ); 3044: 3045: extern int XReadBitmapFileData( 3046: _Xconst char* /* filename */, 3047: unsigned int* /* width_return */, 3048: unsigned int* /* height_return */, 3049: unsigned char** /* data_return */, 3050: int* /* x_hot_return */, 3051: int* /* y_hot_return */ 3052: ); 3053: 3054: extern int XRebindKeysym( 3055: Display* /* display */, 3056: KeySym /* keysym */, 3057: KeySym* /* list */, 3058: int /* mod_count */, 3059: _Xconst unsigned char* /* string */, 3060: int /* bytes_string */ 3061: ); 3062: 3063: extern int XRecolorCursor( 3064: Display* /* display */, 3065: Cursor /* cursor */, 3066: XColor* /* foreground_color */, 3067: XColor* /* background_color */ 3068: ); 3069: 3070: extern int XRefreshKeyboardMapping( 3071: XMappingEvent* /* event_map */ 3072: ); 3073: 3074: extern int XRemoveFromSaveSet( 3075: Display* /* display */, 3076: Window /* w */ 3077: ); 3078: 3079: extern int XRemoveHost( 3080: Display* /* display */, 3081: XHostAddress* /* host */ 3082: ); 3083: 3084: extern int XRemoveHosts( 3085: Display* /* display */, 3086: XHostAddress* /* hosts */, 3087: int /* num_hosts */ 3088: ); 3089: 3090: extern int XReparentWindow( 3091: Display* /* display */, 3092: Window /* w */, 3093: Window /* parent */, 3094: int /* x */, 3095: int /* y */ 3096: ); 3097: 3098: extern int XResetScreenSaver( 3099: Display* /* display */ 3100: ); 3101: 3102: extern int XResizeWindow( 3103: Display* /* display */, 3104: Window /* w */, 3105: unsigned int /* width */, 3106: unsigned int /* height */ 3107: ); 3108: 3109: extern int XRestackWindows( 3110: Display* /* display */, 3111: Window* /* windows */, 3112: int /* nwindows */ 3113: ); 3114: 3115: extern int XRotateBuffers( 3116: Display* /* display */, 3117: int /* rotate */ 3118: ); 3119: 3120: extern int XRotateWindowProperties( 3121: Display* /* display */, 3122: Window /* w */, 3123: Atom* /* properties */, 3124: int /* num_prop */, 3125: int /* npositions */ 3126: ); 3127: 3128: extern int XScreenCount( 3129: Display* /* display */ 3130: ); 3131: 3132: extern int XSelectInput( 3133: Display* /* display */, 3134: Window /* w */, 3135: long /* event_mask */ 3136: ); 3137: 3138: extern Status XSendEvent( 3139: Display* /* display */, 3140: Window /* w */, 3141: Bool /* propagate */, 3142: long /* event_mask */, 3143: XEvent* /* event_send */ 3144: ); 3145: 3146: extern int XSetAccessControl( 3147: Display* /* display */, 3148: int /* mode */ 3149: ); 3150: 3151: extern int XSetArcMode( 3152: Display* /* display */, 3153: GC /* gc */, 3154: int /* arc_mode */ 3155: ); 3156: 3157: extern int XSetBackground( 3158: Display* /* display */, 3159: GC /* gc */, 3160: unsigned long /* background */ 3161: ); 3162: 3163: extern int XSetClipMask( 3164: Display* /* display */, 3165: GC /* gc */, 3166: Pixmap /* pixmap */ 3167: ); 3168: 3169: extern int XSetClipOrigin( 3170: Display* /* display */, 3171: GC /* gc */, 3172: int /* clip_x_origin */, 3173: int /* clip_y_origin */ 3174: ); 3175: 3176: extern int XSetClipRectangles( 3177: Display* /* display */, 3178: GC /* gc */, 3179: int /* clip_x_origin */, 3180: int /* clip_y_origin */, 3181: XRectangle* /* rectangles */, 3182: int /* n */, 3183: int /* ordering */ 3184: ); 3185: 3186: extern int XSetCloseDownMode( 3187: Display* /* display */, 3188: int /* close_mode */ 3189: ); 3190: 3191: extern int XSetCommand( 3192: Display* /* display */, 3193: Window /* w */, 3194: char** /* argv */, 3195: int /* argc */ 3196: ); 3197: 3198: extern int XSetDashes( 3199: Display* /* display */, 3200: GC /* gc */, 3201: int /* dash_offset */, 3202: _Xconst char* /* dash_list */, 3203: int /* n */ 3204: ); 3205: 3206: extern int XSetFillRule( 3207: Display* /* display */, 3208: GC /* gc */, 3209: int /* fill_rule */ 3210: ); 3211: 3212: extern int XSetFillStyle( 3213: Display* /* display */, 3214: GC /* gc */, 3215: int /* fill_style */ 3216: ); 3217: 3218: extern int XSetFont( 3219: Display* /* display */, 3220: GC /* gc */, 3221: Font /* font */ 3222: ); 3223: 3224: extern int XSetFontPath( 3225: Display* /* display */, 3226: char** /* directories */, 3227: int /* ndirs */ 3228: ); 3229: 3230: extern int XSetForeground( 3231: Display* /* display */, 3232: GC /* gc */, 3233: unsigned long /* foreground */ 3234: ); 3235: 3236: extern int XSetFunction( 3237: Display* /* display */, 3238: GC /* gc */, 3239: int /* function */ 3240: ); 3241: 3242: extern int XSetGraphicsExposures( 3243: Display* /* display */, 3244: GC /* gc */, 3245: Bool /* graphics_exposures */ 3246: ); 3247: 3248: extern int XSetIconName( 3249: Display* /* display */, 3250: Window /* w */, 3251: _Xconst char* /* icon_name */ 3252: ); 3253: 3254: extern int XSetInputFocus( 3255: Display* /* display */, 3256: Window /* focus */, 3257: int /* revert_to */, 3258: Time /* time */ 3259: ); 3260: 3261: extern int XSetLineAttributes( 3262: Display* /* display */, 3263: GC /* gc */, 3264: unsigned int /* line_width */, 3265: int /* line_style */, 3266: int /* cap_style */, 3267: int /* join_style */ 3268: ); 3269: 3270: extern int XSetModifierMapping( 3271: Display* /* display */, 3272: XModifierKeymap* /* modmap */ 3273: ); 3274: 3275: extern int XSetPlaneMask( 3276: Display* /* display */, 3277: GC /* gc */, 3278: unsigned long /* plane_mask */ 3279: ); 3280: 3281: extern int XSetPointerMapping( 3282: Display* /* display */, 3283: _Xconst unsigned char* /* map */, 3284: int /* nmap */ 3285: ); 3286: 3287: extern int XSetScreenSaver( 3288: Display* /* display */, 3289: int /* timeout */, 3290: int /* interval */, 3291: int /* prefer_blanking */, 3292: int /* allow_exposures */ 3293: ); 3294: 3295: extern int XSetSelectionOwner( 3296: Display* /* display */, 3297: Atom /* selection */, 3298: Window /* owner */, 3299: Time /* time */ 3300: ); 3301: 3302: extern int XSetState( 3303: Display* /* display */, 3304: GC /* gc */, 3305: unsigned long /* foreground */, 3306: unsigned long /* background */, 3307: int /* function */, 3308: unsigned long /* plane_mask */ 3309: ); 3310: 3311: extern int XSetStipple( 3312: Display* /* display */, 3313: GC /* gc */, 3314: Pixmap /* stipple */ 3315: ); 3316: 3317: extern int XSetSubwindowMode( 3318: Display* /* display */, 3319: GC /* gc */, 3320: int /* subwindow_mode */ 3321: ); 3322: 3323: extern int XSetTSOrigin( 3324: Display* /* display */, 3325: GC /* gc */, 3326: int /* ts_x_origin */, 3327: int /* ts_y_origin */ 3328: ); 3329: 3330: extern int XSetTile( 3331: Display* /* display */, 3332: GC /* gc */, 3333: Pixmap /* tile */ 3334: ); 3335: 3336: extern int XSetWindowBackground( 3337: Display* /* display */, 3338: Window /* w */, 3339: unsigned long /* background_pixel */ 3340: ); 3341: 3342: extern int XSetWindowBackgroundPixmap( 3343: Display* /* display */, 3344: Window /* w */, 3345: Pixmap /* background_pixmap */ 3346: ); 3347: 3348: extern int XSetWindowBorder( 3349: Display* /* display */, 3350: Window /* w */, 3351: unsigned long /* border_pixel */ 3352: ); 3353: 3354: extern int XSetWindowBorderPixmap( 3355: Display* /* display */, 3356: Window /* w */, 3357: Pixmap /* border_pixmap */ 3358: ); 3359: 3360: extern int XSetWindowBorderWidth( 3361: Display* /* display */, 3362: Window /* w */, 3363: unsigned int /* width */ 3364: ); 3365: 3366: extern int XSetWindowColormap( 3367: Display* /* display */, 3368: Window /* w */, 3369: Colormap /* colormap */ 3370: ); 3371: 3372: extern int XStoreBuffer( 3373: Display* /* display */, 3374: _Xconst char* /* bytes */, 3375: int /* nbytes */, 3376: int /* buffer */ 3377: ); 3378: 3379: extern int XStoreBytes( 3380: Display* /* display */, 3381: _Xconst char* /* bytes */, 3382: int /* nbytes */ 3383: ); 3384: 3385: extern int XStoreColor( 3386: Display* /* display */, 3387: Colormap /* colormap */, 3388: XColor* /* color */ 3389: ); 3390: 3391: extern int XStoreColors( 3392: Display* /* display */, 3393: Colormap /* colormap */, 3394: XColor* /* color */, 3395: int /* ncolors */ 3396: ); 3397: 3398: extern int XStoreName( 3399: Display* /* display */, 3400: Window /* w */, 3401: _Xconst char* /* window_name */ 3402: ); 3403: 3404: extern int XStoreNamedColor( 3405: Display* /* display */, 3406: Colormap /* colormap */, 3407: _Xconst char* /* color */, 3408: unsigned long /* pixel */, 3409: int /* flags */ 3410: ); 3411: 3412: extern int XSync( 3413: Display* /* display */, 3414: Bool /* discard */ 3415: ); 3416: 3417: extern int XTextExtents( 3418: XFontStruct* /* font_struct */, 3419: _Xconst char* /* string */, 3420: int /* nchars */, 3421: int* /* direction_return */, 3422: int* /* font_ascent_return */, 3423: int* /* font_descent_return */, 3424: XCharStruct* /* overall_return */ 3425: ); 3426: 3427: extern int XTextExtents16( 3428: XFontStruct* /* font_struct */, 3429: _Xconst XChar2b* /* string */, 3430: int /* nchars */, 3431: int* /* direction_return */, 3432: int* /* font_ascent_return */, 3433: int* /* font_descent_return */, 3434: XCharStruct* /* overall_return */ 3435: ); 3436: 3437: extern int XTextWidth( 3438: XFontStruct* /* font_struct */, 3439: _Xconst char* /* string */, 3440: int /* count */ 3441: ); 3442: 3443: extern int XTextWidth16( 3444: XFontStruct* /* font_struct */, 3445: _Xconst XChar2b* /* string */, 3446: int /* count */ 3447: ); 3448: 3449: extern Bool XTranslateCoordinates( 3450: Display* /* display */, 3451: Window /* src_w */, 3452: Window /* dest_w */, 3453: int /* src_x */, 3454: int /* src_y */, 3455: int* /* dest_x_return */, 3456: int* /* dest_y_return */, 3457: Window* /* child_return */ 3458: ); 3459: 3460: extern int XUndefineCursor( 3461: Display* /* display */, 3462: Window /* w */ 3463: ); 3464: 3465: extern int XUngrabButton( 3466: Display* /* display */, 3467: unsigned int /* button */, 3468: unsigned int /* modifiers */, 3469: Window /* grab_window */ 3470: ); 3471: 3472: extern int XUngrabKey( 3473: Display* /* display */, 3474: int /* keycode */, 3475: unsigned int /* modifiers */, 3476: Window /* grab_window */ 3477: ); 3478: 3479: extern int XUngrabKeyboard( 3480: Display* /* display */, 3481: Time /* time */ 3482: ); 3483: 3484: extern int XUngrabPointer( 3485: Display* /* display */, 3486: Time /* time */ 3487: ); 3488: 3489: extern int XUngrabServer( 3490: Display* /* display */ 3491: ); 3492: 3493: extern int XUninstallColormap( 3494: Display* /* display */, 3495: Colormap /* colormap */ 3496: ); 3497: 3498: extern int XUnloadFont( 3499: Display* /* display */, 3500: Font /* font */ 3501: ); 3502: 3503: extern int XUnmapSubwindows( 3504: Display* /* display */, 3505: Window /* w */ 3506: ); 3507: 3508: extern int XUnmapWindow( 3509: Display* /* display */, 3510: Window /* w */ 3511: ); 3512: 3513: extern int XVendorRelease( 3514: Display* /* display */ 3515: ); 3516: 3517: extern int XWarpPointer( 3518: Display* /* display */, 3519: Window /* src_w */, 3520: Window /* dest_w */, 3521: int /* src_x */, 3522: int /* src_y */, 3523: unsigned int /* src_width */, 3524: unsigned int /* src_height */, 3525: int /* dest_x */, 3526: int /* dest_y */ 3527: ); 3528: 3529: extern int XWidthMMOfScreen( 3530: Screen* /* screen */ 3531: ); 3532: 3533: extern int XWidthOfScreen( 3534: Screen* /* screen */ 3535: ); 3536: 3537: extern int XWindowEvent( 3538: Display* /* display */, 3539: Window /* w */, 3540: long /* event_mask */, 3541: XEvent* /* event_return */ 3542: ); 3543: 3544: extern int XWriteBitmapFile( 3545: Display* /* display */, 3546: _Xconst char* /* filename */, 3547: Pixmap /* bitmap */, 3548: unsigned int /* width */, 3549: unsigned int /* height */, 3550: int /* x_hot */, 3551: int /* y_hot */ 3552: ); 3553: 3554: extern Bool XSupportsLocale (void); 3555: 3556: extern char *XSetLocaleModifiers( 3557: const char* /* modifier_list */ 3558: ); 3559: 3560: extern XOM XOpenOM( 3561: Display* /* display */, 3562: struct _XrmHashBucketRec* /* rdb */, 3563: _Xconst char* /* res_name */, 3564: _Xconst char* /* res_class */ 3565: ); 3566: 3567: extern Status XCloseOM( 3568: XOM /* om */ 3569: ); 3570: 3571: extern char *XSetOMValues( 3572: XOM /* om */, 3573: ... 3574: ); 3575: 3576: extern char *XGetOMValues( 3577: XOM /* om */, 3578: ... 3579: ); 3580: 3581: extern Display *XDisplayOfOM( 3582: XOM /* om */ 3583: ); 3584: 3585: extern char *XLocaleOfOM( 3586: XOM /* om */ 3587: ); 3588: 3589: extern XOC XCreateOC( 3590: XOM /* om */, 3591: ... 3592: ); 3593: 3594: extern void XDestroyOC( 3595: XOC /* oc */ 3596: ); 3597: 3598: extern XOM XOMOfOC( 3599: XOC /* oc */ 3600: ); 3601: 3602: extern char *XSetOCValues( 3603: XOC /* oc */, 3604: ... 3605: ); 3606: 3607: extern char *XGetOCValues( 3608: XOC /* oc */, 3609: ... 3610: ); 3611: 3612: extern XFontSet XCreateFontSet( 3613: Display* /* display */, 3614: _Xconst char* /* base_font_name_list */, 3615: char*** /* missing_charset_list */, 3616: int* /* missing_charset_count */, 3617: char** /* def_string */ 3618: ); 3619: 3620: extern void XFreeFontSet( 3621: Display* /* display */, 3622: XFontSet /* font_set */ 3623: ); 3624: 3625: extern int XFontsOfFontSet( 3626: XFontSet /* font_set */, 3627: XFontStruct*** /* font_struct_list */, 3628: char*** /* font_name_list */ 3629: ); 3630: 3631: extern char *XBaseFontNameListOfFontSet( 3632: XFontSet /* font_set */ 3633: ); 3634: 3635: extern char *XLocaleOfFontSet( 3636: XFontSet /* font_set */ 3637: ); 3638: 3639: extern Bool XContextDependentDrawing( 3640: XFontSet /* font_set */ 3641: ); 3642: 3643: extern Bool XDirectionalDependentDrawing( 3644: XFontSet /* font_set */ 3645: ); 3646: 3647: extern Bool XContextualDrawing( 3648: XFontSet /* font_set */ 3649: ); 3650: 3651: extern XFontSetExtents *XExtentsOfFontSet( 3652: XFontSet /* font_set */ 3653: ); 3654: 3655: extern int XmbTextEscapement( 3656: XFontSet /* font_set */, 3657: _Xconst char* /* text */, 3658: int /* bytes_text */ 3659: ); 3660: 3661: extern int XwcTextEscapement( 3662: XFontSet /* font_set */, 3663: _Xconst wchar_t* /* text */, 3664: int /* num_wchars */ 3665: ); 3666: 3667: extern int Xutf8TextEscapement( 3668: XFontSet /* font_set */, 3669: _Xconst char* /* text */, 3670: int /* bytes_text */ 3671: ); 3672: 3673: extern int XmbTextExtents( 3674: XFontSet /* font_set */, 3675: _Xconst char* /* text */, 3676: int /* bytes_text */, 3677: XRectangle* /* overall_ink_return */, 3678: XRectangle* /* overall_logical_return */ 3679: ); 3680: 3681: extern int XwcTextExtents( 3682: XFontSet /* font_set */, 3683: _Xconst wchar_t* /* text */, 3684: int /* num_wchars */, 3685: XRectangle* /* overall_ink_return */, 3686: XRectangle* /* overall_logical_return */ 3687: ); 3688: 3689: extern int Xutf8TextExtents( 3690: XFontSet /* font_set */, 3691: _Xconst char* /* text */, 3692: int /* bytes_text */, 3693: XRectangle* /* overall_ink_return */, 3694: XRectangle* /* overall_logical_return */ 3695: ); 3696: 3697: extern Status XmbTextPerCharExtents( 3698: XFontSet /* font_set */, 3699: _Xconst char* /* text */, 3700: int /* bytes_text */, 3701: XRectangle* /* ink_extents_buffer */, 3702: XRectangle* /* logical_extents_buffer */, 3703: int /* buffer_size */, 3704: int* /* num_chars */, 3705: XRectangle* /* overall_ink_return */, 3706: XRectangle* /* overall_logical_return */ 3707: ); 3708: 3709: extern Status XwcTextPerCharExtents( 3710: XFontSet /* font_set */, 3711: _Xconst wchar_t* /* text */, 3712: int /* num_wchars */, 3713: XRectangle* /* ink_extents_buffer */, 3714: XRectangle* /* logical_extents_buffer */, 3715: int /* buffer_size */, 3716: int* /* num_chars */, 3717: XRectangle* /* overall_ink_return */, 3718: XRectangle* /* overall_logical_return */ 3719: ); 3720: 3721: extern Status Xutf8TextPerCharExtents( 3722: XFontSet /* font_set */, 3723: _Xconst char* /* text */, 3724: int /* bytes_text */, 3725: XRectangle* /* ink_extents_buffer */, 3726: XRectangle* /* logical_extents_buffer */, 3727: int /* buffer_size */, 3728: int* /* num_chars */, 3729: XRectangle* /* overall_ink_return */, 3730: XRectangle* /* overall_logical_return */ 3731: ); 3732: 3733: extern void XmbDrawText( 3734: Display* /* display */, 3735: Drawable /* d */, 3736: GC /* gc */, 3737: int /* x */, 3738: int /* y */, 3739: XmbTextItem* /* text_items */, 3740: int /* nitems */ 3741: ); 3742: 3743: extern void XwcDrawText( 3744: Display* /* display */, 3745: Drawable /* d */, 3746: GC /* gc */, 3747: int /* x */, 3748: int /* y */, 3749: XwcTextItem* /* text_items */, 3750: int /* nitems */ 3751: ); 3752: 3753: extern void Xutf8DrawText( 3754: Display* /* display */, 3755: Drawable /* d */, 3756: GC /* gc */, 3757: int /* x */, 3758: int /* y */, 3759: XmbTextItem* /* text_items */, 3760: int /* nitems */ 3761: ); 3762: 3763: extern void XmbDrawString( 3764: Display* /* display */, 3765: Drawable /* d */, 3766: XFontSet /* font_set */, 3767: GC /* gc */, 3768: int /* x */, 3769: int /* y */, 3770: _Xconst char* /* text */, 3771: int /* bytes_text */ 3772: ); 3773: 3774: extern void XwcDrawString( 3775: Display* /* display */, 3776: Drawable /* d */, 3777: XFontSet /* font_set */, 3778: GC /* gc */, 3779: int /* x */, 3780: int /* y */, 3781: _Xconst wchar_t* /* text */, 3782: int /* num_wchars */ 3783: ); 3784: 3785: extern void Xutf8DrawString( 3786: Display* /* display */, 3787: Drawable /* d */, 3788: XFontSet /* font_set */, 3789: GC /* gc */, 3790: int /* x */, 3791: int /* y */, 3792: _Xconst char* /* text */, 3793: int /* bytes_text */ 3794: ); 3795: 3796: extern void XmbDrawImageString( 3797: Display* /* display */, 3798: Drawable /* d */, 3799: XFontSet /* font_set */, 3800: GC /* gc */, 3801: int /* x */, 3802: int /* y */, 3803: _Xconst char* /* text */, 3804: int /* bytes_text */ 3805: ); 3806: 3807: extern void XwcDrawImageString( 3808: Display* /* display */, 3809: Drawable /* d */, 3810: XFontSet /* font_set */, 3811: GC /* gc */, 3812: int /* x */, 3813: int /* y */, 3814: _Xconst wchar_t* /* text */, 3815: int /* num_wchars */ 3816: ); 3817: 3818: extern void Xutf8DrawImageString( 3819: Display* /* display */, 3820: Drawable /* d */, 3821: XFontSet /* font_set */, 3822: GC /* gc */, 3823: int /* x */, 3824: int /* y */, 3825: _Xconst char* /* text */, 3826: int /* bytes_text */ 3827: ); 3828: 3829: extern XIM XOpenIM( 3830: Display* /* dpy */, 3831: struct _XrmHashBucketRec* /* rdb */, 3832: char* /* res_name */, 3833: char* /* res_class */ 3834: ); 3835: 3836: extern Status XCloseIM( 3837: XIM /* im */ 3838: ); 3839: 3840: extern char *XGetIMValues( 3841: XIM /* im */, ... 3842: ); 3843: 3844: extern char *XSetIMValues( 3845: XIM /* im */, ... 3846: ); 3847: 3848: extern Display *XDisplayOfIM( 3849: XIM /* im */ 3850: ); 3851: 3852: extern char *XLocaleOfIM( 3853: XIM /* im*/ 3854: ); 3855: 3856: extern XIC XCreateIC( 3857: XIM /* im */, ... 3858: ); 3859: 3860: extern void XDestroyIC( 3861: XIC /* ic */ 3862: ); 3863: 3864: extern void XSetICFocus( 3865: XIC /* ic */ 3866: ); 3867: 3868: extern void XUnsetICFocus( 3869: XIC /* ic */ 3870: ); 3871: 3872: extern wchar_t *XwcResetIC( 3873: XIC /* ic */ 3874: ); 3875: 3876: extern char *XmbResetIC( 3877: XIC /* ic */ 3878: ); 3879: 3880: extern char *Xutf8ResetIC( 3881: XIC /* ic */ 3882: ); 3883: 3884: extern char *XSetICValues( 3885: XIC /* ic */, ... 3886: ); 3887: 3888: extern char *XGetICValues( 3889: XIC /* ic */, ... 3890: ); 3891: 3892: extern XIM XIMOfIC( 3893: XIC /* ic */ 3894: ); 3895: 3896: extern Bool XFilterEvent( 3897: XEvent* /* event */, 3898: Window /* window */ 3899: ); 3900: 3901: extern int XmbLookupString( 3902: XIC /* ic */, 3903: XKeyPressedEvent* /* event */, 3904: char* /* buffer_return */, 3905: int /* bytes_buffer */, 3906: KeySym* /* keysym_return */, 3907: Status* /* status_return */ 3908: ); 3909: 3910: extern int XwcLookupString( 3911: XIC /* ic */, 3912: XKeyPressedEvent* /* event */, 3913: wchar_t* /* buffer_return */, 3914: int /* wchars_buffer */, 3915: KeySym* /* keysym_return */, 3916: Status* /* status_return */ 3917: ); 3918: 3919: extern int Xutf8LookupString( 3920: XIC /* ic */, 3921: XKeyPressedEvent* /* event */, 3922: char* /* buffer_return */, 3923: int /* bytes_buffer */, 3924: KeySym* /* keysym_return */, 3925: Status* /* status_return */ 3926: ); 3927: 3928: extern XVaNestedList XVaCreateNestedList( 3929: int /*unused*/, ... 3930: ); 3931: 3932: /* internal connections for IMs */ 3933: 3934: extern Bool XRegisterIMInstantiateCallback( 3935: Display* /* dpy */, 3936: struct _XrmHashBucketRec* /* rdb */, 3937: char* /* res_name */, 3938: char* /* res_class */, 3939: XIDProc /* callback */, 3940: XPointer /* client_data */ 3941: ); 3942: 3943: extern Bool XUnregisterIMInstantiateCallback( 3944: Display* /* dpy */, 3945: struct _XrmHashBucketRec* /* rdb */, 3946: char* /* res_name */, 3947: char* /* res_class */, 3948: XIDProc /* callback */, 3949: XPointer /* client_data */ 3950: ); 3951: 3952: typedef void (*XConnectionWatchProc)( 3953: Display* /* dpy */, 3954: XPointer /* client_data */, 3955: int /* fd */, 3956: Bool /* opening */, /* open or close flag */ 3957: XPointer* /* watch_data */ /* open sets, close uses */ 3958: ); 3959: 3960: 3961: extern Status XInternalConnectionNumbers( 3962: Display* /* dpy */, 3963: int** /* fd_return */, 3964: int* /* count_return */ 3965: ); 3966: 3967: extern void XProcessInternalConnection( 3968: Display* /* dpy */, 3969: int /* fd */ 3970: ); 3971: 3972: extern Status XAddConnectionWatch( 3973: Display* /* dpy */, 3974: XConnectionWatchProc /* callback */, 3975: XPointer /* client_data */ 3976: ); 3977: 3978: extern void XRemoveConnectionWatch( 3979: Display* /* dpy */, 3980: XConnectionWatchProc /* callback */, 3981: XPointer /* client_data */ 3982: ); 3983: 3984: extern void XSetAuthorization( 3985: char * /* name */, 3986: int /* namelen */, 3987: char * /* data */, 3988: int /* datalen */ 3989: ); 3990: 3991: extern int _Xmbtowc( 3992: wchar_t * /* wstr */, 3993: #ifdef ISC 3994: char const * /* str */, 3995: size_t /* len */ 3996: #else 3997: char * /* str */, 3998: int /* len */ 3999: #endif 4000: ); 4001: 4002: extern int _Xwctomb( 4003: char * /* str */, 4004: wchar_t /* wc */ 4005: ); 4006: 4007: _XFUNCPROTOEND 4008: 4009: #endif /* _XLIB_H_ */ 4010: