FORMS(3) | Library Functions Manual | FORMS(3)

# NAME

`field_buffer`, `field_status`, `set_field_buffer`, `set_field_printf`, `set_field_status`, `set_max_field` —
form library

# LIBRARY

Curses Form Library (libform, -lform)

# 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.

October 15, 2005 | NetBSD 9.2