2011-07-07 15:41:53 +02:00
|
|
|
PDCurses User's Guide
|
|
|
|
=====================
|
|
|
|
|
|
|
|
Curses Overview
|
|
|
|
---------------
|
|
|
|
|
|
|
|
The X/Open Curses Interface Definition describes a set of C-Language
|
|
|
|
functions that provide screen-handling and updating, which are
|
|
|
|
collectively known as the curses library.
|
|
|
|
|
|
|
|
The curses library permits manipulation of data structures called
|
|
|
|
windows which may be thought of as two-dimensional arrays of
|
|
|
|
characters representing all or part of a terminal's screen. The
|
|
|
|
windows are manipulated using a procedural interface described
|
|
|
|
elsewhere. The curses package maintains a record of what characters
|
|
|
|
are on the screen. At the most basic level, manipulation is done with
|
|
|
|
the routines move() and addch() which are used to "move" the curses
|
|
|
|
around and add characters to the default window, stdscr, which
|
|
|
|
represents the whole screen.
|
|
|
|
|
|
|
|
An application may use these routines to add data to the window in any
|
|
|
|
convenient order. Once all data have been added, the routine
|
|
|
|
refresh() is called. The package then determines what changes have
|
|
|
|
been made which affect the screen. The screen contents are then
|
|
|
|
changed to reflect those characters now in the window, using a
|
2015-11-10 18:13:43 +01:00
|
|
|
sequence of operations optimized for the type of terminal in use.
|
2011-07-07 15:41:53 +02:00
|
|
|
|
|
|
|
At a higher level routines combining the actions of move() and addch()
|
|
|
|
are defined, as are routines to add whole strings and to perform
|
2015-11-10 18:13:43 +01:00
|
|
|
format conversions in the manner of printf().
|
2011-07-07 15:41:53 +02:00
|
|
|
|
|
|
|
Interfaces are also defined to erase the entire window and to specify
|
|
|
|
the attributes of individual characters in the window. Attributes
|
|
|
|
such as inverse video, underline and blink can be used on a
|
2015-11-10 18:13:43 +01:00
|
|
|
per-character basis.
|
2011-07-07 15:41:53 +02:00
|
|
|
|
|
|
|
New windows can be created by allowing the application to build
|
|
|
|
several images of the screen and display the appropriate one very
|
|
|
|
quickly. New windows are created using the routine newwin(). For
|
|
|
|
each routine that manipulates the default window, stdscr, there is a
|
|
|
|
corresponding routine prefixed with w to manipulate the contents of a
|
|
|
|
specified window; for example, move() and wmove(). In fact, move(...)
|
|
|
|
is functionally equivalent to wmove( stdscr, ...). This is similar to
|
2015-11-10 18:13:43 +01:00
|
|
|
the interface offered by printf(...) and fprintf(stdout, ...).
|
2011-07-07 15:41:53 +02:00
|
|
|
|
|
|
|
Windows do not have to correspond to the entire screen. It is
|
|
|
|
possible to create smaller windows, and also to indicate that the
|
|
|
|
window is only partially visible on the screen. Furthermore, large
|
|
|
|
windows or pads, which are bigger than the actual screen size, may be
|
2015-11-10 18:13:43 +01:00
|
|
|
created.
|
2011-07-07 15:41:53 +02:00
|
|
|
|
|
|
|
Interfaces are also defined to allow input character manipulation and
|
|
|
|
to disable and enable many input attributes: character echo, single
|
|
|
|
character input with or without signal processing (cbreak or raw
|
2015-11-10 18:13:43 +01:00
|
|
|
modes), carriage returns mapping to newlines, screen scrolling, etc.
|
2011-07-07 15:41:53 +02:00
|
|
|
|
|
|
|
|
|
|
|
Data Types and the <curses.h> Header
|
|
|
|
------------------------------------
|
|
|
|
|
|
|
|
The data types supported by curses are described in this section.
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
As the library supports a procedural interface to the data types, actual
|
|
|
|
structure contents are not described. All curses data are manipulated
|
2011-07-07 15:41:53 +02:00
|
|
|
using the routines provided.
|
|
|
|
|
|
|
|
|
|
|
|
THE <curses.h> HEADER
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
The <curses.h> header defines various constants and declares the data
|
2011-07-07 15:41:53 +02:00
|
|
|
types that are available to the application.
|
|
|
|
|
|
|
|
|
|
|
|
DATA TYPES
|
|
|
|
|
|
|
|
The following data types are declared:
|
|
|
|
|
|
|
|
WINDOW * pointer to screen representation
|
|
|
|
SCREEN * pointer to terminal descriptor
|
|
|
|
bool boolean data type
|
|
|
|
chtype representation of a character in a window
|
|
|
|
cchar_t the wide-character equivalent of chtype
|
|
|
|
attr_t for WA_-style attributes
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
The actual WINDOW and SCREEN objects used to store information are
|
|
|
|
created by the corresponding routines and a pointer to them is provided.
|
2011-07-07 15:41:53 +02:00
|
|
|
All manipulation is through that pointer.
|
|
|
|
|
|
|
|
|
|
|
|
VARIABLES
|
|
|
|
|
|
|
|
The following variables are defined:
|
|
|
|
|
|
|
|
LINES number of lines on terminal screen
|
|
|
|
COLS number of columns on terminal screen
|
2015-11-10 18:13:43 +01:00
|
|
|
stdscr pointer to the default screen window
|
2011-07-07 15:41:53 +02:00
|
|
|
curscr pointer to the current screen image
|
|
|
|
SP pointer to the current SCREEN struct
|
|
|
|
Mouse_status status of the mouse
|
|
|
|
COLORS number of colors available
|
|
|
|
COLOR_PAIRS number of color pairs available
|
|
|
|
TABSIZE size of one TAB block
|
2015-11-10 18:13:43 +01:00
|
|
|
acs_map[] alternate character set map
|
|
|
|
ttytype[] terminal name/description
|
2011-07-07 15:41:53 +02:00
|
|
|
|
|
|
|
|
|
|
|
CONSTANTS
|
|
|
|
|
|
|
|
The following constants are defined:
|
|
|
|
|
|
|
|
GENERAL
|
|
|
|
|
|
|
|
FALSE boolean false value
|
|
|
|
TRUE boolean true value
|
|
|
|
NULL zero pointer value
|
|
|
|
ERR value returned on error condition
|
|
|
|
OK value returned on successful completion
|
|
|
|
|
|
|
|
VIDEO ATTRIBUTES
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
Normally, attributes are a property of the character.
|
2011-07-07 15:41:53 +02:00
|
|
|
|
|
|
|
For chtype:
|
|
|
|
|
|
|
|
A_ALTCHARSET use the alternate character set
|
|
|
|
A_BLINK bright background or blinking
|
|
|
|
A_BOLD bright foreground or bold
|
|
|
|
A_DIM half bright -- no effect in PDCurses
|
|
|
|
A_INVIS invisible
|
|
|
|
A_ITALIC italic
|
|
|
|
A_LEFTLINE line along the left edge
|
2018-09-02 11:43:36 +02:00
|
|
|
A_PROTECT protected (?) -- PDCurses renders this as a
|
2011-07-07 15:41:53 +02:00
|
|
|
combination of the *LINE attributes
|
|
|
|
A_REVERSE reverse video
|
|
|
|
A_RIGHTLINE line along the right edge
|
|
|
|
A_STANDOUT terminal's best highlighting mode
|
|
|
|
A_UNDERLINE underline
|
|
|
|
|
|
|
|
A_ATTRIBUTES bit-mask to extract attributes
|
|
|
|
A_CHARTEXT bit-mask to extract a character
|
|
|
|
A_COLOR bit-mask to extract a color-pair
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
Not all attributes will work on all terminals. A_RIGHTLINE, A_LEFTLINE
|
|
|
|
and A_ITALIC are specific to PDCurses. A_INVIS and A_ITALIC are given
|
2011-07-07 15:41:53 +02:00
|
|
|
the same value in PDCurses.
|
|
|
|
|
|
|
|
For attr_t:
|
|
|
|
|
|
|
|
WA_ALTCHARSET same as A_ALTCHARSET
|
|
|
|
WA_BLINK same as A_BLINK
|
|
|
|
WA_BOLD same as A_BOLD
|
|
|
|
WA_DIM same as A_DIM
|
|
|
|
WA_INVIS same as A_INVIS
|
|
|
|
WA_LEFT same as A_LEFTLINE
|
|
|
|
WA_PROTECT same as A_PROTECT
|
|
|
|
WA_REVERSE same as A_REVERSE
|
|
|
|
WA_RIGHT same as A_RIGHTLINE
|
|
|
|
WA_STANDOUT same as A_STANDOUT
|
|
|
|
WA_UNDERLINE same as A_UNDERLINE
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
Note that while A_LEFTLINE and A_RIGHTLINE are PDCurses-specific,
|
|
|
|
WA_LEFT and WA_RIGHT are standard. The following are also defined, for
|
|
|
|
compatibility, but currently have no effect in PDCurses: WA_HORIZONTAL,
|
2011-07-07 15:41:53 +02:00
|
|
|
WA_LOW, WA_TOP, WA_VERTICAL.
|
|
|
|
|
|
|
|
THE ALTERNATE CHARACTER SET
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
For use in chtypes and with related functions. These are a portable way
|
2011-07-07 15:41:53 +02:00
|
|
|
to represent graphics characters on different terminals.
|
|
|
|
|
|
|
|
VT100-compatible symbols -- box characters:
|
|
|
|
|
|
|
|
ACS_ULCORNER upper left box corner
|
|
|
|
ACS_LLCORNER lower left box corner
|
|
|
|
ACS_URCORNER upper right box corner
|
|
|
|
ACS_LRCORNER lower right box corner
|
|
|
|
ACS_RTEE right "T"
|
|
|
|
ACS_LTEE left "T"
|
|
|
|
ACS_BTEE bottom "T"
|
|
|
|
ACS_TTEE top "T"
|
|
|
|
ACS_HLINE horizontal line
|
|
|
|
ACS_VLINE vertical line
|
|
|
|
ACS_PLUS plus sign, cross, or four-corner piece
|
|
|
|
|
|
|
|
VT100-compatible symbols -- other:
|
|
|
|
|
|
|
|
ACS_S1 scan line 1
|
|
|
|
ACS_S9 scan line 9
|
|
|
|
ACS_DIAMOND diamond
|
|
|
|
ACS_CKBOARD checkerboard -- 50% grey
|
|
|
|
ACS_DEGREE degree symbol
|
|
|
|
ACS_PLMINUS plus/minus sign
|
|
|
|
ACS_BULLET bullet
|
|
|
|
|
|
|
|
Teletype 5410v1 symbols -- these are defined in SysV curses, but
|
|
|
|
are not well-supported by most terminals. Stick to VT100 characters
|
|
|
|
for optimum portability:
|
|
|
|
|
|
|
|
ACS_LARROW left arrow
|
|
|
|
ACS_RARROW right arrow
|
|
|
|
ACS_DARROW down arrow
|
|
|
|
ACS_UARROW up arrow
|
2015-11-10 18:13:43 +01:00
|
|
|
ACS_BOARD checkerboard -- lighter (less dense) than
|
2011-07-07 15:41:53 +02:00
|
|
|
ACS_CKBOARD
|
|
|
|
ACS_LANTERN lantern symbol
|
|
|
|
ACS_BLOCK solid block
|
|
|
|
|
|
|
|
That goes double for these -- undocumented SysV symbols. Don't use
|
|
|
|
them:
|
|
|
|
|
|
|
|
ACS_S3 scan line 3
|
|
|
|
ACS_S7 scan line 7
|
|
|
|
ACS_LEQUAL less than or equal
|
|
|
|
ACS_GEQUAL greater than or equal
|
|
|
|
ACS_PI pi
|
|
|
|
ACS_NEQUAL not equal
|
|
|
|
ACS_STERLING pounds sterling symbol
|
|
|
|
|
|
|
|
Box character aliases:
|
|
|
|
|
|
|
|
ACS_BSSB same as ACS_ULCORNER
|
|
|
|
ACS_SSBB same as ACS_LLCORNER
|
|
|
|
ACS_BBSS same as ACS_URCORNER
|
|
|
|
ACS_SBBS same as ACS_LRCORNER
|
|
|
|
ACS_SBSS same as ACS_RTEE
|
|
|
|
ACS_SSSB same as ACS_LTEE
|
|
|
|
ACS_SSBS same as ACS_BTEE
|
|
|
|
ACS_BSSS same as ACS_TTEE
|
|
|
|
ACS_BSBS same as ACS_HLINE
|
|
|
|
ACS_SBSB same as ACS_VLINE
|
|
|
|
ACS_SSSS same as ACS_PLUS
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
For cchar_t and wide-character functions, WACS_ equivalents are also
|
2011-07-07 15:41:53 +02:00
|
|
|
defined.
|
|
|
|
|
|
|
|
COLORS
|
|
|
|
|
|
|
|
For use with init_pair(), color_set(), etc.:
|
|
|
|
|
|
|
|
COLOR_BLACK
|
|
|
|
COLOR_BLUE
|
|
|
|
COLOR_GREEN
|
|
|
|
COLOR_CYAN
|
|
|
|
COLOR_RED
|
|
|
|
COLOR_MAGENTA
|
|
|
|
COLOR_YELLOW
|
|
|
|
COLOR_WHITE
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
Use these instead of numeric values. The definition of the colors
|
2011-07-07 15:41:53 +02:00
|
|
|
depends on the implementation of curses.
|
|
|
|
|
|
|
|
|
|
|
|
INPUT VALUES
|
|
|
|
|
|
|
|
The following constants might be returned by getch() if keypad() has
|
|
|
|
been enabled. Note that not all of these may be supported on a
|
|
|
|
particular terminal:
|
|
|
|
|
|
|
|
KEY_BREAK break key
|
|
|
|
KEY_DOWN the four arrow keys
|
|
|
|
KEY_UP
|
|
|
|
KEY_LEFT
|
|
|
|
KEY_RIGHT
|
|
|
|
KEY_HOME home key (upward+left arrow)
|
|
|
|
KEY_BACKSPACE backspace
|
|
|
|
KEY_F0 function keys; space for 64 keys is reserved
|
|
|
|
KEY_F(n) (KEY_F0+(n))
|
|
|
|
KEY_DL delete line
|
|
|
|
KEY_IL insert line
|
|
|
|
KEY_DC delete character
|
|
|
|
KEY_IC insert character
|
|
|
|
KEY_EIC exit insert character mode
|
|
|
|
KEY_CLEAR clear screen
|
|
|
|
KEY_EOS clear to end of screen
|
|
|
|
KEY_EOL clear to end of line
|
|
|
|
KEY_SF scroll 1 line forwards
|
|
|
|
KEY_SR scroll 1 line backwards (reverse)
|
|
|
|
KEY_NPAGE next page
|
|
|
|
KEY_PPAGE previous page
|
|
|
|
KEY_STAB set tab
|
|
|
|
KEY_CTAB clear tab
|
|
|
|
KEY_CATAB clear all tabs
|
|
|
|
KEY_ENTER enter or send
|
|
|
|
KEY_SRESET soft (partial) reset
|
|
|
|
KEY_RESET reset or hard reset
|
|
|
|
KEY_PRINT print or copy
|
|
|
|
KEY_LL home down or bottom (lower left)
|
|
|
|
KEY_A1 upper left of virtual keypad
|
|
|
|
KEY_A3 upper right of virtual keypad
|
|
|
|
KEY_B2 center of virtual keypad
|
|
|
|
KEY_C1 lower left of virtual keypad
|
|
|
|
KEY_C3 lower right of virtual keypad
|
|
|
|
|
2018-09-02 11:43:36 +02:00
|
|
|
KEY_BTAB Back tab key
|
|
|
|
KEY_BEG Beginning key
|
|
|
|
KEY_CANCEL Cancel key
|
|
|
|
KEY_CLOSE Close key
|
|
|
|
KEY_COMMAND Cmd (command) key
|
|
|
|
KEY_COPY Copy key
|
|
|
|
KEY_CREATE Create key
|
|
|
|
KEY_END End key
|
|
|
|
KEY_EXIT Exit key
|
|
|
|
KEY_FIND Find key
|
|
|
|
KEY_HELP Help key
|
|
|
|
KEY_MARK Mark key
|
|
|
|
KEY_MESSAGE Message key
|
|
|
|
KEY_MOVE Move key
|
|
|
|
KEY_NEXT Next object key
|
|
|
|
KEY_OPEN Open key
|
|
|
|
KEY_OPTIONS Options key
|
|
|
|
KEY_PREVIOUS Previous object key
|
|
|
|
KEY_REDO Redo key
|
|
|
|
KEY_REFERENCE Reference key
|
|
|
|
KEY_REFRESH Refresh key
|
|
|
|
KEY_REPLACE Replace key
|
|
|
|
KEY_RESTART Restart key
|
|
|
|
KEY_RESUME Resume key
|
|
|
|
KEY_SAVE Save key
|
|
|
|
KEY_SBEG Shifted beginning key
|
|
|
|
KEY_SCANCEL Shifted cancel key
|
|
|
|
KEY_SCOMMAND Shifted command key
|
|
|
|
KEY_SCOPY Shifted copy key
|
|
|
|
KEY_SCREATE Shifted create key
|
|
|
|
KEY_SDC Shifted delete char key
|
|
|
|
KEY_SDL Shifted delete line key
|
|
|
|
KEY_SELECT Select key
|
|
|
|
KEY_SEND Shifted end key
|
|
|
|
KEY_SEOL Shifted clear line key
|
|
|
|
KEY_SEXIT Shifted exit key
|
|
|
|
KEY_SFIND Shifted find key
|
|
|
|
KEY_SHELP Shifted help key
|
|
|
|
KEY_SHOME Shifted home key
|
|
|
|
KEY_SIC Shifted input key
|
|
|
|
KEY_SLEFT Shifted left arrow key
|
|
|
|
KEY_SMESSAGE Shifted message key
|
|
|
|
KEY_SMOVE Shifted move key
|
|
|
|
KEY_SNEXT Shifted next key
|
|
|
|
KEY_SOPTIONS Shifted options key
|
|
|
|
KEY_SPREVIOUS Shifted prev key
|
|
|
|
KEY_SPRINT Shifted print key
|
|
|
|
KEY_SREDO Shifted redo key
|
|
|
|
KEY_SREPLACE Shifted replace key
|
|
|
|
KEY_SRIGHT Shifted right arrow
|
|
|
|
KEY_SRSUME Shifted resume key
|
|
|
|
KEY_SSAVE Shifted save key
|
|
|
|
KEY_SSUSPEND Shifted suspend key
|
|
|
|
KEY_SUNDO Shifted undo key
|
|
|
|
KEY_SUSPEND Suspend key
|
|
|
|
KEY_UNDO Undo key
|
2011-07-07 15:41:53 +02:00
|
|
|
|
|
|
|
The virtual keypad is arranged like this:
|
|
|
|
|
|
|
|
A1 up A3
|
|
|
|
left B2 right
|
|
|
|
C1 down C3
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
This list is incomplete -- see curses.h for the full list, and use the
|
|
|
|
testcurs demo to see what values are actually returned. The above are
|
|
|
|
just the keys required by X/Open. In particular, PDCurses defines many
|
2011-07-07 15:41:53 +02:00
|
|
|
CTL_ and ALT_ combinations; these are not portable.
|
|
|
|
|
|
|
|
|
|
|
|
FUNCTIONS
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
The following table lists each curses routine and the name of the manual
|
2011-07-07 15:41:53 +02:00
|
|
|
page on which it is described.
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
Functions from the X/Open curses standard -- complete, except for
|
|
|
|
getch() and ungetch(), which are implemented as macros for DOS
|
2011-07-07 15:41:53 +02:00
|
|
|
compatibility:
|
|
|
|
|
|
|
|
Curses Function Manual Page Name
|
|
|
|
|
|
|
|
addch addch
|
|
|
|
addchnstr addchstr
|
|
|
|
addchstr addchstr
|
|
|
|
addnstr addstr
|
|
|
|
addstr addstr
|
|
|
|
attroff attr
|
|
|
|
attron attr
|
|
|
|
attrset attr
|
|
|
|
attr_get attr
|
|
|
|
attr_off attr
|
|
|
|
attr_on attr
|
|
|
|
attr_set attr
|
|
|
|
baudrate termattr
|
|
|
|
beep beep
|
|
|
|
bkgd bkgd
|
|
|
|
bkgdset bkgd
|
|
|
|
border border
|
|
|
|
box border
|
|
|
|
can_change_color color
|
|
|
|
cbreak inopts
|
|
|
|
chgat attr
|
|
|
|
clearok outopts
|
|
|
|
clear clear
|
|
|
|
clrtobot clear
|
|
|
|
clrtoeol clear
|
|
|
|
color_content color
|
|
|
|
color_set attr
|
|
|
|
copywin overlay
|
|
|
|
curs_set kernel
|
|
|
|
def_prog_mode kernel
|
|
|
|
def_shell_mode kernel
|
|
|
|
del_curterm terminfo
|
|
|
|
delay_output util
|
|
|
|
delch delch
|
|
|
|
deleteln deleteln
|
|
|
|
delscreen initscr
|
|
|
|
delwin window
|
|
|
|
derwin window
|
|
|
|
doupdate refresh
|
|
|
|
dupwin window
|
|
|
|
echochar addch
|
|
|
|
echo inopts
|
|
|
|
endwin initscr
|
|
|
|
erasechar termattr
|
|
|
|
erase clear
|
|
|
|
filter util
|
|
|
|
flash beep
|
|
|
|
flushinp getch
|
|
|
|
getbkgd bkgd
|
|
|
|
getnstr getstr
|
|
|
|
getstr getstr
|
|
|
|
getwin scr_dump
|
|
|
|
halfdelay inopts
|
|
|
|
has_colors color
|
|
|
|
has_ic termattr
|
|
|
|
has_il termattr
|
|
|
|
hline border
|
|
|
|
idcok outopts
|
|
|
|
idlok outopts
|
|
|
|
immedok outopts
|
|
|
|
inchnstr inchstr
|
|
|
|
inchstr inchstr
|
|
|
|
inch inch
|
|
|
|
init_color color
|
|
|
|
init_pair color
|
|
|
|
initscr initscr
|
|
|
|
innstr instr
|
|
|
|
insch insch
|
|
|
|
insdelln deleteln
|
|
|
|
insertln deleteln
|
|
|
|
insnstr innstr
|
|
|
|
insstr innstr
|
|
|
|
instr instr
|
|
|
|
intrflush inopts
|
|
|
|
isendwin initscr
|
|
|
|
is_linetouched touch
|
|
|
|
is_wintouched touch
|
|
|
|
keyname keyname
|
|
|
|
keypad inopts
|
|
|
|
killchar termattr
|
|
|
|
leaveok outopts
|
|
|
|
longname termattr
|
|
|
|
meta inopts
|
|
|
|
move move
|
|
|
|
mvaddch addch
|
|
|
|
mvaddchnstr addchstr
|
|
|
|
mvaddchstr addchstr
|
|
|
|
mvaddnstr addstr
|
|
|
|
mvaddstr addstr
|
|
|
|
mvchgat attr
|
|
|
|
mvcur terminfo
|
|
|
|
mvdelch delch
|
|
|
|
mvderwin window
|
|
|
|
mvgetch getch
|
|
|
|
mvgetnstr getstr
|
|
|
|
mvgetstr getstr
|
|
|
|
mvhline border
|
|
|
|
mvinch inch
|
|
|
|
mvinchnstr inchstr
|
|
|
|
mvinchstr inchstr
|
|
|
|
mvinnstr instr
|
|
|
|
mvinsch insch
|
|
|
|
mvinsnstr insstr
|
|
|
|
mvinsstr insstr
|
|
|
|
mvinstr instr
|
|
|
|
mvprintw printw
|
|
|
|
mvscanw scanw
|
|
|
|
mvvline border
|
|
|
|
mvwaddchnstr addchstr
|
|
|
|
mvwaddchstr addchstr
|
|
|
|
mvwaddch addch
|
|
|
|
mvwaddnstr addstr
|
|
|
|
mvwaddstr addstr
|
|
|
|
mvwchgat attr
|
|
|
|
mvwdelch delch
|
|
|
|
mvwgetch getch
|
|
|
|
mvwgetnstr getstr
|
|
|
|
mvwgetstr getstr
|
|
|
|
mvwhline border
|
|
|
|
mvwinchnstr inchstr
|
|
|
|
mvwinchstr inchstr
|
|
|
|
mvwinch inch
|
|
|
|
mvwinnstr instr
|
|
|
|
mvwinsch insch
|
|
|
|
mvwinsnstr insstr
|
|
|
|
mvwinsstr insstr
|
|
|
|
mvwinstr instr
|
|
|
|
mvwin window
|
|
|
|
mvwprintw printw
|
|
|
|
mvwscanw scanw
|
|
|
|
mvwvline border
|
|
|
|
napms kernel
|
|
|
|
newpad pad
|
|
|
|
newterm initscr
|
|
|
|
newwin window
|
|
|
|
nl inopts
|
|
|
|
nocbreak inopts
|
|
|
|
nodelay inopts
|
|
|
|
noecho inopts
|
|
|
|
nonl inopts
|
|
|
|
noqiflush inopts
|
|
|
|
noraw inopts
|
|
|
|
notimeout inopts
|
|
|
|
overlay overlay
|
|
|
|
overwrite overlay
|
|
|
|
pair_content color
|
|
|
|
pechochar pad
|
|
|
|
pnoutrefresh pad
|
|
|
|
prefresh pad
|
|
|
|
printw printw
|
|
|
|
putp terminfo
|
|
|
|
putwin scr_dump
|
|
|
|
qiflush inopts
|
|
|
|
raw inopts
|
|
|
|
redrawwin refresh
|
|
|
|
refresh refresh
|
|
|
|
reset_prog_mode kernel
|
|
|
|
reset_shell_mode kernel
|
|
|
|
resetty kernel
|
|
|
|
restartterm terminfo
|
|
|
|
ripoffline kernel
|
|
|
|
savetty kernel
|
|
|
|
scanw scanw
|
|
|
|
scr_dump scr_dump
|
|
|
|
scr_init scr_dump
|
|
|
|
scr_restore scr_dump
|
|
|
|
scr_set scr_dump
|
|
|
|
scrl scroll
|
|
|
|
scroll scroll
|
|
|
|
scrollok outopts
|
|
|
|
set_term initscr
|
|
|
|
setscrreg outopts
|
|
|
|
setterm terminfo
|
|
|
|
setupterm terminfo
|
|
|
|
slk_attroff slk
|
|
|
|
slk_attr_off slk
|
|
|
|
slk_attron slk
|
|
|
|
slk_attr_on slk
|
|
|
|
slk_attrset slk
|
|
|
|
slk_attr_set slk
|
|
|
|
slk_clear slk
|
|
|
|
slk_color slk
|
|
|
|
slk_init slk
|
|
|
|
slk_label slk
|
|
|
|
slk_noutrefresh slk
|
|
|
|
slk_refresh slk
|
|
|
|
slk_restore slk
|
|
|
|
slk_set slk
|
|
|
|
slk_touch slk
|
|
|
|
standend attr
|
|
|
|
standout attr
|
|
|
|
start_color color
|
|
|
|
subpad pad
|
|
|
|
subwin window
|
|
|
|
syncok window
|
|
|
|
termattrs termattrs
|
|
|
|
term_attrs termattrs
|
|
|
|
termname termattrs
|
|
|
|
tgetent termcap
|
|
|
|
tgetflag termcap
|
|
|
|
tgetnum termcap
|
|
|
|
tgetstr termcap
|
|
|
|
tgoto termcap
|
|
|
|
tigetflag terminfo
|
|
|
|
tigetnum terminfo
|
|
|
|
tigetstr terminfo
|
|
|
|
timeout inopts
|
|
|
|
touchline touch
|
|
|
|
touchwin touch
|
|
|
|
tparm terminfo
|
|
|
|
tputs terminfo
|
|
|
|
typeahead inopts
|
|
|
|
untouchwin touch
|
|
|
|
use_env util
|
|
|
|
vidattr terminfo
|
|
|
|
vid_attr terminfo
|
|
|
|
vidputs terminfo
|
|
|
|
vid_puts terminfo
|
|
|
|
vline border
|
|
|
|
vw_printw printw
|
|
|
|
vwprintw printw
|
|
|
|
vw_scanw scanw
|
|
|
|
vwscanw scanw
|
|
|
|
waddchnstr addchstr
|
|
|
|
waddchstr addchstr
|
|
|
|
waddch addch
|
|
|
|
waddnstr addstr
|
|
|
|
waddstr addstr
|
|
|
|
wattroff attr
|
|
|
|
wattron attr
|
|
|
|
wattrset attr
|
|
|
|
wattr_get attr
|
|
|
|
wattr_off attr
|
|
|
|
wattr_on attr
|
|
|
|
wattr_set attr
|
|
|
|
wbkgdset bkgd
|
|
|
|
wbkgd bkgd
|
|
|
|
wborder border
|
|
|
|
wchgat attr
|
|
|
|
wclear clear
|
|
|
|
wclrtobot clear
|
|
|
|
wclrtoeol clear
|
|
|
|
wcolor_set attr
|
|
|
|
wcursyncup window
|
|
|
|
wdelch delch
|
|
|
|
wdeleteln deleteln
|
|
|
|
wechochar addch
|
|
|
|
werase clear
|
|
|
|
wgetch getch
|
|
|
|
wgetnstr getstr
|
|
|
|
wgetstr getstr
|
|
|
|
whline border
|
|
|
|
winchnstr inchstr
|
|
|
|
winchstr inchstr
|
|
|
|
winch inch
|
|
|
|
winnstr instr
|
|
|
|
winsch insch
|
|
|
|
winsdelln deleteln
|
|
|
|
winsertln deleteln
|
|
|
|
winsnstr insstr
|
|
|
|
winsstr insstr
|
|
|
|
winstr instr
|
|
|
|
wmove move
|
|
|
|
wnoutrefresh refresh
|
|
|
|
wprintw printw
|
|
|
|
wredrawln refresh
|
|
|
|
wrefresh refresh
|
|
|
|
wscanw scanw
|
|
|
|
wscrl scroll
|
|
|
|
wsetscrreg outopts
|
|
|
|
wstandend attr
|
|
|
|
wstandout attr
|
|
|
|
wsyncdown window
|
|
|
|
wsyncup window
|
|
|
|
wtimeout inopts
|
|
|
|
wtouchln touch
|
|
|
|
wvline border
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
Wide-character functions from the X/Open standard -- these are only
|
|
|
|
available when PDCurses is built with PDC_WIDE defined, and the
|
|
|
|
prototypes are only available from curses.h when PDC_WIDE is defined
|
2011-07-07 15:41:53 +02:00
|
|
|
before its inclusion in your app:
|
|
|
|
|
|
|
|
addnwstr addstr
|
|
|
|
addwstr addstr
|
|
|
|
add_wch addch
|
|
|
|
add_wchnstr addchstr
|
|
|
|
add_wchstr addchstr
|
|
|
|
border_set border
|
|
|
|
box_set border
|
|
|
|
echo_wchar addch
|
|
|
|
erasewchar termattr
|
|
|
|
getbkgrnd bkgd
|
|
|
|
getcchar util
|
|
|
|
getn_wstr getstr
|
|
|
|
get_wch getch
|
|
|
|
get_wstr getstr
|
|
|
|
hline_set border
|
|
|
|
innwstr instr
|
|
|
|
ins_nwstr insstr
|
|
|
|
ins_wch insch
|
|
|
|
ins_wstr insstr
|
|
|
|
inwstr instr
|
|
|
|
in_wch inch
|
|
|
|
in_wchnstr inchstr
|
|
|
|
in_wchstr inchstr
|
|
|
|
key_name keyname
|
|
|
|
killwchar termattr
|
|
|
|
mvaddnwstr addstr
|
|
|
|
mvaddwstr addstr
|
|
|
|
mvadd_wch addch
|
|
|
|
mvadd_wchnstr addchstr
|
|
|
|
mvadd_wchstr addchstr
|
|
|
|
mvgetn_wstr getstr
|
|
|
|
mvget_wch getch
|
|
|
|
mvget_wstr getstr
|
|
|
|
mvhline_set border
|
|
|
|
mvinnwstr instr
|
|
|
|
mvins_nwstr insstr
|
|
|
|
mvins_wch insch
|
|
|
|
mvins_wstr insstr
|
|
|
|
mvinwstr instr
|
|
|
|
mvwaddnwstr addstr
|
|
|
|
mvwaddwstr addstr
|
|
|
|
mvwadd_wch addch
|
|
|
|
mvwadd_wchnstr addchstr
|
|
|
|
mvwadd_wchstr addchstr
|
|
|
|
mvwgetn_wstr getstr
|
|
|
|
mvwget_wch getch
|
|
|
|
mvwget_wstr getstr
|
|
|
|
mvwhline_set border
|
|
|
|
mvwinnwstr instr
|
|
|
|
mvwins_nwstr insstr
|
|
|
|
mvwins_wch insch
|
|
|
|
mvwins_wstr insstr
|
|
|
|
mvwin_wch inch
|
|
|
|
mvwin_wchnstr inchstr
|
|
|
|
mvwin_wchstr inchstr
|
|
|
|
mvwinwstr instr
|
|
|
|
mvwvline_set border
|
|
|
|
pecho_wchar pad
|
|
|
|
setcchar util
|
|
|
|
slk_wset slk
|
|
|
|
unget_wch getch
|
|
|
|
vline_set border
|
|
|
|
waddnwstr addstr
|
|
|
|
waddwstr addstr
|
|
|
|
wadd_wch addch
|
|
|
|
wadd_wchnstr addchstr
|
|
|
|
wadd_wchstr addchstr
|
|
|
|
wbkgrnd bkgd
|
|
|
|
wbkgrndset bkgd
|
|
|
|
wborder_set border
|
|
|
|
wecho_wchar addch
|
|
|
|
wgetbkgrnd bkgd
|
|
|
|
wgetn_wstr getstr
|
|
|
|
wget_wch getch
|
|
|
|
wget_wstr getstr
|
|
|
|
whline_set border
|
|
|
|
winnwstr instr
|
|
|
|
wins_nwstr insstr
|
|
|
|
wins_wch insch
|
|
|
|
wins_wstr insstr
|
|
|
|
winwstr instr
|
|
|
|
win_wch inch
|
|
|
|
win_wchnstr inchstr
|
|
|
|
win_wchstr inchstr
|
|
|
|
wunctrl util
|
|
|
|
wvline_set border
|
|
|
|
|
|
|
|
Quasi-standard functions, from Sys V or BSD curses:
|
|
|
|
|
|
|
|
getattrs attr
|
|
|
|
getbegx getyx
|
|
|
|
getbegy getyx
|
|
|
|
getmaxx getyx
|
|
|
|
getmaxy getyx
|
|
|
|
getparx getyx
|
|
|
|
getparx getyx
|
|
|
|
traceoff debug
|
|
|
|
traceon debug
|
|
|
|
unctrl util
|
|
|
|
|
|
|
|
Classic PDCurses mouse functions, based on Sys V:
|
|
|
|
|
|
|
|
mouse_set mouse
|
|
|
|
mouse_on mouse
|
|
|
|
mouse_off mouse
|
|
|
|
request_mouse_pos mouse
|
|
|
|
map_button mouse
|
|
|
|
wmouse_position mouse
|
|
|
|
getmouse mouse
|
|
|
|
getbmap mouse
|
|
|
|
|
|
|
|
Functions from ncurses:
|
|
|
|
|
|
|
|
assume_default_colors color
|
|
|
|
curses_version initscr
|
|
|
|
has_key keyname
|
|
|
|
use_default_colors color
|
|
|
|
wresize window
|
|
|
|
|
|
|
|
mouseinterval mouse
|
|
|
|
mousemask mouse
|
|
|
|
mouse_trafo mouse
|
|
|
|
nc_getmouse mouse
|
|
|
|
ungetmouse mouse
|
|
|
|
wenclose mouse
|
|
|
|
wmouse_trafo mouse
|
|
|
|
|
2015-11-10 18:13:43 +01:00
|
|
|
PDCurses-specific functions -- avoid these in code that's intended to be
|
2011-07-07 15:41:53 +02:00
|
|
|
portable:
|
|
|
|
|
|
|
|
addrawch addch
|
|
|
|
insrawch insch
|
|
|
|
is_termresized initscr
|
|
|
|
mvaddrawch addch
|
|
|
|
mvdeleteln deleteln
|
|
|
|
mvinsertln deleteln
|
|
|
|
mvinsrawch insch
|
|
|
|
mvwaddrawch addch
|
|
|
|
mvwdeleteln deleteln
|
|
|
|
mvwinsertln deleteln
|
|
|
|
mvwinsrawch insch
|
|
|
|
raw_output outopts
|
|
|
|
resize_term initscr
|
|
|
|
resize_window window
|
|
|
|
slk_wlabel slk
|
|
|
|
waddrawch addch
|
|
|
|
winsrawch insch
|
|
|
|
wordchar termattr
|
|
|
|
|
|
|
|
PDC_debug debug
|
|
|
|
PDC_ungetch getch
|
|
|
|
PDC_set_blink pdcsetsc
|
|
|
|
PDC_set_line_color color
|
|
|
|
PDC_set_title pdcsetsc
|
|
|
|
|
|
|
|
PDC_clearclipboard pdcclip
|
|
|
|
PDC_freeclipboard pdcclip
|
|
|
|
PDC_getclipboard pdcclip
|
|
|
|
PDC_setclipboard pdcclip
|
|
|
|
|
|
|
|
PDC_get_input_fd pdckbd
|
|
|
|
PDC_get_key_modifiers getch
|
|
|
|
PDC_return_key_modifiers getch
|
|
|
|
PDC_save_key_modifiers getch
|
|
|
|
|
|
|
|
Functions specific to the X11 port of PDCurses:
|
|
|
|
|
|
|
|
Xinitscr initscr
|
|
|
|
XCursesExit -
|
|
|
|
sb_init sb
|
|
|
|
sb_set_horz sb
|
|
|
|
sb_set_vert sb
|
|
|
|
sb_get_horz sb
|
|
|
|
sb_get_vert sb
|
|
|
|
sb_refresh sb
|
|
|
|
|
|
|
|
--------------------------------------------------------------------------
|