# curs_clear

## NAME



           **erase** , **werase** , **clear** , **wclear** , **clrtobot** , **wclrtobot** , **clrtoeol** ,
           **wclrtoeol** - clear all or part of a **curses** window
    


## SYNOPSIS



           **#include <curses.h>**
    
           **int erase(void);**
           **int werase(WINDOW ***_win_**);**
    
           **int clear(void);**
           **int wclear(WINDOW ***_win_**);**
    
           **int clrtobot(void);**
           **int wclrtobot(WINDOW ***_win_**);**
    
           **int clrtoeol(void);**
           **int wclrtoeol(WINDOW ***_win_**);**
    


## DESCRIPTION



       **erase/werase**
           The **erase** and **werase** routines copy blanks to every position in the
           window, clearing the screen.
    
           Blanks  created  by  erasure have the current background rendition
           (as set by **wbkgdset**(3X)) merged into them.
    
       **clear/wclear**
           The **clear** and **wclear** routines are like **erase** and **werase** , but  they
           also call **clearok**(3X), so that the screen is cleared completely on
           the  next  call  to  **wrefresh** for  that window and repainted from
           scratch.
    
       **clrtobot/wclrtobot**
           The **clrtobot** and **wclrtobot** routines erase from the cursor  to  the
           end  of screen.  That is, they erase all lines below the cursor in
           the window.  Also, the current line to the right  of  the  cursor,
           inclusive, is erased.
    
       **clrtoeol/wclrtoeol**
           The  **clrtoeol** and **wclrtoeol** routines erase the current line to the
           right of the cursor, inclusive, to the end of the current line.
    


## RETURN VALUE



           All routines return the integer **OK** on success and **ERR** on failure.
    
           X/Open defines no error conditions.  In this implementation,
    
           •   functions using a window pointer parameter return an error if
               it is null
    
           •   **wclrtoeol** returns an error if the cursor position is about to
               wrap.
    


## NOTES



           Note that **erase** , **werase** , **clear** , **wclear** , **clrtobot** , and **clrtoeol** may
           be macros.
    


## PORTABILITY



           These functions are described in the XSI Curses standard, Issue 4.
           The standard specifies that they return **ERR** on failure, but speci‐
           fies no error conditions.
    
           The SVr4.0 manual says that these functions could return "a non-
           negative integer if **immedok**(3X) is set", referring to the return-
           value of **wrefresh**.  In that implementation, **wrefresh** would return
           a count of the number of characters written to the terminal.
    
           Some historic curses implementations had, as an undocumented fea‐
           ture, the ability to do the equivalent of **clearok(..., 1)** by say‐
           ing **touchwin(stdscr)** or **clear(stdscr)**.  This will not work under
           ncurses.
    
           This implementation, and others such as Solaris, sets the current
           position to 0,0 after erasing via **werase** and **wclear**.  That fact is
           not documented in other implementations, and may not be true of
           implementations which were not derived from SVr4 source.
    
           Not obvious from the description, most implementations clear the
           screen after **wclear** even for a subwindow or derived window.  If
           you do not want to clear the screen during the next **wrefresh** , use
           **werase** instead.
    


* * *