# form_field_opts

## NAME



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


## SYNOPSIS



           **#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_**);**
    


## DESCRIPTION



           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):
    
           O_ACTIVE
                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.
    
           O_AUTOSKIP
                Skip to the next field when this one fills.
    
           O_BLANK
                The field is cleared whenever a character is entered at the
                first position.
    
           O_EDIT
                The field can be edited.
    
           O_NULLOK
                Allow a blank field.
    
           O_PASSOK
                Validate field only if modified by user.
    
           O_PUBLIC
                The field contents are displayed as data is entered.
    
           O_STATIC
                Field buffers are fixed to field's original size.  Turn this
                option off to create a dynamic field.
    
           O_VISIBLE
                The field is displayed.  If this option is off, display of
                the field is suppressed.
    
           O_WRAP
                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):
    
           O_DYNAMIC_JUSTIFY
                Permit dynamic fields to be justified, like static fields.
    
           O_NO_LEFT_STRIP
                Preserve leading whitespace in the field buffer, which is
                normally discarded.
    
           O_EDGE_INSERT_STAY
                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.
    
           O_INPUT_FIELD
                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



           Except for **field_opts** , each routine returns one of the following:
    
           **E_OK** The routine succeeded.
    
           **E_BAD_ARGUMENT**
                Routine detected an incorrect or out-of-range argument.
    
           **E_CURRENT**
                The field is the current field.
    
           **E_SYSTEM_ERROR**
                System error occurred (see errno(3)).
    


## NOTES



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


## PORTABILITY



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


* * *