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