12248Sarnold # include "curses.ext" 22248Sarnold 32248Sarnold /* 42248Sarnold * This routine erases everything on the window. 52248Sarnold * 6*19881Sbloom * @(#)erase.c 1.3 (Berkeley) 05/01/85 72248Sarnold */ 82248Sarnold werase(win) 92248Sarnold reg WINDOW *win; { 102248Sarnold 112248Sarnold reg int y; 122248Sarnold reg char *sp, *end, *start, *maxx; 132248Sarnold reg int minx; 142248Sarnold 152288Sarnold # ifdef DEBUG 162288Sarnold fprintf(outf, "WERASE(%0.2o)\n", win); 172288Sarnold # endif 182248Sarnold for (y = 0; y < win->_maxy; y++) { 192248Sarnold minx = _NOCHANGE; 202248Sarnold start = win->_y[y]; 212248Sarnold end = &start[win->_maxx]; 222248Sarnold for (sp = start; sp < end; sp++) 232248Sarnold if (*sp != ' ') { 242248Sarnold maxx = sp; 252248Sarnold if (minx == _NOCHANGE) 262248Sarnold minx = sp - start; 272248Sarnold *sp = ' '; 282248Sarnold } 29*19881Sbloom if (minx != _NOCHANGE) 30*19881Sbloom touchline(win, y, minx, maxx - win->_y[y]); 312248Sarnold } 322248Sarnold win->_curx = win->_cury = 0; 332248Sarnold } 34