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