ncurses 6.0 - patch 20151205
[ncurses.git] / man / form_new.3x
1 '\" t
2 .\"***************************************************************************
3 .\" Copyright (c) 1998-2010,2015 Free Software Foundation, Inc.              *
4 .\"                                                                          *
5 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
6 .\" copy of this software and associated documentation files (the            *
7 .\" "Software"), to deal in the Software without restriction, including      *
8 .\" without limitation the rights to use, copy, modify, merge, publish,      *
9 .\" distribute, distribute with modifications, sublicense, and/or sell       *
10 .\" copies of the Software, and to permit persons to whom the Software is    *
11 .\" furnished to do so, subject to the following conditions:                 *
12 .\"                                                                          *
13 .\" The above copyright notice and this permission notice shall be included  *
14 .\" in all copies or substantial portions of the Software.                   *
15 .\"                                                                          *
16 .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
17 .\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
18 .\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
19 .\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
20 .\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
21 .\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
22 .\" THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
23 .\"                                                                          *
24 .\" Except as contained in this notice, the name(s) of the above copyright   *
25 .\" holders shall not be used in advertising or otherwise to promote the     *
26 .\" sale, use or other dealings in this Software without prior written       *
27 .\" authorization.                                                           *
28 .\"***************************************************************************
29 .\"
30 .\" $Id: form_new.3x,v 1.10 2015/12/05 23:01:16 tom Exp $
31 .TH form_new 3X ""
32 .SH NAME
33 \fBnew_form\fR,
34 \fBfree_form\fP \- create and destroy forms
35 .SH SYNOPSIS
36 \fB#include <form.h>\fR
37 .br
38 FORM *new_form(FIELD **fields);
39 .br
40 int free_form(FORM *form);
41 .br
42 .SH DESCRIPTION
43 The function \fBnew_form\fR creates a new form connected to a specified field
44 pointer array (which must be \fBNULL\fR-terminated).
45 .PP
46 The function \fBfree_form\fR disconnects \fIform\fR from its field array
47 and frees the storage allocated for the form.
48 .SH RETURN VALUE
49 The function \fBnew_form\fR returns \fBNULL\fR on error.
50 It sets errno according to the function's success:
51 .TP 5
52 .B E_OK
53 The routine succeeded.
54 .TP 5
55 .B E_BAD_ARGUMENT
56 Routine detected an incorrect or out-of-range argument.
57 .TP 5
58 .B E_CONNECTED
59 The field is already connected to a form.
60 .TP 5
61 .B E_SYSTEM_ERROR
62 System error occurred, e.g., malloc failure.
63 .PP
64 The function \fBfree_form\fR returns one of the following:
65 .TP 5
66 .B E_OK
67 The routine succeeded.
68 .TP 5
69 .B E_BAD_ARGUMENT
70 Routine detected an incorrect or out-of-range argument.
71 .TP 5
72 .B E_POSTED
73 The form has already been posted.
74 .SH SEE ALSO
75 \fBcurses\fR(3X), \fBform\fR(3X).
76 .SH NOTES
77 The header file \fB<form.h>\fR automatically includes the header file
78 \fB<curses.h>\fR.
79 .SH PORTABILITY
80 These routines emulate the System V forms library.  They were not supported on
81 Version 7 or BSD versions.
82 .SH AUTHORS
83 Juergen Pfeifer.  Manual pages and adaptation for new curses by Eric
84 S. Raymond.