form_field_new(3) UNIX Programmer's Manual form_field_new(3)
form_field_new - create and destroy form fields
#include <form.h> FIELD *new_field(int height, int width, int toprow, int leftcol, int offscreen, int nbuffers); FIELD *dup_field(FIELD *field, int toprow, int leftcol); FIELD *link_field(FIELD *field, int toprow, int leftcol); int free_field(FIELD *field);
The function new_field allocates a new field and initializes it from the parameters given: height, width, row of upper- left corner, column of upper-left corner, number off-screen rows, and number of additional working buffers. The function dup_field duplicates a field at a new location. Most attributes (including current contents, size, valida- tion type, buffer count, growth threshold, justification, foreground, background, pad character, options, and user pointer) are copied. Field status and the field page bit are not copied. The function link_field acts like dup_field, but the new field shares buffers with its parent. Attribute data is separate. The function free_field de-allocates storage associated with a field.
The function, new_field, dup_field, link_field return NULL on error. The function free_field returns one of the following: 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.
curses(3), form(3).
The header file <form.h> automatically includes the header file <curses.h>. MirBSD #10-current Printed 2022-12-23 1 form_field_new(3) UNIX Programmer's Manual form_field_new(3)
These routines emulate the System V forms library. They were not supported on Version 7 or BSD versions. It may be unwise to count on the set of attributes copied by dup_field(3) being portable; the System V forms library documents are not very explicit about what gets copied and what doesn't.
Juergen Pfeifer. Manual pages and adaptation for new curses by Eric S. Raymond. MirBSD #10-current Printed 2022-12-23 2