<HTML>
<BODY>
<PRE>
- <STRONG>form_field_validation</STRONG> - data type validation for fields
+<!-- Manpage converted by man2html 3.0.1 -->
+
+</PRE>
+<H2>NAME</H2><PRE>
+ <B>form_field_validation</B> - data type validation for fields
</PRE>
<H2>SYNOPSIS</H2><PRE>
- <STRONG>#include</STRONG> <STRONG><form.h></STRONG>
+ <B>#include</B> <B><form.h></B>
int set_field_type(FIELD *field, FIELDTYPE *type, ...);
FIELDTYPE *field_type(const FIELD *field);
void *field_arg(const FIELD *field);
</PRE>
<H2>DESCRIPTION</H2><PRE>
- The function <STRONG>set_field_type</STRONG> declares a data type for a
+ The function <B>set_field_type</B> declares a data type for a
given form field. This is the type checked by validation
functions. The types are as follows:
TYPE_ALNUM
- Alphanumeric data. Requires a third <STRONG>int</STRONG> argument, a
+ Alphanumeric data. Requires a third <B>int</B> argument, a
minimum field width.
TYPE_ALPHA
- Character data. Requires a third <STRONG>int</STRONG> argument, a
+ Character data. Requires a third <B>int</B> 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
+ third <B>(char</B> <B>**)</B> argument pointing to a string list; a
+ fourth <B>int</B> flag argument to enable case-sensitivity;
+ and a fifth <B>int</B> 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
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.
+ Integer data, parsable to an integer by <B>atoi(3)</B>.
+ Requires a third <B>int</B> argument controlling the preci-
+ sion, a fourth <B>long</B> argument constraining minimum
+ value, and a fifth <B>long</B> 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 <STRONG>printf</STRONG>
+ field buffer is formatted according to the <B>printf</B>
format specification ".*ld", where the '*' is
replaced by the precision argument. For details of
- the precision handling see <STRONG>printf's</STRONG> man-page.
+ the precision handling see <B>printf's</B> 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.
+ Requires a third <B>int</B> argument controlling the preci-
+ sion, a fourth <B>double</B> argument constraining minimum
+ value, and a fifth <B>double</B> 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
- <STRONG>printf</STRONG> format specification ".*f", where the '*' is
+ <B>printf</B> format specification ".*f", where the '*' is
replaced by the precision argument. For details of
- the precision handling see <STRONG>printf's</STRONG> man-page.
+ the precision handling see <B>printf's</B> man-page.
TYPE_REGEXP
Regular expression data. Requires a regular expres-
- sion <STRONG>(char</STRONG> <STRONG>*)</STRONG> third argument; the data is valid if
+ sion <B>(char</B> <B>*)</B> third argument; the data is valid if
the regular expression matches it. Regular expres-
- sions are in the format of <STRONG><A HREF="regcomp.3x.html">regcomp(3X)</A></STRONG> and
- <STRONG><A HREF="regexec.3x.html">regexec(3X)</A></STRONG>. Please notice that the regular expres-
+ sions are in the format of <B><A HREF="regcomp.3x.html">regcomp(3x)</A></B> and
+ <B><A HREF="regexec.3x.html">regexec(3x)</A></B>. 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
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.
+ types. See the <B><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></B> 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-
+ The functions <B>field_type</B> and <B>field_arg</B> return <B>NULL</B> on
+ error. The function <B>set_field_type</B> returns one of the fol-
lowing:
- <STRONG>E_OK</STRONG> The routine succeeded.
+ <B>E_OK</B> The routine succeeded.
- <STRONG>E_SYSTEM_ERROR</STRONG>
- System error occurred (see <STRONG>errno</STRONG>).
+ <B>E_SYSTEM_ERROR</B>
+ System error occurred (see <B>errno</B>).
</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>.
+ <B><A HREF="ncurses.3x.html">curses(3x)</A></B>, <B><A HREF="form.3x.html">form(3x)</A></B>.
</PRE>
<H2>NOTES</H2><PRE>
- The header file <STRONG><form.h></STRONG> automatically includes the header
- file <STRONG><curses.h></STRONG>.
+ The header file <B><form.h></B> automatically includes the header
+ file <B><curses.h></B>.
</PRE>
<H2>PORTABILITY</H2><PRE>
+ These routines emulate the System V forms library. They
+ were not supported on Version 7 or BSD versions.
</PRE>
+
</PRE>
+<HR>
+<ADDRESS>
+Man(1) output converted with
+<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
+</ADDRESS>
</BODY>
</HTML>