Annotation of 43BSD/contrib/X/CLUlib/CLUlib.doc, revision 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.