X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Fform_field_validation.3x.html;h=e810402edcf6eae2656086937f77ccd98e3e2a4e;hp=34ae0dc78902eb62728b9c41bf2ae725c8a56b53;hb=f86cbeb5f9bd96ab041d34039c35749a14965039;hpb=b1f61d9f3aa244512045a6b02e759825d7049d34 diff --git a/doc/html/man/form_field_validation.3x.html b/doc/html/man/form_field_validation.3x.html index 34ae0dc7..e810402e 100644 --- a/doc/html/man/form_field_validation.3x.html +++ b/doc/html/man/form_field_validation.3x.html @@ -1,88 +1,138 @@ + + +
++form_field_validation(3x) form_field_validation(3x) + + +
- form_field_validation - data type validation for fields + form_field_validation - data type validation for fields
- #include <form.h> + #include <form.h> int set_field_type(FIELD *field, FIELDTYPE *type, ...); FIELDTYPE *field_type(const FIELD *field); void *field_arg(const FIELD *field); + FIELDTYPE *TYPE_ALNUM; + FIELDTYPE *TYPE_ALPHA; + FIELDTYPE *TYPE_ENUM; + FIELDTYPE *TYPE_INTEGER; + FIELDTYPE *TYPE_NUMERIC; + FIELDTYPE *TYPE_REGEXP; + FIELDTYPE *TYPE_IPV4; +
- The function set_field_type declares a data type for a + The function set_field_type declares a data type for a given form field. This is the type checked by validation - functions. The types are as follows: + functions. The predefined types are as follows: TYPE_ALNUM - Alphanumeric data. Requires a third int argument, a + Alphanumeric data. Requires a third int argument, a minimum field width. TYPE_ALPHA - Character data. Requires a third int argument, a + Character data. Requires a third int argument, a minimum field width. TYPE_ENUM Accept one of a specified set of strings. Requires a - third (char **) argument pointing to a string list; a - fourth int flag argument to enable case-sensitivity; - and a fifth int flag argument specifying whether a + third (char **) argument pointing to a string list; a + fourth int flag argument to enable case-sensitivity; + and a fifth int flag argument specifying whether a 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 to use 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 by atoi(3). - Requires a third int argument controlling the preci- - sion, a fourth long argument constraining minimum - value, and a fifth long constraining maximum value. - If the maximum value is less or equal the minimum - value, the range is simply ignored. On return the - field buffer is formatted according to the printf - format specification ".*ld", where the '*' is - replaced by the precision argument. For details of - the precision handling see printf's man-page. + Integer data, parsable to an integer by atoi(3). + Requires a third int argument controlling the preci- + sion, a fourth long argument constraining minimum + value, and a fifth long constraining 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 the printf + format specification ".*ld", where the '*' is + replaced by the precision argument. For details of + the precision handling see printf's man-page. TYPE_NUMERIC - Numeric data (may have a decimal-point part). - Requires a third int argument controlling the preci- - sion, a fourth double argument constraining minimum - value, and a fifth double constraining maximum value. - If your system supports locale's, the decimal point - character to be used must be the one specified by - your locale. If the maximum value is less or equal - the minimum value, the range is simply ignored. On - return the field buffer is formatted according to the - printf format specification ".*f", where the '*' is - replaced by the precision argument. For details of - the precision handling see printf's man-page. + Numeric data (may have a decimal-point part). + Requires a third int argument controlling the preci- + sion, a fourth double argument constraining minimum + value, and a fifth double constraining 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 the printf format specification ".*f", + where the '*' is replaced by the precision argument. + For details of the precision handling see printf's + man-page. TYPE_REGEXP Regular expression data. Requires a regular expres- - sion (char *) third argument; the data is valid if + sion (char *) third argument; the data is valid if the regular expression matches it. Regular expres- - sions are in the format of regcomp(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. + sions are in the format of regcomp and regexec. + 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 @@ -94,31 +144,31 @@ This field type may not be available in other curses implementations. - It is possible to set up new programmer-defined field - types. See the form_fieldtype(3x) manual page. + It is possible to set up new programmer-defined field + types. See the form_fieldtype(3x) manual page.
- The functions field_type and field_arg return NULL on - error. The function set_field_type returns one of the fol- + The functions field_type and field_arg return NULL on + error. The function set_field_type returns one of the fol- lowing: - E_OK The routine succeeded. + E_OK The routine succeeded. - E_SYSTEM_ERROR - System error occurred (see errno). + E_SYSTEM_ERROR + System error occurred (see errno).
- curses(3x), form(3x). + curses(3x), form(3x), form_variables(3x).
- The header file <form.h> automatically includes the header - file <curses.h>. + The header file <form.h> automatically includes the header + file <curses.h>.@@ -134,52 +184,7 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + form_field_validation(3x)