|
|
1.1 ! root 1: x_display = cluster ! 2: ! 3: init = proc (display: string) signals (error(string)) ! 4: % open connection to given display or $DISPLAY if string is empty ! 5: ! 6: root = proc () returns (x_window) ! 7: % returns root window ! 8: ! 9: width = proc () returns (int) ! 10: % returns root window width ! 11: ! 12: height = proc () returns (int) ! 13: % returns root window height ! 14: ! 15: device = proc () returns (int) ! 16: % returns device type ! 17: ! 18: protocol = proc () returns (int) ! 19: % returns protocol version ! 20: ! 21: planes = proc () returns (int) ! 22: % returns number of bit planes ! 23: ! 24: cells = proc () returns (int) ! 25: % returns number of color map cells ! 26: ! 27: grab = proc () ! 28: % grabs sole control of server ! 29: ! 30: ungrab = proc () ! 31: % ungrabs sole control of server ! 32: ! 33: alloc_color = proc (red, green, blue: int) returns (int) ! 34: signals (error(string)) ! 35: % allocates a (shared) read-only color ! 36: ! 37: alloc_cell = proc () returns (int) signals (error(string)) ! 38: % allocates a writable color map entry ! 39: ! 40: alloc_cells = proc (ncolors, nplanes: int, contig: bool) ! 41: returns (pixellist, int) signals (error(string)) ! 42: % allocates writable color map entries ! 43: ! 44: free_color = proc (pixel: int) ! 45: % free a color/cell ! 46: ! 47: free_colors = proc (pixels: pixellist, mask: int) ! 48: % free colors/cells ! 49: ! 50: store_color = proc (pixel, red, green, blue: int) ! 51: % change/initialize a color map entry ! 52: ! 53: store_colors = proc (defs: colordeflist) ! 54: % change/initialize color map entries ! 55: ! 56: query_color = proc (pixel: int) returns (int, int, int) ! 57: signals (error(string)) ! 58: % returns (red, green, blue) ! 59: ! 60: lookup_color = proc (name: string) returns (int, int, int, int, int, int) ! 61: signals (error(string)) ! 62: % returns (red, green, blue, h/w red, h/w green, h/w blue) ! 63: ! 64: black = proc () returns (x_pixmap) ! 65: % returns tile of BlackPixel ! 66: ! 67: white = proc () returns (x_pixmap) ! 68: % returns tile of WhitePixel ! 69: ! 70: x_bitmap = cluster ! 71: ! 72: none = proc () returns (cvt) ! 73: % returns placeholder ! 74: ! 75: create = proc (width, height: int, bits: _wordvec) returns (cvt) ! 76: signals (error(string)) ! 77: % _wordvec can be larger than needed ! 78: ! 79: destroy = proc (bit: cvt) ! 80: ! 81: c2b = proc (font: x_font, c: char) returns (cvt) signals (error(string)) ! 82: % returns bitmap of char ! 83: ! 84: get_id = proc (bit: cvt) returns (int) ! 85: ! 86: equal = proc (bit1, bit2: cvt) returns (bool) ! 87: ! 88: similar = proc (bit1, bit2: cvt) returns (bool) ! 89: ! 90: copy = proc (bit: cvt) returns (cvt) ! 91: ! 92: x_cursor = cluster ! 93: ! 94: none = proc () returns (cvt) ! 95: % returns placeholder ! 96: ! 97: create = proc (image, mask: x_bitmap, fore, back, xoff, yoff, func: int) ! 98: returns (cvt) signals (error(string)) ! 99: ! 100: cons = proc (width, height: int, image, mask: _wordvec, fore, back: int, ! 101: xoff, yoff, func: int) returns (x_cursor) ! 102: signals (error(string)) ! 103: % _wordvecs can be larger than needed ! 104: ! 105: destroy = proc (cursor: cvt) ! 106: ! 107: shape = proc (width, height: int) returns (int, int) ! 108: signals (error(string)) ! 109: % returns (supported width, supported height) ! 110: ! 111: get_id = proc (cursor: cvt) returns (int) ! 112: ! 113: equal = proc (cursor1, cursor2: cvt) returns (bool) ! 114: ! 115: similar = proc (cursor1, cursor2: cvt) returns (bool) ! 116: ! 117: copy = proc (cursor: cvt) returns (cvt) ! 118: ! 119: x_font = cluster ! 120: ! 121: create = proc (name: string) returns (cvt) signals (error(string)) ! 122: ! 123: destroy = proc (font: cvt) ! 124: ! 125: query = proc (font: cvt) returns (int, int, char, char, int, bool) ! 126: signals (error(string)) ! 127: % returns (avg_width, height, first_char, last_char, baseline, fixedwidth) ! 128: ! 129: widths = iter (font: cvt, s: string) yields (char, int) ! 130: signals (error(string)) ! 131: ! 132: width = proc (font: cvt, s: string) returns (int) signals (error(string)) ! 133: ! 134: all_widths = proc (font: cvt) returns (_wordvec) signals (error(string)) ! 135: % returns widths for first_char thru last_char, each width is 16 bits ! 136: ! 137: get_id = proc (font: cvt) returns (int) ! 138: ! 139: equal = proc (font1, font2: cvt) returns (bool) ! 140: ! 141: similar = proc (font1, font2: cvt) returns (bool) ! 142: ! 143: copy = proc (font: cvt) returns (cvt) ! 144: ! 145: x_pixmap = cluster ! 146: ! 147: none = proc () returns (cvt) ! 148: % returns placeholder ! 149: ! 150: create = proc (mask: x_bitmap, fore, back: int) returns (cvt) ! 151: signals (error(string)) ! 152: ! 153: create_xy = proc (width, height: int, bits: _wordvec) returns (cvt) ! 154: signals (error(string)) ! 155: % _wordvec can be larger than needed ! 156: ! 157: create_z = proc (width, height: int, bits: _wordvec) returns (cvt) ! 158: signals (error(string)) ! 159: % _wordvec can be larger than needed ! 160: ! 161: tile = proc (pixel: int) returns (cvt) signals (error(string)) ! 162: ! 163: destroy = proc (pix: cvt) ! 164: ! 165: shape = proc (width, height: int) returns (int, int) ! 166: signals (error(string)) ! 167: returns (supported width, supported height) ! 168: ! 169: get_id = proc (pix: cvt) returns (int) ! 170: ! 171: equal = proc (pix1, pix2: cvt) returns (bool) ! 172: ! 173: similar = proc (pix1, pix2: cvt) returns (bool) ! 174: ! 175: copy = proc (pix: cvt) returns (cvt) ! 176: ! 177: x_window = cluster ! 178: ! 179: none = proc () returns (cvt) ! 180: % returns placeholder ! 181: ! 182: create = proc (x, y, width, height: int, background: x_pixmap, parent: cvt, ! 183: borderwidth: int, border: x_pixmap) returns (cvt) ! 184: signals (error(string)) ! 185: % (x, y) for outer left, (width, height) exclude border ! 186: ! 187: create_transparency = proc (x, y, width, height: int, parent: cvt) ! 188: returns (cvt) signals (error(string)) ! 189: ! 190: destroy = proc (w: cvt) ! 191: ! 192: destroy_subwindows = proc (w: cvt) ! 193: ! 194: map = proc (w: cvt) ! 195: ! 196: map_subwindows = proc (w: cvt) ! 197: ! 198: unmap = proc (w: cvt) ! 199: ! 200: unmap_subwindows = proc (w: cvt) ! 201: ! 202: unmap_transparent = proc (w: cvt) ! 203: ! 204: raise = proc (w: cvt) ! 205: ! 206: lower = proc (w: cvt) ! 207: ! 208: circulate_up = proc (w: cvt) ! 209: ! 210: circulate_down = proc (w: cvt) ! 211: ! 212: move = proc (w: cvt, x, y: int) ! 213: % (x, y) for outer left ! 214: ! 215: change = proc (w: cvt, width, height: int) ! 216: % (width, height) exclude border ! 217: ! 218: configure = proc (w: cvt, x, y, width, height: int) ! 219: % (x, y) for outer left, (width, height) exclude border ! 220: ! 221: set_background = proc (w: cvt, background: x_pixmap) ! 222: % does not cause redisplay ! 223: ! 224: set_border = proc (w: cvt, border: x_pixmap) ! 225: ! 226: set_tilemode = proc (w: cvt, relative: bool) ! 227: ! 228: set_clipmode = proc (w: cvt, drawthru: bool) ! 229: ! 230: query = proc (w: cvt) returns (int, int, int, int, int, int, int, cvt) ! 231: signals (error(string)) ! 232: % returns (x, y, width, height, border, map, kind, icon) ! 233: ! 234: query_tree = proc (w: cvt) returns (cvt, wlist) signals (error(string)) ! 235: wlist = array[x_window] ! 236: % returns (parent, children in bottom->top order) ! 237: ! 238: get_name = proc (w: cvt) returns (string) signals (error(string)) ! 239: ! 240: set_name = proc (w: cvt, n: string) ! 241: ! 242: set_icon = proc (w, icon: cvt) ! 243: ! 244: get_resize = proc (w: cvt) returns (int, int, int, int) ! 245: signals (error(string)) ! 246: % returns (base width, width increment, base height, height increment) ! 247: ! 248: set_resize = proc (w: cvt, width0, widthinc, height0, heightinc: int) ! 249: ! 250: set_cursor = proc (w: cvt, cursor: x_cursor) ! 251: ! 252: set_input = proc (w: cvt, mask: int) ! 253: ! 254: grab_mouse = proc (w: cvt, mask: int, cursor: x_cursor) ! 255: signals (error(string)) ! 256: ! 257: ungrab_mouse = proc () ! 258: ! 259: grab_button = proc (w: cvt, button, mask: int, cursor: x_cursor) ! 260: signals (error(string)) ! 261: ! 262: ungrab_button = proc (button: int) ! 263: ! 264: query_mouse = proc (w: cvt) returns (int, int, cvt) signals (error(string)) ! 265: % returns (x, y, sub window) ! 266: ! 267: interpret_locator = proc (w: cvt, x, y: int) returns (int, int, cvt) ! 268: signals (error(string)) ! 269: % returns (x, y, sub window) ! 270: ! 271: warp_mouse = proc (w: cvt, x, y: int) ! 272: ! 273: cond_warp_mouse = proc (dstw: cvt, dstx, dsty: int, srcw: cvt, ! 274: srcx, srcy, srcwidth, srcheight: int) ! 275: ! 276: focus_keyboard = proc (w: cvt) ! 277: ! 278: clear = proc (w: cvt) ! 279: ! 280: pix_set = proc (w: cvt, pixel, x, y, width, height: int) ! 281: % GXcopy to all planes ! 282: ! 283: pix_fill = proc (w: cvt, pixel: int, mask: x_bitmap, ! 284: x, y, width, height, func, planes: int) ! 285: ! 286: tile_set = proc (w: cvt, tile: x_pixmap, x, y, width, height: int) ! 287: % GXcopy to all planes ! 288: ! 289: tile_fill = proc (w: cvt, tile: x_pixmap, mask: x_bitmap, ! 290: x, y, width, height, func, planes: int) ! 291: ! 292: pixmap_put = proc (w: cvt, pix: x_pixmap, ! 293: srcx, srcy, width, height, dstx, dsty, func, planes: int) ! 294: ! 295: pixmap_zbitsput = proc (w: cvt, width, height: int, bits: _wordvec, ! 296: mask: x_bitmap, x, y, func, planes: int) ! 297: % _wordvec can be larger than needed ! 298: ! 299: pixmap_xybitsput = proc (w: cvt, width, height: int, bits: _wordvec, ! 300: mask: x_bitmap, x, y, func, planes: int) ! 301: % _wordvec can be larger than needed ! 302: ! 303: bitmap_bitsput = proc (w: cvt, width, height: int, bits: _wordvec, ! 304: fore, back: int, mask: x_bitmap, x, y, func, planes: int) ! 305: % _wordvec can be larger than needed ! 306: ! 307: move_area = proc (w: cvt, srcx, srcy, width, height, dstx, dsty: int) ! 308: % GXcopy to all planes ! 309: ! 310: copy_area = proc (w: cvt, srcx, srcy, width, height, dstx, dsty: int, ! 311: func, planes: int) ! 312: ! 313: text = proc (w: cvt, s: string, font: x_font, fore, back, x, y: int) ! 314: % GXcopy to all planes ! 315: ! 316: textv = proc (w: cvt, b: _bytevec, start, z: int, font: x_font, ! 317: fore, back, x, y: int) ! 318: % GXcopy to all planes ! 319: ! 320: texta = proc (w: cvt, a: array[char], start, z: int, font: x_font, ! 321: fore, back, x, y: int) ! 322: % GXcopy to all planes ! 323: ! 324: text_pad = proc (w: cvt, s: string, font: x_font, ! 325: fore, back, cpad, spad, x, y: int, func, planes: int) ! 326: ! 327: textv_pad = proc (w: cvt, b: _bytevec, start, z: int, font: x_font, ! 328: fore, back, cpad, spad: int, x, y: int, func, planes: int) ! 329: ! 330: texta_pad = proc (w: cvt, a: array[char], start, z: int, font: x_font, ! 331: fore, back, cpad, spad: int, x, y: int, func, planes: int) ! 332: ! 333: text_mask = proc (w: cvt, s: string, font: x_font, pixel, x, y: int) ! 334: % GXcopy to all planes ! 335: ! 336: textv_mask = proc (w: cvt, b: _bytevec, start, z: int, font: x_font, ! 337: pixel, x, y: int) ! 338: % GXcopy to all planes ! 339: ! 340: texta_mask = proc (w: cvt, a: array[char], start, z: int, font: x_font, ! 341: pixel, x, y: int) ! 342: % GXcopy to all planes ! 343: ! 344: text_mask_pad = proc (w: cvt, s: string, font: x_font, ! 345: pixel, cpad, spad, x, y: int, func, planes: int) ! 346: ! 347: textv_mask_pad = proc (w: cvt, b: _bytevec, start, z: int, font: x_font, ! 348: pixel, cpad, spad: int, x, y: int, func, planes: int) ! 349: ! 350: texta_mask_pad = proc (w: cvt, a: array[char], start, z: int, font: x_font, ! 351: pixel, cpad, spad: int, x, y: int, func, planes: int) ! 352: ! 353: line = proc (w: cvt, pixel, width, height, x1, y1, x2, y2, func, planes: int) ! 354: ! 355: draw = proc (w: cvt, verts: x_vlist, z, pixel, width, height, func, planes: int) ! 356: ! 357: draw_dashed = proc (w: cvt, verts: x_vlist, z, pixel, width, height: int, ! 358: pattern, patlen, patmul, func, planes: int) ! 359: ! 360: draw_patterned = proc (w: cvt, verts: x_vlist, z, pixel, altpix: int, ! 361: width, height, pattern, patlen, patmul, func, planes: int) ! 362: ! 363: draw_filled = proc (w: cvt, verts: x_vlist, z, pixel, func, planes: int) ! 364: ! 365: draw_tiled = proc (w: cvt, verts: x_vlist, z: int, tile: x_pixmap, ! 366: func, planes: int) ! 367: ! 368: save_region = proc (w: cvt, x, y, width, height: int) returns (x_pixmap) ! 369: signals (error(string)) ! 370: ! 371: read_xyregion = proc (w: cvt, x, y, width, height: int) returns (_wordvec) ! 372: signals (error(string)) ! 373: ! 374: read_zregion = proc (w: cvt, x, y, width, height: int) returns (_wordvec) ! 375: signals (error(string)) ! 376: ! 377: get_id = proc (w: cvt) returns (int) ! 378: ! 379: equal = proc (w1, w2: cvt) returns (bool) ! 380: ! 381: similar = proc (w1, w2: cvt) returns (bool) ! 382: ! 383: copy = proc (w: cvt) returns (cvt) ! 384: ! 385: x_input = cluster ! 386: ! 387: init = proc () ! 388: % called automatically by x_display$init ! 389: ! 390: set_squish = proc (flag: bool) ! 391: % control mouse motion event compaction ! 392: ! 393: enq = proc (e: event) ! 394: % copy of event will be made ! 395: ! 396: deq = proc (e: event) ! 397: % wait for next event, stores results in argument ! 398: ! 399: edeq = proc (kind: int, e: event) ! 400: % wait for single kind of event, stores results in argument ! 401: ! 402: mdeq = proc (kinds: int, e: event) ! 403: % wait for any event in kinds, stores results in argument ! 404: ! 405: wdeq = proc (w: x_window, kinds: int, e: event) ! 406: % wait for any event on w in kinds, stores results in argument ! 407: ! 408: pending = proc () returns (bool) ! 409: % if any event pending ! 410: ! 411: epending = proc (kind: int) returns (bool) ! 412: % if any event of single kind pending ! 413: ! 414: mpending = proc (kinds: int) returns (bool) ! 415: % if any event of kinds pending ! 416: ! 417: wpending = proc (w: x_window, kinds: int) returns (bool) ! 418: % if any event on w of kinds pending ! 419: ! 420: empty_event = proc () returns (event) ! 421: % returns empty event suitable for calling deq ! 422: ! 423: x_keymap = cluster ! 424: ! 425: load = proc (fs: string) ! 426: % load keymap file (if empty string, load ~/.Xkeymap) ! 427: ! 428: getc = proc (key, mask: int) returns (char) signals (none, multi(string)) ! 429: % map to assumed single character ! 430: ! 431: gets = proc (key, mask: int) returns (string) signals (none) ! 432: % map to assumed character string ! 433: ! 434: x_cons = proc (name: string, back, border: x_pixmap, spec, defspec: string, ! 435: minwidth, minheight, bwidth: int) returns (x_window, int, int) ! 436: % create a top-level window ! 437: % spec is usual =spec from command line, defspec is default ! 438: ! 439: x_tcons = proc (name: string, back, border: x_pixmap, spec, defspec: string, ! 440: f: x_font, fwidth, fheight: int, ! 441: add, minwidth, minheight, bwidth: int) ! 442: returns (x_window, int, int) ! 443: % create a top-level (text) window ! 444: % spec is usual =spec from command line, defspec is default ! 445: % width (height) be 2*add plus multiple of fwidth (fheight) ! 446: ! 447: x_default = proc (prog, option: string) returns (string) signals (not_found) ! 448: % return option value from .Xdefaults file ! 449: ! 450: x_parse_color = proc (spec: string) returns (int, int, int) ! 451: signals (bad_format, undefined) ! 452: % returns (red, green, blue) ! 453: ! 454: x_flush = proc () ! 455: % flush buffered output ! 456: ! 457: x_feep = proc (volume: int) ! 458: ! 459: x_store_cut = proc (buf: int, s: string) ! 460: ! 461: x_fetch_cut = proc (buf: int) returns (string) signals (error(string)) ! 462: ! 463: x_rotate_cuts = proc (buf: int) ! 464: ! 465: x_mouse_control = proc (accel, thresh: int) ! 466: ! 467: x_feep_control = proc (volume: int) ! 468: ! 469: x_shift_lock = proc (toggle: bool) ! 470: ! 471: x_key_click = proc (volume: int) ! 472: ! 473: x_auto_repeat = proc (on: bool) ! 474: ! 475: x_screen_saver = proc (video: bool, timeout, shift: int) ! 476: ! 477: x_error = proc (why: string) ! 478: % routine called on internal X error
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.