Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ioctl(2)

getenv(3C)

termcap(4)

CURSES(3X)  —  Silicon Graphics

NAME

curses − screen functions with “optimal” cursor motion

SYNOPSIS

cc [ flags ] files −lcurses −ltermcap [ libraries ]
cc [ flags ] files −lcurses_p −ltermcap_p [ 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.

The file curses.h must be included in each module that uses these routines.  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.

Two of the routines, defined as macros, have the same name as routines in the Silicon Graphics graphics library.  Those users who use both curses and the graphics library in the same program should define the preprocessor symbol IRISCURSES prior to including curses.h in each module and use Move() and Clear() instead of the curses routines move() and clear().

The second form may be used for profiling. 

SEE ALSO

Screen Updating and Cursor Movement Optimization: A Library Package, Ken Arnold,
ioctl(2), getenv(3C), termcap(4)

AUTHOR

Ken Arnold

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
crmode()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 win
echo()set echo mode
endwin()end window modes
erase()erase stdscr
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 win
longname(termbuf,name)get long name from termbuf
move(y,x)move to (y,x) on stdscr
mvaddch(y,x,ch)move to (y,x) and do addch(ch)
mvaddstr(y,x,str)move to (y,x) and do addstr(str)
mvcur(lasty,lastx,newy,newx)actually move cursor
mvdelch(y,x)move to (y,x) and do delch()
mvgetch(y,x)move to (y,x) and do getch()
mvgetstr(y,x,str)move to (y,x) and do getstr(str)
mvinch(y,x)move to (y,x) and do inch()
mvinsch(y,x,c)move to (y,x) and do insch(c)
mvwaddch(win,y,x,ch)move to (y,x) and do waddch(win,ch)
mvwaddstr(win,y,x,str)move to (y,x) and do waddstr(win,str)
mvwdelch(win,y,x)move to (y,x) and do wdelch(win)
mvwgetch(win,y,x)move to (y,x) and do wgetch(win)
mvwgetstr(win,y,x,str)move to (y,x) and do wgetstr(win,str)
mvwinch(win,y,x)move to (y,x) and do winch(win)
mvwinsch(win,y,x,c)move to (y,x) and do winsch(win,c)
newwin(lines,cols,begin_y,begin_x) create a new window
nl()set newline mapping
nocrmode()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
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,c)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
 

Version 3.6  —  December 20, 1987

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026