ncurses 5.7 - patch 20100731
[ncurses.git] / doc / html / man / form_field_validation.3x.html
index 34ae0dc78902eb62728b9c41bf2ae725c8a56b53..06b002fc490808682229ce76ed86d0a1cd1e7036 100644 (file)
+<!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.18 2010/07/31 16:08:48 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>
-       <B>form_field_validation</B> - data type validation for fields
+       <STRONG>form_field_validation</STRONG> - data type validation for fields
 
 
 </PRE>
 <H2>SYNOPSIS</H2><PRE>
-       <B>#include</B> <B>&lt;form.h&gt;</B>
+       <STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</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  <B>set_field_type</B>  declares  a data type for a
+       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 types are as follows:
+       functions.  The predefined types are as follows:
 
        TYPE_ALNUM
-            Alphanumeric  data.  Requires a third <B>int</B> argument, a
+            Alphanumeric  data.  Requires a third <STRONG>int</STRONG> argument, a
             minimum field width.
 
        TYPE_ALPHA
-            Character data.  Requires a  third  <B>int</B>  argument,  a
+            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 <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
+            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  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 <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 <B>printf</B>
-            format  specification  ".*ld",  where  the   '*'   is
-            replaced  by  the precision argument.  For details of
-            the precision handling see <B>printf's</B> man-page.
+            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 <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
-            <B>printf</B>  format  specification ".*f", where the '*' is
-            replaced by the precision argument.  For  details  of
-            the precision handling see <B>printf's</B> man-page.
+            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 <B>(char</B> <B>*)</B> third argument; the data  is  valid  if
+            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   <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
-            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  <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
             This  field type may not be available in other curses
             implementations.
 
-            It is possible to set up new programmer-defined field
-            types.  See the <B><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></B> manual page.
+       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  <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-
+       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:
 
-       <B>E_OK</B> The routine succeeded.
+       <STRONG>E_OK</STRONG> The routine succeeded.
 
-       <B>E_SYSTEM_ERROR</B>
-            System error occurred (see <B>errno</B>).
+       <STRONG>E_SYSTEM_ERROR</STRONG>
+            System error occurred (see <STRONG>errno</STRONG>).
 
 
 </PRE>
 <H2>SEE ALSO</H2><PRE>
-       <B><A HREF="ncurses.3x.html">curses(3x)</A></B>, <B><A HREF="form.3x.html">form(3x)</A></B>.
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>.
 
 
 </PRE>
 <H2>NOTES</H2><PRE>
-       The header file <B>&lt;form.h&gt;</B> automatically includes the header
-       file <B>&lt;curses.h&gt;</B>.
+       The header file <STRONG>&lt;form.h&gt;</STRONG> automatically includes the header
+       file <STRONG>&lt;curses.h&gt;</STRONG>.
 
 
 </PRE>
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+                                              <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>
 </PRE>
 <HR>
 <ADDRESS>