X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=Ada95%2Fhtml%2Fncurses.3x.html;fp=Ada95%2Fhtml%2Fncurses.3x.html;h=0000000000000000000000000000000000000000;hp=4cae6bbe9dfe0e7ed00af9068d68bd1b7bcf3ee0;hb=0eb88fc5281804773e2a0c7a488a4452463535ce;hpb=661078ddbde3ce0f3b06e95642fbb9b5fef7dca1 diff --git a/Ada95/html/ncurses.3x.html b/Ada95/html/ncurses.3x.html deleted file mode 100644 index 4cae6bbe..00000000 --- a/Ada95/html/ncurses.3x.html +++ /dev/null @@ -1,490 +0,0 @@ - -
-- ncurses - CRT screen handling and optimization package - - --
- #include <curses.h> - - --
- The curses library routines give the user a terminal-inde- - pendent method of updating character screens with reason- - able optimization. This implementation is ``new curses'' - (ncurses) and is the approved replacement for 4.4BSD clas- - sic curses, which has been discontinued. - - The ncurses routines emulate the curses(3X) library of - System V Release 4 UNIX, and the XPG4 curses standard (XSI - curses) but the ncurses library is freely redistributable - in source form. Differences from the SVr4 curses are sum- - marized under the EXTENSIONS and BUGS sections below and - described in detail in the EXTENSIONS and BUGS sections of - individual man pages. - - A program using these routines must be linked with the - -lncurses option, or (if it has been generated) with the - debugging library -lncurses_g. (Your system integrator - may also have installed these libraries under the names - -lcurses and -lcurses_g.) The ncurses_g library generates - trace logs (in a file called 'trace' in the current direc- - tory) that describe curses actions. - - The ncurses package supports: overall screen, window and - pad manipulation; output to windows and pads; reading ter- - minal input; control over terminal and curses input and - output options; environment query routines; color manipu- - lation; use of soft label keys; terminfo capabilities; and - access to low-level terminal-manipulation routines. - - To initialize the routines, the routine initscr or newterm - must be called before any of the other routines that deal - with windows and screens are used. The routine endwin - must be called before exiting. To get character-at-a-time - input without echoing (most interactive, screen oriented - programs want this), the following sequence should be - used: - - initscr(); cbreak(); noecho(); - - Most programs would additionally use the sequence: - - nonl(); - intrflush(stdscr, FALSE); - keypad(stdscr, TRUE); - - Before a curses program is run, the tab stops of the ter- - the tput init command after the shell environment variable - TERM has been exported. tset(1) is usually responsible - for doing this. [See terminfo(5) for further details.] - - The curses library permits manipulation of data struc- - tures, called windows, which can be thought of as two- - dimensional arrays of characters representing all or part - of a CRT screen. A default window called stdscr, which is - the size of the terminal screen, is supplied. Others may - be created with newwin. - - Note that curses does not handle overlapping windows, - that's done by the panel(3X) library. This means that you - can either use stdscr or divide the screen into tiled win- - dows and not using stdscr at all. Mixing the two will - result in unpredictable, and undesired, effects. - - Windows are referred to by variables declared as WINDOW *. - These data structures are manipulated with routines - described here and elsewhere in the ncurses manual pages. - Among which the most basic routines are move and addch. - More general versions of these routines are included with - names beginning with w, allowing the user to specify a - window. The routines not beginning with w affect stdscr.) - - After using routines to manipulate a window, refresh is - called, telling curses to make the user's CRT screen look - like stdscr. The characters in a window are actually of - type chtype, (character and attribute data) so that other - information about the character may also be stored with - each character. - - Special windows called pads may also be manipulated. - These are windows which are not constrained to the size of - the screen and whose contents need not be completely dis- - played. See curs_pad(3X) for more information. - - In addition to drawing characters on the screen, video - attributes and colors may be supported, causing the char- - acters to show up in such modes as underlined, in reverse - video, or in color on terminals that support such display - enhancements. Line drawing characters may be specified to - be output. On input, curses is also able to translate - arrow and function keys that transmit escape sequences - into single values. The video attributes, line drawing - characters, and input values use names, defined in - <curses.h>, such as A_REVERSE, ACS_HLINE, and KEY_LEFT. - - If the environment variables LINES and COLUMNS are set, or - if the program is executing in a window environment, line - and column information in the environment will override - information read by terminfo. This would effect a program - - If the environment variable TERMINFO is defined, any pro- - gram using curses checks for a local terminal definition - before checking in the standard place. For example, if - TERM is set to att4424, then the compiled terminal defini- - tion is found in - - @DATADIR@/terminfo/a/att4424. - - (The a is copied from the first letter of att4424 to avoid - creation of huge directories.) However, if TERMINFO is - set to $HOME/myterms, curses first checks - - $HOME/myterms/a/att4424, - - and if that fails, it then checks - - @DATADIR@/terminfo/a/att4424. - - This is useful for developing experimental definitions or - when write permission in @DATADIR@/terminfo is not avail- - able. - - The integer variables LINES and COLS are defined in - <curses.h> and will be filled in by initscr with the size - of the screen. The constants TRUE and FALSE have the val- - ues 1 and 0, respectively. - - The curses routines also define the WINDOW * variable - curscr which is used for certain low-level operations like - clearing and redrawing a screen containing garbage. The - curscr can be used in only a few routines. - - - Routine and Argument Names - Many curses routines have two or more versions. The rou- - tines prefixed with w require a window argument. The rou- - tines prefixed with p require a pad argument. Those with- - out a prefix generally use stdscr. - - The routines prefixed with mv require a y and x coordinate - to move to before performing the appropriate action. The - mv routines imply a call to move before the call to the - other routine. The coordinate y always refers to the row - (of the window), and x always refers to the column. The - upper left-hand corner is always (0,0), not (1,1). - - The routines prefixed with mvw take both a window argument - and x and y coordinates. The window argument is always - specified before the coordinates. - - In each case, win is the window affected, and pad is the - - Option setting routines require a Boolean flag bf with the - value TRUE or FALSE; bf is always of type bool. The vari- - ables ch and attrs below are always of type chtype. The - types WINDOW, SCREEN, bool, and chtype are defined in - <curses.h>. The type TERMINAL is defined in <term.h>. - All other arguments are integers. - - - Routine Name Index - The following table lists each curses routine and the name - of the manual page on which it is described. Routines - flagged with `*' are ncurses-specific, not described by - XPG4 or present in SVr4. - - center tab(/); l l l l . curses Routine Name/Manual Page - Name = addch/curs_addch(3X) addchnstr/curs_addchstr(3X) - addchstr/curs_addchstr(3X) addnstr/curs_addstr(3X) - addstr/curs_addstr(3X) attroff/curs_attr(3X) - attron/curs_attr(3X) attrset/curs_attr(3X) bau- - drate/curs_termattrs(3X) beep/curs_beep(3X) - bkgd/curs_bkgd(3X) bkgdset/curs_bkgd(3X) border/curs_bor- - der(3X) box/curs_border(3X) - can_change_color/curs_color(3X) cbreak/curs_inopts(3X) - clear/curs_clear(3X) clearok/curs_outopts(3X) clrto- - bot/curs_clear(3X) clrtoeol/curs_clear(3X) color_con- - tent/curs_color(3X) copywin/curs_overlay(3X) - curs_set/curs_kernel(3X) def_prog_mode/curs_kernel(3X) - def_shell_mode/curs_kernel(3X) del_curterm/curs_ter- - minfo(3X) delay_output/curs_util(3X) delch/curs_delch(3X) - deleteln/curs_deleteln(3X) delscreen/curs_initscr(3X) del- - win/curs_window(3X) derwin/curs_window(3X) doup- - date/curs_refresh(3X) dupwin/curs_window(3X) - echo/curs_inopts(3X) echochar/curs_addch(3X) end- - win/curs_initscr(3X) erase/curs_clear(3X) - erasechar/curs_termattrs(3X) filter/curs_util(3X) - flash/curs_beep(3X) flushinp/curs_util(3X) getbe- - gyx/curs_getyx(3X) getch/curs_getch(3X) get- - maxyx/curs_getyx(3X) getmouse/curs_mouse(3X)* get- - paryx/curs_getyx(3X) getstr/curs_getstr(3X) get- - syx/curs_kernel(3X) getwin/curs_util(3X) - getyx/curs_getyx(3X) halfdelay/curs_inopts(3X) has_col- - ors/curs_color(3X) has_ic/curs_termattrs(3X) - has_il/curs_termattrs(3X) has_key/curs_getch(3X)* - hline/curs_border(3X) idcok/curs_outopts(3X) - idlok/curs_outopts(3X) immedok/curs_outopts(3X) - inch/curs_inch(3X) inchnstr/curs_inchstr(3X) inch- - str/curs_inchstr(3X) init_color/curs_color(3X) - init_pair/curs_color(3X) initscr/curs_initscr(3X) - innstr/curs_instr(3X) insch/curs_insch(3X) ins- - delln/curs_deleteln(3X) insertln/curs_deleteln(3X) - insnstr/curs_insstr(3X) insstr/curs_insstr(3X) - isendwin/curs_initscr(3X) keyname/curs_util(3X) key- - pad/curs_inopts(3X) killchar/curs_termattrs(3X) - leaveok/curs_outopts(3X) longname/curs_termattrs(3X) - mcprint/curs_print(3X)* meta/curs_inopts(3X) mouseinter- - val/curs_mouse(3X)* mousemask/curs_mouse(3X)* - move/curs_move(3X) mvaddch/curs_addch(3X) mvaddchn- - str/curs_addchstr(3X) mvaddchstr/curs_addchstr(3X) - mvaddnstr/curs_addstr(3X) mvaddstr/curs_addstr(3X) - mvcur/curs_terminfo(3X) mvdelch/curs_delch(3X) mvder- - win/curs_window(3X) mvgetch/curs_getch(3X) mvget- - str/curs_getstr(3X) mvinch/curs_inch(3X) mvinchn- - str/curs_inchstr(3X) mvinchstr/curs_inchstr(3X) - mvinnstr/curs_instr(3X) mvinsch/curs_insch(3X) mvin- - snstr/curs_insstr(3X) mvinsstr/curs_insstr(3X) mvin- - str/curs_instr(3X) mvprintw/curs_printw(3X) mvs- - canw/curs_scanw(3X) mvwaddch/curs_addch(3X) mvwaddchn- - str/curs_addchstr(3X) mvwaddchstr/curs_addchstr(3X) - mvwaddnstr/curs_addstr(3X) mvwaddstr/curs_addstr(3X) - mvwdelch/curs_delch(3X) mvwgetch/curs_getch(3X) mvwget- - str/curs_getstr(3X) mvwin/curs_window(3X) - mvwinch/curs_inch(3X) mvwinchnstr/curs_inchstr(3X) - mvwinchstr/curs_inchstr(3X) mvwinnstr/curs_instr(3X) - mvwinsch/curs_insch(3X) mvwinsnstr/curs_insstr(3X) - mvwinsstr/curs_insstr(3X) mvwinstr/curs_instr(3X) mvw- - printw/curs_printw(3X) mvwscanw/curs_scanw(3X) - napms/curs_kernel(3X) newpad/curs_pad(3X) - newterm/curs_initscr(3X) newwin/curs_window(3X) - nl/curs_outopts(3X) nocbreak/curs_inopts(3X) node- - lay/curs_inopts(3X) noecho/curs_inopts(3X) nonl/curs_out- - opts(3X) noqiflush/curs_inopts(3X) noraw/curs_inopts(3X) - notimeout/curs_inopts(3X) overlay/curs_overlay(3X) over- - write/curs_overlay(3X) pair_content/curs_color(3X) - pechochar/curs_pad(3X) pnoutrefresh/curs_pad(3X) pre- - fresh/curs_pad(3X) printw/curs_printw(3X) putp/curs_ter- - minfo(3X) putwin/curs_util(3X) qiflush/curs_inopts(3X) - raw/curs_inopts(3X) redrawwin/curs_refresh(3X) - refresh/curs_refresh(3X) reset_prog_mode/curs_kernel(3X) - reset_shell_mode/curs_kernel(3X) resetty/curs_kernel(3X) - resizeterm/resizeterm(3X)* restartterm/curs_terminfo(3X) - ripoffline/curs_kernel(3X) savetty/curs_kernel(3X) - scanw/curs_scanw(3X) scr_dump/curs_scr_dump(3X) - scr_init/curs_scr_dump(3X) scr_restore/curs_scr_dump(3X) - scr_set/curs_scr_dump(3X) scrl/curs_scroll(3X) - scroll/curs_scroll(3X) scrollok/curs_outopts(3X) - set_curterm/curs_terminfo(3X) set_term/curs_initscr(3X) - setscrreg/curs_outopts(3X) setsyx/curs_kernel(3X) set- - term/curs_terminfo(3X) setupterm/curs_terminfo(3X) - slk_attr/curs_slk(3X)* slk_attroff/curs_slk(3X) - slk_attron/curs_slk(3X) slk_attrset/curs_slk(3X) - slk_clear/curs_slk(3X) slk_init/curs_slk(3X) - slk_label/curs_slk(3X) slk_noutrefresh/curs_slk(3X) - slk_refresh/curs_slk(3X) slk_restore/curs_slk(3X) - start_color/curs_color(3X) subpad/curs_pad(3X) sub- - win/curs_window(3X) syncok/curs_window(3X) termat- - trs/curs_termattrs(3X) termname/curs_termattrs(3X) tge- - tent/curs_termcap(3X) tgetflag/curs_termcap(3X) tget- - num/curs_termcap(3X) tgetstr/curs_termcap(3X) - tgoto/curs_termcap(3X) tigetflag/curs_terminfo(3X) tiget- - num/curs_terminfo(3X) tigetstr/curs_terminfo(3X) time- - out/curs_inopts(3X) touchline/curs_touch(3X) touch- - win/curs_touch(3X) tparm/curs_terminfo(3X) - tputs/curs_termcap(3X) tputs/curs_terminfo(3X) typea- - head/curs_inopts(3X) unctrl/curs_util(3X) - ungetch/curs_getch(3X) ungetmouse/curs_mouse(3X)* untouch- - win/curs_touch(3X) use_env/curs_util(3X) vidattr/curs_ter- - minfo(3X) vidputs/curs_terminfo(3X) vline/curs_border(3X) - vwprintw/curs_printw(3X) vwscanw/curs_scanw(3X) wad- - dch/curs_addch(3X) waddchnstr/curs_addchstr(3X) waddch- - str/curs_addchstr(3X) waddnstr/curs_addstr(3X) - waddstr/curs_addstr(3X) wattroff/curs_attr(3X) wat- - tron/curs_attr(3X) wattrset/curs_attr(3X) - wbkgd/curs_bkgd(3X) wbkgdset/curs_bkgd(3X) wbor- - der/curs_border(3X) wclear/curs_clear(3X) wclrto- - bot/curs_clear(3X) wclrtoeol/curs_clear(3X) wcursyn- - cup/curs_window(3X) wdelch/curs_delch(3X) - wdeleteln/curs_deleteln(3X) wechochar/curs_addch(3X) wen- - close/curs_mouse(3X)* werase/curs_clear(3X) - wgetch/curs_getch(3X) wgetnstr/curs_getstr(3X) wget- - str/curs_getstr(3X) whline/curs_border(3X) - winch/curs_inch(3X) winchnstr/curs_inchstr(3X) winch- - str/curs_inchstr(3X) winnstr/curs_instr(3X) win- - sch/curs_insch(3X) winsdelln/curs_deleteln(3X) win- - sertln/curs_deleteln(3X) winsnstr/curs_insstr(3X) - winsstr/curs_insstr(3X) winstr/curs_instr(3X) - wmove/curs_move(3X) wnoutrefresh/curs_refresh(3X) - wprintw/curs_printw(3X) wredrawln/curs_refresh(3X) wre- - fresh/curs_refresh(3X) wresize/wresize(3X)* - wscanw/curs_scanw(3X) wscrl/curs_scroll(3X) wsetscr- - reg/curs_outopts(3X) wstandend/curs_attr(3X) wstand- - out/curs_attr(3X) wsyncdown/curs_window(3X) wsyn- - cup/curs_window(3X) wtimeout/curs_inopts(3X) - wtouchln/curs_touch(3X) wvline/curs_border(3X) - - --
- Routines that return an integer return ERR upon failure - and an integer value other than ERR upon successful com- - pletion, unless otherwise noted in the routine descrip- - tions. - - All macros return the value of the w version, except - setscrreg, wsetscrreg, getyx, getbegyx, getmaxyx. The - return values of setscrreg, wsetscrreg, getyx, getbegyx, - and getmaxyx are undefined (i.e., these should not be used - as the right-hand side of assignment statements). - - --
- terminfo(5) and 3X pages whose names begin "curs_" for - detailed routine descriptions. - - --
- The curses library can be compiled with an option (-DTERM- - CAP_FILE) that falls back to the old-style /etc/termcap - file if the terminal setup code cannot find a terminfo - entry corresponding to TERM. Use of this feature is not - recommended, as it essentially includes an entire termcap - compiler in the curses startup code, at significant cost - in core and startup cycles. - - Compiling with -DTERMCAP_FILE changes the library's ini- - tialization sequence in a way intended to mimic the behav- - ior of 4.4BSD curses. If there is no local or system ter- - minfo entry matching TERM, then the library looks for - termcap entries in the following places: (1) if TERMINFO - is undefined, in the file named by TERMCAP_FILE; (2) if - TERMINFO is defined and begins with a slash, it is inter- - preted as the name of a termcap file to search for TERM; - (3) otherwise, if TERMINFO has a leading string that looks - like a terminal entry name list, and it matches TERM, the - contents of TERMINFO is interpreted as a termcap; (4) if - TERMINFO looks like a termcap but doesn't match TERM, the - termcap file is searched for among the colon-separated - paths in the environment variable TERMPATHS if that is - defined, and in ~/.termcap and the file value of TERM- - CAP_FILE otherwise. - - Versions of curses compiled on PC clones support display - of the PC ROM characters (including ROM characters 0-31, - which stock SVr4 curses cannot display). See the EXTEN- - SIONS sections of curs_addch(3X) and curs_attr(3X). - - The curses library includes facilities for capturing mouse - events on certain terminals (including xterm). See the - curs_mouse(3X) manual page for details. - - The curses library includes a function for directing - application output to a printer attached to the terminal - device. See the curs_print(3X) manual page for details. - - --
- The curses library is intended to be BASE-level conformant - with the XSI Curses standard. Certain portions of the - EXTENDED XSI Curses functionality (including color sup- - port) are supported. The following EXTENDED XSI Curses - calls in support of wide (multibyte) characters are not - yet implemented: addnwstr, addwstr, mvaddnwstr, mvwaddnw- - str, mvaddwstr, waddnwstr, waddwstr, add_wch, wadd_wch, - mvwadd_wchnstr, mvwadd_wchstr, bkgrndset, bkgrnd, get- - bkgrnd, wbkgrnd, wbkgrndset, wgetbkgrnd, border_set, wbor- - der_set, box_set, hline_set, mvhline_set, mvvline_set, - mvwhline_set, mvwvline_set, whline_set, vhline_set, - wvline_set, echo_wchar, wecho_wchar, erasewchar, kill- - wchar, get_wch, mvget_wch, mvwget_ch, wget_wch, - getwchtype, get_wstr, getn_wstr, wget_wstr, wgetn_wstr, - mvget_wstr, mvgetn_wstr, mvwget_wstr, mvwgetn_wstr, innw- - str, inwstr, winnwstr, winwstr, mvinnwstr, mvinwstr, - mvwinnwstr, mvwinwstr, ins_nwstr, ins_wstr, mvins_nwstr, - mvins_wstr, mvwins_nwstr, mvwins_wstr, wins_nwstr, - wins_wstr, ins_wch, wins_wch, mvins_wch, mvwins_wch, - in_wch, win_wch, mvin_wch, mvwin_wch, inwchstr, inwchnstr, - winwchstr, winwchnstr, mvinwchstr, mvinwchnstr, mvinwch- - str, mvwinwchnstr. - - A small number of local differences (that is, individual - differences between the XSI Curses and curses calls) are - described in PORTABILITY sections of the library man - pages. - - The routine has_key is not part of XPG4, nor is it present - in SVr4. See the curs_getch(3X) manual page for details. - - The routine slk_attr is not part of XPG4, nor is it pre- - sent in SVr4. See the curs_slk(3X) manual page for - details. - - The routines getmouse, mousemask, ungetmouse, mouseinter- - val, and wenclose relating to mouse interfacing are not - part of XPG4, nor are they present in SVr4. See the - curs_mouse(3X) manual page for details. - - The routine mcprint was not present in any previous curses - implementation. See the curs_print(3X) manual page for - details. - - The routine wresize is not part of XPG4, nor is it present - in SVr4. See the wresize(3X) manual page for details. - - In historic curses versions, delays embedded in the capa- - bilities cr, ind, cub1, ff and tab activated corresponding - delay bits in the UNIX tty driver. In this implementa- - tion, all padding is done by NUL sends. This method is - slightly more expensive, but narrows the interface to the - UNIX kernel significantly and increases the package's - portability correspondingly. - - In the XSI standard and SVr4 manual pages, many entry - points have prototype arguments of the for char *const (or - cchar_t *const, or wchar_t *const, or void *const). - Depending on one's interpretation of the ANSI C standard - tion const char *x is a modifiable pointer to unmodifiable - data, but char *const x' is an unmodifiable pointer to - modifiable data. Given that C passes arguments by value, - <type> *const as a formal type is at best dubious. Some - compilers choke on the prototypes. Therefore, in this - implementation, they have been changed to const <type> * - globally. - - --
- The header file <curses.h> automatically includes the - header files <stdio.h> and <unctrl.h>. - - If standard output from a curses program is re-directed to - something which is not a tty, screen updates will be - directed to standard error. This was an undocumented fea- - ture of AT&T System V Release 3 curses. - - --
- Zeyd M. Ben-Halim, Eric S. Raymond. Descends from the - original pcurses by Pavel Curtis. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- -