free_fieldtype man page on MirBSD

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



form_fieldtype(3)   UNIX Programmer's Manual	form_fieldtype(3)

NAME
     form_fieldtype - define validation-field types

SYNOPSIS
     #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);

DESCRIPTION
     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 attempts 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 validation type.

     The function set_fieldtype_arg associates three storage-
     management functions with a field type. The make_arg func-
     tion is automatically applied to the list of arguments you
     give set_field_type when attaching validation 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 structures. They will be used by the forms-driver
     code. You must supply the make_arg function, the other two
     are optional, you may supply NULL for them. In this case it
     is assumed that make_arg does not allocate memory but simply
     loads the argument into a single scalar value.

MirOS BSD #10-current	Printed 18.8.2011			1

form_fieldtype(3)   UNIX Programmer's Manual	form_fieldtype(3)

     The function link_fieldtype creates a new field type from
     the two given types. They are connected by an logical 'OR'.

     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_fieldtype_choice function allows forms pro-
     grammers to define successor and predecessor functions for
     the field type. These functions take the field pointer and
     an argument-block structure as arguments.

RETURN VALUE
     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.

     E_SYSTEM_ERROR
	  System error occurred (see errno).

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

     E_CONNECTED
	  The field is already connected to a form.

SEE ALSO
     curses(3), form(3).

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

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

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.

MirOS BSD #10-current	Printed 18.8.2011			2

[top]

List of man pages available for MirBSD

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]
Tweet
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