form_field_opts(3x) — Linux manual page


form_field_opts(3X)                                      form_field_opts(3X)

NAME         top

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

SYNOPSIS         top

       #include <form.h>
       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);

DESCRIPTION         top

       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.

RETURN VALUE         top

       Except for field_opts, each routine returns one of the following:

       E_OK The routine succeeded.

            Routine detected an incorrect or out-of-range argument.

            The field is the current field.

            System error occurred (see errno(3)).

SEE ALSO         top

       curses(3X), form(3X).  form_field_just(3X).

NOTES         top

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

PORTABILITY         top

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

AUTHORS         top

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

COLOPHON         top

       This page is part of the ncurses (new curses) project.  Information
       about the project can be found at 
       ⟨⟩.  If you have a
       bug report for this manual page, send it to  This page was obtained from the
       project's upstream Git mirror of the CVS repository
       ⟨git://⟩ on 2020-07-14.  (At that
       time, the date of the most recent commit that was found in the repos‐
       itory was 2020-07-12.)  If you discover any rendering problems in
       this HTML version of the page, or you believe there is a better or
       more up-to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not part
       of the original manual page), send a mail to