Annotation of researchv10no/libcurses/scanw.c, revision 1.1.1.1

1.1       root        1: /*
                      2:  * scanw and friends
                      3:  *
                      4:  * 1/26/81 (Berkeley) @(#)scanw.c      1.1
                      5:  */
                      6: 
                      7: # include      "curses.ext"
                      8: 
                      9: /*
                     10:  *     This routine implements a scanf on the standard screen.
                     11:  */
                     12: scanw(fmt, args)
                     13: char   *fmt;
                     14: int    args; {
                     15: 
                     16:        return _sscans(stdscr, fmt, &args);
                     17: }
                     18: /*
                     19:  *     This routine implements a scanf on the given window.
                     20:  */
                     21: wscanw(win, fmt, args)
                     22: WINDOW *win;
                     23: char   *fmt;
                     24: int    args; {
                     25: 
                     26:        return _sscans(win, fmt, &args);
                     27: }
                     28: /*
                     29:  *     This routine actually executes the scanf from the window.
                     30:  *
                     31:  *     This is really a modified version of "sscanf".  As such,
                     32:  * it assumes that sscanf interfaces with the other scanf functions
                     33:  * in a certain way.  If this is not how your system works, you
                     34:  * will have to modify this routine to use the interface that your
                     35:  * "sscanf" uses.
                     36:  */
                     37: _sscans(win, fmt, args)
                     38: WINDOW *win;
                     39: char   *fmt;
                     40: int    *args; {
                     41: 
                     42:        unsigned char   buf[100];
                     43:        FILE    junk;
                     44: 
                     45:        junk._flag = _IOREAD|_IOSTRG;
                     46:        junk._base = junk._ptr = buf;
                     47:        if (wgetstr(win, buf) == ERR)
                     48:                return ERR;
                     49:        junk._cnt = strlen(buf);
                     50:        return _doscan(&junk, fmt, args);
                     51: }

unix.superglobalmegacorp.com

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