link_fieldtype man page on DigitalUNIX

Man page or keyword search:  
man Server   12896 pages
apropos Keyword Search (all sections)
Output format
DigitalUNIX logo
[printable version]

form_fieldtype(3X)					    form_fieldtype(3X)

       form_fieldtype - define validation-field types

       #include <form.h>
       FIELDTYPE *new_fieldtype(
	   bool (* const field_check)(FIELD *, const void *),
	   bool (* const char_check)(int, const void *));
       int free_fieldtype(FIELDTYPE *fieldtype);
       int set_fieldtype_arg(
	   FIELDTYPE *fieldtype,
	   void *(* const make_arg)(va_list *),
	   void *(* const copy_arg)(const void *),
	   void	 (* const free_arg)(void *));
       int set_fieldtype_choice(
	   FIELDTYPE *fieldtype
	   bool (* const next_choice)(FIELD *, const void *),
	   bool (* const prev_choice)(FIELD *, const void *));
       FIELDTYPE *link_fieldtype(FIELDTYPE *type1,
				 FIELDTYPE *type2);

       The  function  new_fieldtype  creates  a new field type usable for data
       validation.  You supply it with field_check, a predicate to  check  the
       validity of an entered data string whenever the user attempt to leave a
       field.  The (FIELD *) argument is passed in so the validation predicate
       can  see	 the  field's  buffer,	sizes and other attributes; the second
       argument is an argument-block structure, about which more below.

       You also supply new_fieldtype with char_check, a function  to  validate
       input  characters  as they are entered; it will be passed the character
       to be checked and a pointer to an argument-block structure.

       The function free_fieldtype frees the space allocated for a given vali‐
       dation type.

       The  function  set_fieldtype  associates three storage-management func‐
       tions with a field type.	 The mak_arg function is automatically applied
       to the list of arguments you give set_field_type when attaching valida‐
       tion to a field; its job is to bundle these into an allocated argument-
       block  object  which can later be passed to validation predicated.  The
       other two hook arguments should copy  and  free	argument-block	struc‐
       tures.  They will be used by the forms-driver code. You must supply the
       mak_arg function, the other two are optional, you may supply  NULL  for
       them.  In this case it is assumed, that mak_arg doesn't allocate memory
       but simply loads the argument into a single scalar value.

       The form driver requests	 REQ_NEXT_CHOICE  and  REQ_PREV_CHOICE	assume
       that  the  possible  values of a field form an ordered set, and provide
       the forms user with a way to move  through  the	set.   The  set_field‐
       type_choice  function  allows forms programmers to define successor and
       predecessor functions for the field type.   These  functions  take  the
       field pointer and an argument-block structure as arguments.

       The pointer-valued routines return NULL on error.

       The integer-valued routines return one of the following codes on error:

       E_OK The routine succeeded.

	    System error occurred (see errno).

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

	    The field is already connected to a form.

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

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

       All of the (char *) arguments of these  functions  should  actually  be
       (void  *).  The type has been left uncorrected for strict compatibility
       with System V.

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

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


List of man pages available for DigitalUNIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net