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