Annotation of 43BSD/contrib/X/CLUlib/CLUlib.doc, revision 1.1.1.1

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

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.