summaryrefslogtreecommitdiff
path: root/lib/libform/form.3
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libform/form.3')
-rw-r--r--lib/libform/form.3218
1 files changed, 218 insertions, 0 deletions
diff --git a/lib/libform/form.3 b/lib/libform/form.3
new file mode 100644
index 00000000000..3fe0fd9512a
--- /dev/null
+++ b/lib/libform/form.3
@@ -0,0 +1,218 @@
+'\" t
+.\" $OpenBSD: form.3,v 1.6 2019/02/13 07:18:58 nicm Exp $
+.\"
+.\"***************************************************************************
+.\" Copyright (c) 1998-2006,2008 Free Software Foundation, Inc. *
+.\" *
+.\" Permission is hereby granted, free of charge, to any person obtaining a *
+.\" copy of this software and associated documentation files (the *
+.\" "Software"), to deal in the Software without restriction, including *
+.\" without limitation the rights to use, copy, modify, merge, publish, *
+.\" distribute, distribute with modifications, sublicense, and/or sell *
+.\" copies of the Software, and to permit persons to whom the Software is *
+.\" furnished to do so, subject to the following conditions: *
+.\" *
+.\" The above copyright notice and this permission notice shall be included *
+.\" in all copies or substantial portions of the Software. *
+.\" *
+.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+.\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+.\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+.\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+.\" THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+.\" *
+.\" Except as contained in this notice, the name(s) of the above copyright *
+.\" holders shall not be used in advertising or otherwise to promote the *
+.\" sale, use or other dealings in this Software without prior written *
+.\" authorization. *
+.\"***************************************************************************
+.\"
+.\" $Id: form.3,v 1.6 2019/02/13 07:18:58 nicm Exp $
+.TH form 3 ""
+.SH NAME
+\fBform\fR - curses extension for programming forms
+.SH SYNOPSIS
+\fB#include <form.h>\fR
+.br
+.SH DESCRIPTION
+The \fBform\fR 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 interaction with the
+user.
+.PP
+The \fBform\fR library uses the \fBcurses\fR libraries.
+To use the \fBform\fR library, link with the options
+\fB-lform -lcurses\fR.
+.PP
+Your program should set up the locale, e.g.,
+.sp
+ \fBsetlocale(LC_ALL, "");\fP
+.sp
+so that input/output processing will work.
+.PP
+A curses initialization routine such as \fBinitscr\fR must be called
+before using any of these functions.
+.
+.SS Current Default Values for Field Attributes
+.
+The \fBform\fR library maintains a default value for field attributes. You
+can get or set this default by calling the appropriate \fBset_\fR
+or retrieval
+routine with a \fBNULL\fR field pointer. Changing this default with a
+\fBset_\fR function affects future field creations, but does not change the
+rendering of fields already created.
+.
+.SS Routine Name Index
+.
+The following table lists each \fBform\fR routine and the name of
+the manual page on which it is described.
+.
+.TS
+l l
+l l .
+\fBcurses\fR Routine Name Manual Page Name
+=
+current_field \fBform_page\fR(3)
+data_ahead \fBform_data\fR(3)
+data_behind \fBform_data\fR(3)
+dup_field \fBform_field_new\fR(3)
+dynamic_field_info \fBform_field_info\fR(3)
+field_arg \fBform_field_validation\fR(3)
+field_back \fBform_field_attributes\fR(3)
+field_buffer \fBform_field_buffer\fR(3)
+field_count \fBform_field\fR(3)
+field_fore \fBform_field_attributes\fR(3)
+field_index \fBform_page\fR(3)
+field_info \fBform_field_info\fR(3)
+field_init \fBform_hook\fR(3)
+field_just \fBform_field_just\fR(3)
+field_opts \fBform_field_opts\fR(3)
+field_opts_off \fBform_field_opts\fR(3)
+field_opts_on \fBform_field_opts\fR(3)
+field_pad \fBform_field_attributes\fR(3)
+field_status \fBform_field_buffer\fR(3)
+field_term \fBform_hook\fR(3)
+field_type \fBform_field_validation\fR(3)
+field_userptr \fBform_field_userptr\fR(3)
+form_driver \fBform_driver\fR(3)
+form_fields \fBform_field\fR(3)
+form_init \fBform_hook\fR(3)
+form_opts \fBform_opts\fR(3)
+form_opts_off \fBform_opts\fR(3)
+form_opts_on \fBform_opts\fR(3)
+form_page \fBform_page\fR(3)
+form_request_by_name \fBform_requestname\fR(3)
+form_request_name \fBform_requestname\fR(3)
+form_sub \fBform_win\fR(3)
+form_term \fBform_hook\fR(3)
+form_userptr \fBform_userptr\fR(3)
+form_win \fBform_win\fR(3)
+free_field \fBform_field_new\fR(3)
+free_fieldtype \fBform_fieldtype\fR(3)
+free_form \fBform_new\fR(3)
+link_field \fBform_field_new\fR(3)
+link_fieldtype \fBform_fieldtype\fR(3)
+move_field \fBform_field\fR(3)
+new_field \fBform_field_new\fR(3)
+new_fieldtype \fBform_fieldtype\fR(3)
+new_form \fBform_new\fR(3)
+new_page \fBform_new_page\fR(3)
+pos_form_cursor \fBform_cursor\fR(3)
+post_form \fBform_post\fR(3)
+scale_form \fBform_win\fR(3)
+set_current_field \fBform_page\fR(3)
+set_field_back \fBform_field_attributes\fR(3)
+set_field_buffer \fBform_field_buffer\fR(3)
+set_field_fore \fBform_field_attributes\fR(3)
+set_field_init \fBform_hook\fR(3)
+set_field_just \fBform_field_just\fR(3)
+set_field_opts \fBform_field_opts\fR(3)
+set_field_pad \fBform_field_attributes\fR(3)
+set_field_status \fBform_field_buffer\fR(3)
+set_field_term \fBform_hook\fR(3)
+set_field_type \fBform_field_validation\fR(3)
+set_field_userptr \fBform_field_userptr\fR(3)
+set_fieldtype_arg \fBform_fieldtype\fR(3)
+set_fieldtype_choice \fBform_fieldtype\fR(3)
+set_form_fields \fBform_field\fR(3)
+set_form_init \fBform_hook\fR(3)
+set_form_opts \fBform_field_opts\fR(3)
+set_form_page \fBform_page\fR(3)
+set_form_sub \fBform_win\fR(3)
+set_form_term \fBform_hook\fR(3)
+set_form_userptr \fBform_userptr\fR(3)
+set_form_win \fBform_win\fR(3)
+set_max_field \fBform_field_buffer\fR(3)
+set_new_page \fBform_new_page\fR(3)
+unpost_form \fBform_post\fR(3)
+.TE
+.SH RETURN VALUE
+Routines that return pointers return \fBNULL\fR on error,
+and set errno to the corresponding error-code returned by functions
+returning an integer.
+Routines that return
+an integer return one of the following error codes:
+.TP 5
+.B E_OK
+The routine succeeded.
+.TP 5
+.B E_BAD_ARGUMENT
+Routine detected an incorrect or out-of-range argument.
+.TP 5
+.B E_BAD_STATE
+Routine was called from an initialization or termination function.
+.TP 5
+.B E_CONNECTED
+The field is already connected to a form.
+.TP 5
+.B E_INVALID_FIELD
+Contents of a field are not valid.
+.TP 5
+.B E_NOT_CONNECTED
+No fields are connected to the form.
+.TP 5
+.B E_NOT_POSTED
+The form has not been posted.
+.TP 5
+.B E_NO_ROOM
+Form is too large for its window.
+.TP 5
+.B E_POSTED
+The form is already posted.
+.TP 5
+.B E_REQUEST_DENIED
+The form driver could not process the request.
+.TP 5
+.B E_SYSTEM_ERROR
+System error occurred (see \fBerrno\fR).
+.TP 5
+.B E_UNKNOWN_COMMAND
+The form driver code saw an unknown request code.
+.SH SEE ALSO
+\fBcurses\fR(3) and related pages whose names begin "form_" for detailed
+descriptions of the entry points.
+.SH NOTES
+The header file \fB<form.h>\fR automatically includes the header files
+\fB<curses.h>\fR and \fB<eti.h>\fR.
+.PP
+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 most linkers).
+.SH PORTABILITY
+These routines emulate the System V forms library. They were not supported on
+Version 7 or BSD versions.
+.SH AUTHORS
+Juergen Pfeifer. Manual pages and adaptation for ncurses by Eric
+S. Raymond.
+.SH SEE ALSO
+This describes \fBncurses\fR
+version 5.7.
+.\"#
+.\"# The following sets edit modes for GNU EMACS
+.\"# Local Variables:
+.\"# mode:nroff
+.\"# fill-column:79
+.\"# End: