OCURSES(3)

NAME
ocurses - screen functions with ``optimal'' cursor motion

SYNOPSIS
cc [flags] files -locurses [libraries]

DESCRIPTION
These routines give the user a method of updating screens with reasonable optimization. They keep an image of the current screen, and the user sets up an image of a new one. Then refresh() tells the routines to make the current screen look like the new one. In order to initialize the routines, the routine initscr() must be called before any of the other routines that deal with windows and screens are used. The routine endwin() should be called before exiting.

FUNCTIONS
addch(ch)
    add a character to stdscr
addstr(str)
    add a string to stdscr
box(win,vert,hor)
    draw a box around a window
cbreak()
    set cbreak mode
clear()
    clear stdscr
clearok(scr,boolf)
    set clear flag for scr
clrtobot()
    clear to bottom on stdscr
clrtoeol()
    clear to end of line on stdscr
delch()
    delete a character
deleteln()
    delete a line
delwin(win)
    delete stdscr
echo()
    set echo mode
endwin()
    end window modes
erase()
    erase stdscr
flusok(win,boolf)
    set flush-on-refresh flag for win
getch()
    get a char through stdscr
getcap(name)
    get terminal capability name
getstr(str)
    get a string through stdscr
gettmode()
    get tty modes
getyx(win,y,x)
    get (y,x) co-ordinates
inch()
    get char at current (y,x) co-ordinates
initscr()
    initialize screens
insch(c)
    insert a char
insertln()
    insert a line
leaveok(win,boolf)
    set leave flag for stdscr
longname(termbuf,name)
    get long name from termbuf
move(y,x)
    move to (y,x) on stdscr
mvcur(lasty,lastx,newy,newx)
    actually move cursor
newwin(lines,cols,begin_y,begin_x)
    create a new window
nl()
    set newline mapping
nocbreak()
    unset cbreak mode
noecho()
    unset echo mode
nonl()
    unset newline mapping
noraw()
    unset raw mode
overlay(win1,win2)
    overlay win1 on win2
overwrite(win1,win2)
    overwrite win1 on top of win2
printw(fmt,arg1,arg2,...)
    printf on stdscr
raw()
    set raw mode
refresh()
    make current screen look like stdscr
resetty()
    reset tty flags to stored value
savetty()
    stored current tty flags
scanw(fmt,arg1,arg2,...)
    scanf through stdscr
scroll(win)
    scroll win one line
scrollok(win,boolf)
    set scroll flag
setterm(name)
    set term variables for name
standend()
    end standout mode
standout()
    start standout mode
subwin(win,lines,cols,begin_y,begin_x)
    create a subwindow
touchline(win,y,sx,ex)
    mark line y sx through sy as changed
touchoverlap(win1,win2)
    mark overlap of win1 on win2 as changed
touchwin(win)
    “change” all of win
unctrl(ch)
    printable version of ch
waddch(win,ch)
    add char to win
waddstr(win,str)
    add string to win
wclear(win)
    clear win
wclrtobot(win)
    clear to bottom of win
wclrtoeol(win)
    clear to end of line on win
wdelch(win)
    delete char from win
wdeleteln(win)
    delete line from win
werase(win)
    erase win
wgetch(win)
    get a char through win
wgetstr(win,str)
    get a string through win
winch(win)
    get char at current (y,x) in win
winsch(win,c)
    insert char into win
winsertln(win)
    insert line into win
wmove(win,y,x)
    set current (y,x) co-ordinates on win
wprintw(win,fmt,arg1,arg2,...)
    printf on win
wrefresh(win)
    make screen look like win
wscanw(win,fmt,arg1,arg2,...)
    scanf through win
wstandend(win)
    end standout mode on win
wstandout(win)
    start standout mode on win

SEE ALSO
ioctl(2), getenv(3), termcap(3), tty(4), termcap(5) Screen Updating and Cursor Movement Optimization: A Library Package, Ken Arnold.

HISTORY
The ocurses package appeared in 4.0BSD.

AUTHORS
Ken Arnold