--form_field_validation(3x)form_field_validation(3x)

+## NAME

-form_field_validation- data type validation for fields## SYNOPSIS

+## SYNOPSIS

-#include<form.h>int set_field_type(FIELD *field, FIELDTYPE *type, ...); FIELDTYPE *field_type(const FIELD *field); @@ -67,7 +68,7 @@## DESCRIPTION

+## DESCRIPTION

The function-set_field_typedeclares a data type for a given form field. This is the type checked by validation functions. The predefined types are as follows: @@ -88,70 +89,69 @@ partial match must be a unique one (if this flag is off, a prefix matches the first of any set of more than one list elements with that prefix). Please - notice that the string list is not copied, only a - reference to it is stored in the field. So you should - avoid using a list that lives in automatic variables - on the stack. + notice that the string list is copied. So you may use + a list that lives in automatic variables on the + stack. TYPE_INTEGER - Integer data, parsable to an integer byatoi(3). - Requires a thirdintargument controlling the preci- - sion, a fourthlongargument constraining minimum - value, and a fifthlongconstraining maximum value. - If the maximum value is less than or equal to the + Integer data, parsable to an integer byatoi(3). + Requires a thirdintargument controlling the preci- + sion, a fourthlongargument constraining minimum + value, and a fifthlongconstraining maximum value. + If the maximum value is less than or equal to the minimum value, the range is simply ignored. On return the field buffer is formatted according to theprintf- format specification ".*ld", where the '*' is - replaced by the precision argument. For details of + format specification ".*ld", where the '*' is + replaced by the precision argument. For details of the precision handling seeprintf'sman-page. TYPE_NUMERIC - Numeric data (may have a decimal-point part). - Requires a thirdintargument controlling the preci- - sion, a fourthdoubleargument constraining minimum + Numeric data (may have a decimal-point part). + Requires a thirdintargument controlling the preci- + sion, a fourthdoubleargument constraining minimum value, and a fifthdoubleconstraining maximum value. - If your system supports locales, the decimal point - character to be used must be the one specified by - your locale. If the maximum value is less than or - equal to the minimum value, the range is simply - ignored. On return the field buffer is formatted - according to theprintfformat specification ".*f", - where the '*' is replaced by the precision argument. - For details of the precision handling seeprintf's+ If your system supports locales, the decimal point + character to be used must be the one specified by + your locale. If the maximum value is less than or + equal to the minimum value, the range is simply + ignored. On return the field buffer is formatted + according to theprintfformat specification ".*f", + where the '*' is replaced by the precision argument. + For details of the precision handling seeprintf'sman-page. TYPE_REGEXP - Regular expression data. Requires a regular expres- - sion(char*)third argument; the data is valid if - the regular expression matches it. Regular expres- - sions are in the format ofregcomp(3x)and -regexec(3x). Please notice that the regular expres- - sion must match the whole field. If you have for - example an eight character wide field, a regular - expression "^[0-9]*$" always means that you have to - fill all eight positions with digits. If you want to - allow fewer digits, you may use for example "^[0-9]* - *$" which is good for trailing spaces (up to an empty - field), or "^ *[0-9]* *$" which is good for leading - and trailing spaces around the digits. + Regular expression data. Requires a regular expres- + sion(char*)third argument; the data is valid if + the regular expression matches it. Regular expres- + sions are in the format ofregcompandregexec. + Please notice that the regular expression must match + the whole field. If you have for example an eight + character wide field, a regular expression "^[0-9]*$" + always means that you have to fill all eight posi- + tions with digits. If you want to allow fewer digits, + you may use for example "^[0-9]* *$" which is good + for trailing spaces (up to an empty field), or "^ + *[0-9]* *$" which is good for leading and trailing + spaces around the digits. TYPE_IPV4 An Internet Protocol Version 4 address. This requires - no additional argument. It is checked whether or not - the buffer has the form a.b.c.d, where a,b,c and d + no additional argument. It is checked whether or not + the buffer has the form a.b.c.d, where a,b,c and d are numbers between 0 and 255. Trailing blanks in the - buffer are ignored. The address itself is not vali- + buffer are ignored. The address itself is not vali- dated. Please note that this is an ncurses extension. - This field type may not be available in other curses + This field type may not be available in other curses implementations. - It is possible to set up new programmer-defined field + It is possible to set up new programmer-defined field types. See theform_fieldtype(3x)manual page.## RETURN VALUE

- The functionsfield_typeandfield_argreturnNULLon +## RETURN VALUE

+ The functions-field_typeandfield_argreturnNULLon error. The functionset_field_typereturns one of the fol- lowing: @@ -162,35 +162,42 @@## SEE ALSO

-curses(3x),form(3x). +## SEE ALSO

+-curses(3x),form(3x),form_variables(3x).## NOTES

+## NOTES

The header file-<form.h>automatically includes the header file<curses.h>.## PORTABILITY

- These routines emulate the System V forms library. They +## 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 +## AUTHORS

+ Juergen Pfeifer. Manual pages and adaptation for new curses by Eric S. Raymond.-form_field_validation(3x)

- -Man(1) output converted with -man2html - +