---
name: "form_field_opts"
section: "3form"
platform: "linux"
package: "ncurses-doc"
version: "5.9+20140913-1+deb8u3"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/field_opts/3form"
---

# form\_field\_opts(3form)

set and get field options

Part of [field\_opts(3form)](/field_opts/3form.md).

## NAME

**form\_field\_opts** - set and get field options

## SYNOPSIS

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

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.

One extension option is defined (extensions are off by default):

- O\_DYNAMIC\_JUSTIFY

  Permit dynamic fields to be justified, like static fields.

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

## SEE ALSO

**ncurses**(3NCURSES), **form**(3FORM). **field\_just**(3FORM).

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

## AUTHORS

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