diff options
Diffstat (limited to 'ncurses-5.9/doc/html/man/form_field_validation.3x.html')
-rw-r--r-- | ncurses-5.9/doc/html/man/form_field_validation.3x.html | 195 |
1 files changed, 195 insertions, 0 deletions
diff --git a/ncurses-5.9/doc/html/man/form_field_validation.3x.html b/ncurses-5.9/doc/html/man/form_field_validation.3x.html new file mode 100644 index 0000000..e810402 --- /dev/null +++ b/ncurses-5.9/doc/html/man/form_field_validation.3x.html @@ -0,0 +1,195 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!-- + **************************************************************************** + * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * + * * + * Permission is hereby granted, free of charge, to any person obtaining a * + * copy of this software and associated documentation files (the * + * "Software"), to deal in the Software without restriction, including * + * without limitation the rights to use, copy, modify, merge, publish, * + * distribute, distribute with modifications, sublicense, and/or sell * + * copies of the Software, and to permit persons to whom the Software is * + * furnished to do so, subject to the following conditions: * + * * + * The above copyright notice and this permission notice shall be included * + * in all copies or substantial portions of the Software. * + * * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * + * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * + * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * + * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * + * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * + * * + * Except as contained in this notice, the name(s) of the above copyright * + * holders shall not be used in advertising or otherwise to promote the * + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** + * @Id: form_field_validation.3x,v 1.20 2010/12/04 18:38:55 tom Exp @ +--> +<HTML> +<HEAD> +<TITLE>form_field_validation 3x</TITLE> +<link rev=made href="mailto:bug-ncurses@gnu.org"> +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> +</HEAD> +<BODY> +<H1>form_field_validation 3x</H1> +<HR> +<PRE> +<!-- Manpage converted by man2html 3.0.1 --> +<STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG> <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG> + + + + +</PRE> +<H2>NAME</H2><PRE> + <STRONG>form_field_validation</STRONG> - data type validation for fields + + +</PRE> +<H2>SYNOPSIS</H2><PRE> + <STRONG>#include</STRONG> <STRONG><form.h></STRONG> + 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; + + +</PRE> +<H2>DESCRIPTION</H2><PRE> + The function <STRONG>set_field_type</STRONG> declares a data type for a + given form field. This is the type checked by validation + functions. The predefined types are as follows: + + TYPE_ALNUM + Alphanumeric data. Requires a third <STRONG>int</STRONG> argument, a + minimum field width. + + TYPE_ALPHA + Character data. Requires a third <STRONG>int</STRONG> argument, a + minimum field width. + + TYPE_ENUM + Accept one of a specified set of strings. Requires a + third <STRONG>(char</STRONG> <STRONG>**)</STRONG> argument pointing to a string list; a + fourth <STRONG>int</STRONG> flag argument to enable case-sensitivity; + and a fifth <STRONG>int</STRONG> 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 copied. So you may use + a list that lives in automatic variables on the + stack. + + TYPE_INTEGER + Integer data, parsable to an integer by <STRONG>atoi(3)</STRONG>. + Requires a third <STRONG>int</STRONG> argument controlling the preci- + sion, a fourth <STRONG>long</STRONG> argument constraining minimum + value, and a fifth <STRONG>long</STRONG> 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 <STRONG>printf</STRONG> + format specification ".*ld", where the '*' is + replaced by the precision argument. For details of + the precision handling see <STRONG>printf's</STRONG> man-page. + + TYPE_NUMERIC + Numeric data (may have a decimal-point part). + Requires a third <STRONG>int</STRONG> argument controlling the preci- + sion, a fourth <STRONG>double</STRONG> argument constraining minimum + value, and a fifth <STRONG>double</STRONG> 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 <STRONG>printf</STRONG> format specification ".*f", + where the '*' is replaced by the precision argument. + For details of the precision handling see <STRONG>printf's</STRONG> + man-page. + + TYPE_REGEXP + Regular expression data. Requires a regular expres- + sion <STRONG>(char</STRONG> <STRONG>*)</STRONG> third argument; the data is valid if + the regular expression matches it. Regular expres- + sions are in the format of <STRONG>regcomp</STRONG> and <STRONG>regexec</STRONG>. + 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 + are numbers between 0 and 255. Trailing blanks in the + 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 + implementations. + + It is possible to set up new programmer-defined field + types. See the <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG> manual page. + + +</PRE> +<H2>RETURN VALUE</H2><PRE> + The functions <STRONG>field_type</STRONG> and <STRONG>field_arg</STRONG> return <STRONG>NULL</STRONG> on + error. The function <STRONG>set_field_type</STRONG> returns one of the fol- + lowing: + + <STRONG>E_OK</STRONG> The routine succeeded. + + <STRONG>E_SYSTEM_ERROR</STRONG> + System error occurred (see <STRONG>errno</STRONG>). + + +</PRE> +<H2>SEE ALSO</H2><PRE> + <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>, <STRONG><A HREF="form_variables.3x.html">form_variables(3x)</A></STRONG>. + + +</PRE> +<H2>NOTES</H2><PRE> + The header file <STRONG><form.h></STRONG> automatically includes the header + file <STRONG><curses.h></STRONG>. + + +</PRE> +<H2>PORTABILITY</H2><PRE> + These routines emulate the System V forms library. They + were not supported on Version 7 or BSD versions. + + +</PRE> +<H2>AUTHORS</H2><PRE> + Juergen Pfeifer. Manual pages and adaptation for new + curses by Eric S. Raymond. + + + + <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG> +</PRE> +<HR> +<ADDRESS> +Man(1) output converted with +<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a> +</ADDRESS> +</BODY> +</HTML> |