FORMS(3)

NAME
field_buffer, field_status, set_field_buffer, set_field_printf, set_field_status, set_max_field - form library

LIBRARY
libform

SYNOPSIS
#include <form.h>
char *
field_buffer(FIELD *field, int buffer);
int
field_status(FIELD *field);
int
set_field_buffer(FIELD *field, int buffer, char *value);
int
set_field_printf(FIELD *field, int buffer, char *fmt, ...);
int
set_field_status(FIELD *field, int status);
int
set_max_field(FIELD *field, int max);

DESCRIPTION
The field_buffer() function returns the contents of the buffer number specified by buffer for the given field. If the requested buffer number exceeds the number of buffers attached to the field then NULL will be returned. If the field option O_REFORMAT is enabled on the given field then storage will be allocated to hold the reformatted buffer. This storage must be release by calling free(3) when it is no longer required. If the O_REFORMAT field option is not set then no extra storage is allocated. The field buffer may be set by calling set_field_buffer() which will set the given buffer number to the contents of the string passed. A buffer may also be set by calling set_field_printf() which sets the buffer using the format arg fmt after being expanded using the subsequent arguments in the same manner as sprintf(3) does. Calling field_status() will return the status of the first buffer attached to the field. If the field has been modified then the function will return TRUE otherwise FALSE is returned, the status of the first buffer may be programmatically set by calling set_field_status(). The maximum growth of a dynamic field can be set by calling set_max_field() which limits the fields rows if the field is a multiline field or the fields columns if the field only has a single row.

RETURN VALUES
Functions returning pointers will return NULL if an error is detected. The functions that return an int will return one of the following error values:

E_OK
    The function was successful.
E_BAD_ARGUMENT
    A bad parameter was passed to the function.
E_SYSTEM_ERROR
    A system error occurred performing the function.

SEE ALSO
curses(3), forms(3)

NOTES
The header <form.h> automatically includes both <curses.h> and <eti.h>. The function set_field_printf() is a NetBSD extension and must not be used in portable code.