| FORMS(3) | Library Functions Manual | FORMS(3) | 
free_fieldtype, link_fieldtype,
  new_fieldtype,
  set_fieldtype_arg,
  set_fieldtype_choice —
#include <form.h>
int
  
  free_fieldtype(FIELDTYPE
    *fieldtype);
FIELDTYPE *
  
  link_fieldtype(FIELDTYPE
    *type1, FIELDTYPE
    *type2);
FIELDTYPE *
  
  new_fieldtype(int (*field_check)(FIELD
    *, char *), int (*char_check)(int, char *));
int
  
  set_fieldtype_arg(FIELDTYPE
    *fieldtype, char * (*make_args)(va_list *),
    char * (*copy_args)(char *), void
    (*free_args)(char *));
int
  
  set_fieldtype_choice(FIELDTYPE
    *fieldtype, int (*next_choice)(FIELD *, char *),
    int (*prev_choice)(FIELD *, char *));
free_fieldtype() frees the storage
  associated with the field type and destroys it. The function
  link_fieldtype() links together the two given field
  types to produce a new field type. A new field type can be created by calling
  new_fieldtype() which requires pointers to two
  functions which perform validation, the field_check
  function must validate the field contents and return
  TRUE if they are acceptable and
  FALSE if they are not. The
  char_check validates the character input into the field,
  this function will be called for each character entered, if the character can
  be entered into the field then char_check must return
  TRUE. Neither field_check nor
  char_check may be NULL. The
  functions for handling the field type arguments can be defined by using the
  set_fieldtype_arg() function, the
  make_args function is used to create new arguments for
  the fieldtype, the copy_args is used to copy the
  fieldtype arguments to a new arguments structure and
  free_args is used to destroy the fieldtype arguments and
  release any associated storage, none of these function pointers may be
  NULL. The field type choice functions can be set by
  calling set_fieldtype_choice(), the
  next_choice and prev_choice
  specify the next and previous choice functions for the field type. These
  functions must perform the necessary actions to select the next or previous
  choice for the field, updating the field buffer if necessary. The choice
  functions must return TRUE if the function succeeded
  and FALSE otherwise.
NULL if an
  error is detected. The functions that return an int will return one of the
  following error values:
E_OKE_BAD_ARGUMENTE_CONNECTED<form.h>
  automatically includes both
  <curses.h> and
  <eti.h>.
| January 1, 2001 | NetBSD 10.0 |