Section: Miscellaneous Library Functions (3X)
- set and get field options
int set_field_opts(FIELD *field, Field_Options opts);
int field_opts_on(FIELD *field, Field_Options opts);
int field_opts_off(FIELD *field, Field_Options opts);
Field_Options field_opts(const FIELD *field);
The function set_field_opts
sets all the given field's option bits (field
option bits may be logically-OR'ed together).
The function field_opts_on turns on the given option bits, and leaves
The function field_opts_off turns off the given option bits, and leaves
The function field_opts returns the field's current option bits.
The following standard options are defined (all are on by default):
The field is visited during processing.
If this option is off, the field will
not be reachable by navigation keys.
Please notice that an invisible field
appears to be inactive also.
Skip to the next field when this one fills.
The field is cleared whenever a character is entered at the first position.
The field can be edited.
Allow a blank field.
Validate field only if modified by user.
The field contents are displayed as data is entered.
Field buffers are fixed to field's original size.
Turn this option off to create a dynamic field.
The field is displayed.
If this option is off, display of the field is
Words that do not fit on a line are wrapped to the next line.
These extension options are defined (extensions are off by default):
Permit dynamic fields to be justified, like static fields.
Preserve leading whitespace in the field buffer, which is normally discarded.
When inserting into a field up to the boundary position,
optionally delay the scrolling,
so that the last inserted character remains visible,
but advance the cursor to reflect the insertion.
This allows the form library to display the
inserted character in one-character fields
as well as allowing the library to maintain consistent state.
The set_max_field function checks for this extension,
which allows a dynamic field to shrink if the new
limit is smaller than the current field size.
Except for field_opts
, each routine returns one of the following:
The routine succeeded.
Routine detected an incorrect or out-of-range argument.
The field is the current field.
System error occurred (see errno(3)).
The header file <form.h>
automatically includes the header file
These routines emulate the System V forms library.
They were not supported on
Version 7 or BSD versions.
Manual pages and adaptation for new curses by Eric S. Raymond.