CURSES(3) NetBSD Programmer's Manual CURSES(3)
NAME
curses - screen functions with ``optimal'' cursor motion
LIBRARY
Curses Library (libcurses, -lcurses)
SYNOPSIS
cc [flags] files -lcurses -ltermcap [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 the 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 oth- er routines that deal with windows and screens are used. The routine endwin() should be called before exiting. The routine start_color() must be called before any of the other routines that deal with color are used.
SEE ALSO
ioctl(2), getenv(3), tty(4), termcap(5) Ken Arnold, Screen Updating and Cursor Movement Optimization: A Library Package.
AUTHOR
Ken Arnold
FUNCTIONS
addch(ch) add a character to stdscr addstr(str) add a string to stdscr addnstr(str,len) add no more than len chars of string to stdscr attron(attribute) turn on attribute modes attroff(attribute) turn off attribute modes attrset(attribute) set attribute modes beep() sound the terminal bell bkgd(ch) set background rendition for stdscr and applies this rendi- tion to stdscr bkgdset(ch) set background rendition for stdscr border(ls,rs,ts,bs,tl,tr,bl,br) draw a border around stdscr box(win,vert,hor) draw a box around a window can_change_colors() check if terminal can change colors cbreak() set cbreak mode clear() clear stdscr clearok(win,boolf) set clear flag for win clrtobot() clear to bottom on stdscr clrtoeol() clear to end of line on stdscr color_content(c, r, g, b) get rgb values of color copywin(srcwin,dstwin,sminrow,smincol,dminrow,dmincol,dmaxrow,dmaxcol,overlay) Copy rectangle from srcwin to dstwin. If overlay is true then copy is nondestructive. curs_set(vis) change cursor visibility, 0 is invisible, 1 is normal, 2 is high visibility. Returns pre- vious value on success. delay_output(ms) pause output for ms millisec- onds using terminal pad charac- ter. def_prog_mode() define program (in curses) terminal modes def_shell_mode() define shell (not in curses) terminal modes delch() delete a character deleteln() delete a line delwin(win) delete win derwin(win,lines,cols,begin_y,begin_x) create a subwindow relative to win. doupdate() make current screen look like virtual screen dupwin(win) duplicate win echo() set echo mode endwin() end window modes erase() erase stdscr erasechar() Return the terminal erase character flash() flash the terminal screen flushinp() flush terminal input flushok(win,boolf) set flush-on-refresh flag for win fullname(termbuf,name) get full name from termbuf getattrs(win) get attributes for win getbkgd(win) get background rendition for win getcap(name) get terminal capability name getch() get a char through stdscr getcury(win) get current y position on win getcurx(win) get current x position on win getbegy(win) get start y position on win getbegx(win) get start x position on win getmaxy(win) get maximum y position on win getmaxx(win) get maximum x position on win getstr(str) get a string through stdscr gettmode() get tty modes getyx(win,y,x) get (y,x) co-ordinates has_colors() check if terminal has colors hline(ch, count) draw a horizontal line of character ch. idlok(win,boolf) set insert/deleteln flags for win inch() get char at current (y,x) co- ordinates init_color(c, r, g, b) set rgb values of color init_pair(p, f, b) set foreground and background colors of pair initscr() initialize screens insch(c) insert a char insdelln(n) insert/delete n lines on stdstr insertln() insert a line intrflush(win,boolf) set flush on interrupt terminal mode is_linetouched(win, line) check if line has been modified since last refresh. is_wintouched(win) Check if window has been modified since last refresh. isendwin() check if endwin() or wrefresh() was called latest keypad(win,boolf) set keypad flag for win killchar() Return the terminal kill character. leaveok(win,boolf) set leave flag for win longname(termbuf,name) get long name from termbuf meta(win,boolf) turn terminal meta mode on and off. Note win is always ig- nored. move(y,x) move to (y,x) on stdscr mvcur(lasty,lastx,newy,newx) actually move cursor mvhline(y, x, ch, count) move to y, x and draw a hori- zontal line of character ch for count characters. mvvline(y, x, ch, count) move to y, x and draw a verti- cal line of character ch for count characters. mvwhline(win, y, x, ch, count) move to y, x and draw a hori- zontal line of character ch for count characters on window win. mvwvline(win, y, x, ch, count) move to y, x and draw a verti- cal line of character ch for count characters on window win. napms(ms) sleep for ms milliseconds. newwin(lines,cols,begin_y,begin_x) create a new window nl() set newline mapping nocbreak() unset cbreak mode nodelay(win,boolf) unset blocking reads for win noecho() unset echo mode nonl() unset newline mapping noraw() unset raw mode notimeout(win, boolf) unset infinite timeout on keypad assembly for win overlay(win1,win2) overlay win1 on win2 overwrite(win1,win2) overwrite win1 on top of win2 pair_content(p, r, g, b) get foreground and background colors of pair_content(p,0 printw(fmt,arg1,arg2,...) printf on stdscr raw() set raw mode refresh() make current screen look like stdscr reset_prog_mode() restore program (in curses) terminal modes reset_shell_mode() restore shell (not in curses) terminal modes resetty() reset tty flags to stored value savetty() stored current tty flags scanw(fmt,arg1,arg2,...) scanf through stdscr scrl(n) scroll stdscr n lines scroll(win) scroll win one line scrollok(win,boolf) set scroll flag for win setterm(name) set term variables for name standend() end standout mode standout() start standout mode start_color() initialise color subwin(win,lines,cols,begin_y,begin_x) create a subwindow timeout(delay) set blocking or non-blocking read for stdscr 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 underend() end underscore mode underscore() start underscore mode ungetch(ch) Put character back onto input queue. untouchwin(win) Make window appear not to have been modified. vline(ch, count) Draw a vertical line of character ch. waddch(win,ch) add char to win waddstr(win,str) add string to win wattron(win,attribute) turn on attribute modes for win wattroff(win,attribute) turn off attribute modes for win wattrset(win,attribute) set attribute modes for win wbkgd(win, ch) set background rendition for win and apply this rendition to win wbkgdset(win, ch) set background rendition for win wborder(win,ls,rs,ts,bs,tl,tr,bl,br) draw a border around 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 whline(win, ch, count) Draw a horizontal line of character ch on window win. winch(win) get char at current (y,x) in win winsch(win,c) insert char into win winsdelln(win,n) insert/delete n lines on win winsertln(win) insert line into win wmove(win,y,x) set current (y,x) co-ordinates on win wnoutrefresh(win) add win to virtual screen wprintw(win,fmt,arg1,arg2,...) printf on win wrefresh(win) make screen look like win wscanw(win,fmt,arg1,arg2,...) scanf through win wscrl(win,n) scroll win n lines wstandend(win) end standout mode on win wstandout(win) start standout mode on win wtimeout(win,delay) set blocking or non-blocking read for win wtouchln(win, line, n, changed) If changed is 1 then touch n lines starting at line in win- dow win. If changed is 0 then untouch n lines starting at line in window win wunderend(win) end underscore mode on win wunderscore(win) start underscore mode on win wvline(win, ch, count) Draw a vertical line of character ch on window win.
HISTORY
The curses package appeared in 4.0BSD. NetBSD 1.5.2 March 11, 1999 4
Powered by man-cgi (2024-08-26). Maintained for NetBSD by Kimmo Suominen. Based on man-cgi by Panagiotis Christias.