/* * Copyright (c) 1980 Regents of the University of California. * All rights reserved. The Berkeley software License Agreement * specifies the terms and conditions for redistribution. */ #if !defined(lint) && !defined(NOSCCS) static char sccsid[] = "@(#)clrtoeol.c 5.1 (Berkeley) 6/7/85"; #endif # include "curses.ext" /* * This routine clears up to the end of line * */ wclrtoeol(win) reg WINDOW *win; { reg char *sp, *end; reg int y, x; reg char *maxx; reg int minx; y = win->_cury; x = win->_curx; end = &win->_y[y][win->_maxx]; minx = _NOCHANGE; maxx = &win->_y[y][x]; for (sp = maxx; sp < end; sp++) if (*sp != ' ') { maxx = sp; if (minx == _NOCHANGE) minx = sp - win->_y[y]; *sp = ' '; } /* * update firstch and lastch for the line */ touchline(win, y, win->_curx, win->_maxx - 1); # ifdef DEBUG fprintf(outf, "CLRTOEOL: minx = %d, maxx = %d, firstch = %d, lastch = %d\n", minx, maxx - win->_y[y], win->_firstch[y], win->_lastch[y]); # endif }