Scroll to navigation

field_opts(3FORM) field_opts(3FORM)


set_field_opts, field_opts_on, field_opts_off, field_opts - set and get field options


#include <form.h>

int set_field_opts(FIELD *field, Field_Options opts);
Field_Options field_opts(const FIELD *field);

int field_opts_on(FIELD *field, Field_Options opts);
int field_opts_off(FIELD *field, Field_Options opts);


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 others alone.

The function field_opts_off turns off the given option bits, and leaves others alone.

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 suppressed.
Words that do not fit on a line are wrapped to the next line. Words are blank-separated.

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


ncurses(3NCURSES), form(3FORM). field_just(3FORM).


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


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


Juergen Pfeifer. Manual pages and adaptation for new curses by Eric S. Raymond.