Documentation
From my personal library, The Internet

man page:


SYNOPSIS

       #include <form.h>
       int set_form_fields(FORM *form, FIELD **fields);
       FIELD **form_fields(const FORM *form);
       int field_count(const FORM *form);
       int move_field(FIELD *field, int frow, int fcol);


DESCRIPTION

       The  function  set_form_fields  changes  the field pointer array of the
       given form.  The array must be terminated by a NULL.

       The function form_fields returns the field array of the given form.

       The function field_count returns the count of fields in form.

       The function move_field moves the given field (which  must  be  discon-
       nected) to a specified location on the screen.


RETURN VALUES

       The function form_fields returns NULL on error.

       The  function  field_count returns ERR (the general curses error return
       value) on error.

       The functions set_form_fields and move_field return one of the  follow-
       ing codes on error:

       E_OK The routine succeeded.

       E_SYSTEM_ERROR
            System error occurred (see errno).

       E_BAD_ARGUMENT
            Routine detected an incorrect or out-of-range argument.

       E_POSTED
            The form is already posted.

       E_CONNECTED
            The field is already connected to a form.


SEE ALSO

       curses(3X), form(3X).


NOTES

       The  header  file  <form.h>  automatically  includes  the  header  file
       <curses.h>.


PORTABILITY

       These routines emulate the System V forms library.  They were not  sup-
       ported on Version 7 or BSD versions.