NAME
ffoorrmm - curses extension for programming forms
SYNOPSIS
##iinncclluuddee <
> DESCRIPTION
The ffoorrmm library provides terminal-independent facilities for composing
form screens on character-cell terminals. The library includes: field
routines, which create and modify form fields; and form routines, which
group fields into forms, display forms on the screen, and handle inter-
action with the user. The ffoorrmm library uses the ccuurrsseess libraries, and a curses initializationroutine such as iinniittssccrr must be called before using any of these func-
tions. To use the ffoorrmm library, link with the options -llffoorrmm -llccuurrsseess.
CCuurrrreenntt DDeeffaauulltt VVaalluueess ffoorr FFiieelldd AAttttrriibbuutteess The ffoorrmm library maintains a default value for field attributes. You can get or set this default by calling the appropriate sseett or retrieval routine with a NNUULLLL field pointer. Changing this default with a sseett function affects future field creations, but does not change the rendering of fields already created. RRoouuttiinnee NNaammee IInnddeexx The following table lists each ffoorrmm routine and the name of the manual page on which it is described. ccuurrsseess Routine Name Manual Page Name-------------------------
currentfield ffoorrmmppaaggee(3X) dataahead ffoorrmmddaattaa(3X) databehind ffoorrmmddaattaa(3X) dupfield ffoorrmmffiieellddnneeww(3X) dynamicfieldinfo ffoorrmmffiieellddiinnffoo(3X) fieldarg ffoorrmmffiieellddvvaalliiddaattiioonn(3X) fieldback ffoorrmmffiieellddaattttrriibbuutteess(3X) fieldbuffer ffoorrmmffiieellddbbuuffffeerr(3X) fieldcount ffoorrmmffiieelldd(3X) fieldfore ffoorrmmffiieellddaattttrriibbuutteess(3X) fieldindex ffoorrmmppaaggee(3X) fieldinfo ffoorrmmffiieellddiinnffoo(3X) fieldinit ffoorrmmhhooookk(3X) fieldjust ffoorrmmffiieellddjjuusstt(3X) fieldopts ffoorrmmffiieellddooppttss(3X) fieldoptsoff ffoorrmmffiieellddooppttss(3X) fieldoptson ffoorrmmffiieellddooppttss(3X) fieldpad ffoorrmmffiieellddaattttrriibbuutteess(3X) fieldstatus ffoorrmmffiieellddbbuuffffeerr(3X) fieldterm ffoorrmmhhooookk(3X) fieldtype ffoorrmmffiieellddvvaalliiddaattiioonn(3X) fielduserptr ffoorrmmffiieelldduusseerrppttrr(3X)formdriver ffoorrmmddrriivveerr(3X)
formfields ffoorrmmffiieelldd(3X)
forminit ffoorrmmhhooookk(3X)
formopts ffoorrmmooppttss(3X)
formoptsoff ffoorrmmooppttss(3X)
formoptson ffoorrmmooppttss(3X)
formpage ffoorrmmppaaggee(3X)
formrequestbyname ffoorrmmrreeqquueessttnnaammee(3X)
formrequestname ffoorrmmrreeqquueessttnnaammee(3X)
formsub ffoorrmmwwiinn(3X)
formterm ffoorrmmhhooookk(3X)
formuserptr ffoorrmmuusseerrppttrr(3X)
formwin ffoorrmmwwiinn(3X)
freefield ffoorrmmffiieellddnneeww(3X)freeform ffoorrmmnneeww(3X)
linkfield ffoorrmmffiieellddnneeww(3X) linkfieldtype ffoorrmmffiieellddttyyppee(3X) movefield ffoorrmmffiieelldd(3X) newfield ffoorrmmffiieellddnneeww(3X)newform ffoorrmmnneeww(3X)
newpage ffoorrmmnneewwppaaggee(3X)posformcursor ffoorrmmccuurrssoorr(3X)
postform ffoorrmmppoosstt(3X)
scaleform ffoorrmmwwiinn(3X)
setcurrentfield ffoorrmmppaaggee(3X) setfieldback ffoorrmmffiieellddaattttrriibbuutteess(3X) setfieldbuffer ffoorrmmffiieellddbbuuffffeerr(3X) setfieldfore ffoorrmmffiieellddaattttrriibbuutteess(3X) setfieldinit ffoorrmmhhooookk(3X) setfieldjust ffoorrmmffiieellddjjuusstt(3X) setfieldopts ffoorrmmffiieellddooppttss(3X) setfieldpad ffoorrmmffiieellddaattttrriibbuutteess(3X) setfieldstatus ffoorrmmffiieellddbbuuffffeerr(3X) setfieldterm ffoorrmmhhooookk(3X) setfieldtype ffoorrmmffiieellddvvaalliiddaattiioonn(3X) setfielduserptr ffoorrmmffiieelldduusseerrppttrr(3X) setfieldtypearg ffoorrmmffiieellddttyyppee(3X) setfieldtypechoice ffoorrmmffiieellddttyyppee(3X)setformfields ffoorrmmffiieelldd(3X)
setforminit ffoorrmmhhooookk(3X)
setformopts ffoorrmmffiieellddooppttss(3X)
setformpage ffoorrmmppaaggee(3X)
setformsub ffoorrmmwwiinn(3X)
setformterm ffoorrmmhhooookk(3X)
setformuserptr ffoorrmmuusseerrppttrr(3X)
setformwin ffoorrmmwwiinn(3X)
setmaxfield ffoorrmmffiieellddbbuuffffeerr(3X) setnewpage ffoorrmmnneewwppaaggee(3X)unpostform ffoorrmmppoosstt(3X)
RREETTUURRNN VVAALLUUEE Routines that return pointers return NNUULLLL on error. Routines that return an integer return one of the following error codes: EEOOKK The routine succeeded. EECCOONNNNEECCTTEEDDThe field is already connected to a form.
EESSYYSSTTEEMMEERRRROORR System error occurred (see eerrrrnnoo). EEBBAADDAARRGGUUMMEENNTTRoutine detected an incorrect or out-of-range argument.
EEPPOOSSTTEEDDThe form is already posted.
EEBBAADDSSTTAATTEE Routine was called from an initialization or termination function. EENNOORROOOOMM Form is too large for its window. EENNOOTTPPOOSSTTEEDDThe form has not been posted.
EEUUNNKKNNOOWWNNCCOOMMMMAANNDDThe form driver code saw an unknown request code.
EEIINNVVAALLIIDDFFIIEELLDD Contents of a field are not valid. EENNOOTTCCOONNNNEECCTTEEDDNo fields are connected to the form.
EERREEQQUUEESSTTDDEENNIIEEDDThe form driver could not process the request.
SEE ALSO
ccuurrsseess(3X) and related pages whose names begin "form" for detailed
descriptions of the entry points. NNOOTTEESS The header file <> automatically includes the header files < > and < >. In your library list, libform.a should be before libncurses.a; that is,
you want to say `-lform -lncurses', not the other way around (which
would give you a link error using GNU lldd(1) and many other linkers). PPOORRTTAABBIILLIITTYYThese routines emulate the System V forms library. They were not sup-
ported on Version 7 or BSD versions. AUTHORS Juergen Pfeifer. Manual pages and adaptation for ncurses by Eric S. Raymond.form(3X)