4 <!-- Manpage converted by man2html 3.0.1 -->
8 <B>form</B> - curses extension for programming forms
12 <H2>SYNOPSIS</H2><PRE>
13 <B>#include</B> <B><form.h></B>
17 <H2>DESCRIPTION</H2><PRE>
18 The <B>form</B> library provides terminal-independent facilities
19 for composing form screens on character-cell terminals.
20 The library includes: field routines, which create and
21 modify form fields; and form routines, which group fields
22 into forms, display forms on the screen, and handle inter-
25 The <B>form</B> library uses the <B>curses</B> libraries, and a curses
26 initialization routine such as <B>initscr</B> must be called
27 before using any of these functions. To use the <B>form</B>
28 library, link with the options <B>-lform</B> <B>-lcurses</B>.
31 <B>Current</B> <B>Default</B> <B>Values</B> <B>for</B> <B>Field</B> <B>Attributes</B>
32 The <B>form</B> library maintains a default value for field
33 attributes. You can get or set this default by calling
34 the appropriate <B>set_</B> or retrieval routine with a <B>NULL</B>
35 field pointer. Changing this default with a <B>set_</B> function
36 affects future field creations, but does not change the
37 rendering of fields already created.
40 <B>Routine</B> <B>Name</B> <B>Index</B>
41 The following table lists each <B>form</B> routine and the name
42 of the manual page on which it is described.
44 <B>curses</B> Routine Name Manual Page Name
45 -------------------------------------------------
46 current_field <B><A HREF="form_page.3x.html">form_page(3x)</A></B>
47 data_ahead <B><A HREF="form_data.3x.html">form_data(3x)</A></B>
48 data_behind <B><A HREF="form_data.3x.html">form_data(3x)</A></B>
49 dup_field <B><A HREF="form_field_new.3x.html">form_field_new(3x)</A></B>
50 dynamic_fieldinfo <B><A HREF="form_field_info.3x.html">form_field_info(3x)</A></B>
51 field_arg <B><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></B>
52 field_back <B><A HREF="form_field_attributes.3x.html">form_field_attributes(3x)</A></B>
53 field_buffer <B><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></B>
54 field_count <B><A HREF="form_field.3x.html">form_field(3x)</A></B>
55 field_fore <B><A HREF="form_field_attributes.3x.html">form_field_attributes(3x)</A></B>
56 field_index <B><A HREF="form_page.3x.html">form_page(3x)</A></B>
57 field_info <B><A HREF="form_field_info.3x.html">form_field_info(3x)</A></B>
58 field_init <B><A HREF="form_hook.3x.html">form_hook(3x)</A></B>
59 field_just <B><A HREF="form_field_just.3x.html">form_field_just(3x)</A></B>
60 field_opts <B><A HREF="form_field_opts.3x.html">form_field_opts(3x)</A></B>
61 field_opts_off <B><A HREF="form_field_opts.3x.html">form_field_opts(3x)</A></B>
62 field_opts_on <B><A HREF="form_field_opts.3x.html">form_field_opts(3x)</A></B>
63 field_pad <B><A HREF="form_field_attributes.3x.html">form_field_attributes(3x)</A></B>
65 field_status <B><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></B>
66 field_term <B><A HREF="form_hook.3x.html">form_hook(3x)</A></B>
67 field_type <B><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></B>
68 field_userptr <B><A HREF="form_field_userptr.3x.html">form_field_userptr(3x)</A></B>
69 form_driver <B><A HREF="form_driver.3x.html">form_driver(3x)</A></B>
70 form_fields <B><A HREF="form_field.3x.html">form_field(3x)</A></B>
71 form_init <B><A HREF="form_hook.3x.html">form_hook(3x)</A></B>
72 form_opts <B><A HREF="form_opts.3x.html">form_opts(3x)</A></B>
73 form_opts_off <B><A HREF="form_opts.3x.html">form_opts(3x)</A></B>
74 form_opts_on <B><A HREF="form_opts.3x.html">form_opts(3x)</A></B>
75 form_page <B><A HREF="form_page.3x.html">form_page(3x)</A></B>
76 form_request_by_name <B><A HREF="form_requestname.3x.html">form_requestname(3x)</A></B>
77 form_request_name <B><A HREF="form_requestname.3x.html">form_requestname(3x)</A></B>
78 form_sub <B><A HREF="form_win.3x.html">form_win(3x)</A></B>
79 form_term <B><A HREF="form_hook.3x.html">form_hook(3x)</A></B>
80 form_userptr <B><A HREF="form_userptr.3x.html">form_userptr(3x)</A></B>
81 form_win <B><A HREF="form_win.3x.html">form_win(3x)</A></B>
82 free_field <B><A HREF="form_field_new.3x.html">form_field_new(3x)</A></B>
83 free_form <B><A HREF="form_new.3x.html">form_new(3x)</A></B>
84 link_field <B><A HREF="form_field_new.3x.html">form_field_new(3x)</A></B>
85 link_fieldtype <B><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></B>
86 move_field <B><A HREF="form_field.3x.html">form_field(3x)</A></B>
87 new_field <B><A HREF="form_field_new.3x.html">form_field_new(3x)</A></B>
88 new_form <B><A HREF="form_new.3x.html">form_new(3x)</A></B>
89 new_page <B><A HREF="form_new_page.3x.html">form_new_page(3x)</A></B>
90 pos_form_cursor <B><A HREF="form_cursor.3x.html">form_cursor(3x)</A></B>
91 post_form <B><A HREF="form_post.3x.html">form_post(3x)</A></B>
92 scale_form <B><A HREF="form_win.3x.html">form_win(3x)</A></B>
93 set_current_field <B><A HREF="form_page.3x.html">form_page(3x)</A></B>
94 set_field_back <B><A HREF="form_field_attributes.3x.html">form_field_attributes(3x)</A></B>
95 set_field_buffer <B><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></B>
96 set_field_fore <B><A HREF="form_field_attributes.3x.html">form_field_attributes(3x)</A></B>
97 set_field_init <B><A HREF="form_hook.3x.html">form_hook(3x)</A></B>
98 set_field_just <B><A HREF="form_field_just.3x.html">form_field_just(3x)</A></B>
99 set_field_opts <B><A HREF="form_field_opts.3x.html">form_field_opts(3x)</A></B>
100 set_field_pad <B><A HREF="form_field_attributes.3x.html">form_field_attributes(3x)</A></B>
101 set_field_status <B><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></B>
102 set_field_term <B><A HREF="form_hook.3x.html">form_hook(3x)</A></B>
103 set_field_type <B><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></B>
104 set_field_userptr <B><A HREF="form_field_userptr.3x.html">form_field_userptr(3x)</A></B>
105 set_fieldtype_arg <B><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></B>
106 set_fieldtype_choice <B><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></B>
107 set_form_fields <B><A HREF="form_field.3x.html">form_field(3x)</A></B>
108 set_form_init <B><A HREF="form_hook.3x.html">form_hook(3x)</A></B>
109 set_form_opts <B><A HREF="form_field_opts.3x.html">form_field_opts(3x)</A></B>
110 set_form_page <B><A HREF="form_page.3x.html">form_page(3x)</A></B>
111 set_form_sub <B><A HREF="form_win.3x.html">form_win(3x)</A></B>
112 set_form_term <B><A HREF="form_hook.3x.html">form_hook(3x)</A></B>
113 set_form_userptr <B><A HREF="form_userptr.3x.html">form_userptr(3x)</A></B>
114 set_form_win <B><A HREF="form_win.3x.html">form_win(3x)</A></B>
115 set_max_field <B><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></B>
116 set_new_page <B><A HREF="form_new_page.3x.html">form_new_page(3x)</A></B>
117 unpost_form <B><A HREF="form_post.3x.html">form_post(3x)</A></B>
121 <H2>RETURN VALUE</H2><PRE>
122 Routines that return pointers return <B>NULL</B> on error. Rou-
123 tines that return an integer return one of the following
126 <B>E_OK</B> The routine succeeded.
129 The field is already connected to a form.
131 <B>E_SYSTEM_ERROR</B>
132 System error occurred (see <B>errno</B>).
134 <B>E_BAD_ARGUMENT</B>
135 Routine detected an incorrect or out-of-range argu-
139 The form is already posted.
142 Routine was called from an initialization or termina-
146 Form is too large for its window.
149 The form has not been posted.
151 <B>E_UNKNOWN_COMMAND</B>
152 The form driver code saw an unknown request code.
154 <B>E_INVALID_FIELD</B>
155 Contents of a field are not valid.
157 <B>E_NOT_CONNECTED</B>
158 No fields are connected to the form.
160 <B>E_REQUEST_DENIED</B>
161 The form driver could not process the request.
165 <H2>SEE ALSO</H2><PRE>
166 <B><A HREF="ncurses.3x.html">curses(3x)</A></B> and 3x pages whose names begin "form_" for
167 detailed descriptions of the entry points.
172 The header file <B><form.h></B> automatically includes the header
173 files <B><curses.h></B> and <B><eti.h></B>.
175 In your library list, libform.a should be before libn-
176 curses.a; that is, you want to say `-lform -lncurses', not
177 the other way around (which would give you a link error
178 using GNU <B><A HREF="ld.1.html">ld(1)</A></B> and many other linkers).
182 <H2>PORTABILITY</H2><PRE>
183 These routines emulate the System V forms library. They
184 were not supported on Version 7 or BSD versions.
188 <H2>AUTHORS</H2><PRE>
189 Juergen Pfeifer. Manual pages and adaptation for ncurses
241 Man(1) output converted with
242 <a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>