X-Git-Url: https://ncurses.scripts.mit.edu/?a=blobdiff_plain;f=Ada95%2Fhtml%2Fman%2Fform_fieldtype.3x.html;fp=Ada95%2Fhtml%2Fman%2Fform_fieldtype.3x.html;h=f70a9400095efae69c092863d070dc288c1311d9;hb=0eb88fc5281804773e2a0c7a488a4452463535ce;hp=0000000000000000000000000000000000000000;hpb=661078ddbde3ce0f3b06e95642fbb9b5fef7dca1;p=ncurses.git diff --git a/Ada95/html/man/form_fieldtype.3x.html b/Ada95/html/man/form_fieldtype.3x.html new file mode 100644 index 00000000..f70a9400 --- /dev/null +++ b/Ada95/html/man/form_fieldtype.3x.html @@ -0,0 +1,124 @@ + +
++ form_fieldtype - define validation-field types + + ++
+ #include++ FIELDTYPE *new_fieldtype( + bool (* const field_check)(FIELD *, const void *), + bool (* const char_check)(int, const void *)); + int free_fieldtype(FIELDTYPE *fieldtype); + int set_fieldtype_arg( + FIELDTYPE *fieldtype, + void *(* const make_arg)(va_list *), + void *(* const copy_arg)(const void *), + void (* const free_arg)(void *)); + int set_fieldtype_choice( + FIELDTYPE *fieldtype + bool (* const next_choice)(FIELD *, const void *), + bool (* const prev_choice)(FIELD *, const void *)); + FIELDTYPE *link_fieldtype(FIELDTYPE *type1, + FIELDTYPE *type2); + + +
+ The function new_fieldtype creates a new field type usable + for data validation. You supply it with field_check, a + predicate to check the validity of an entered data string + whenever the user attempt to leave a field. The (FIELD *) + argument is passed in so the validation predicate can see + the field's buffer, sizes and other attributes; the second + argument is an argument-block structure, about which more + below. + + You also supply new_fieldtype with char_check, a function + to validate input characters as they are entered; it will + be passed the character to be checked and a pointer to an + argument-block structure. + + The function free_fieldtype frees the space allocated for + a given validation type. + + The function set_fieldtype associates three storage-man- + agement functions with a field type. The mak_arg function + is automatically applied to the list of arguments you give + set_field_type when attaching validation to a field; its + job is to bundle these into an allocated argument-block + object which can later be passed to validation predicated. + The other two hook arguments should copy and free argu- + ment-block structures. They will be used by the forms- + driver code. You must supply the mak_arg function, the + other two are optional, you may supply NULL for them. In + this case it is assumed, that mak_arg doesn't allocate + memory but simply loads the argument into a single scalar + value. + + form an ordered set, and provide the forms user with a way + to move through the set. The set_fieldtype_choice func- + tion allows forms programmers to define successor and pre- + decessor functions for the field type. These functions + take the field pointer and an argument-block structure as + arguments. + + ++
+ The pointer-valued routines return NULL on error. + + The integer-valued routines return one of the following + codes on error: + + E_OK The routine succeeded. + + E_SYSTEM_ERROR + System error occurred (see errno). + + E_BAD_ARGUMENT + Routine detected an incorrect or out-of-range argu- + ment. + + E_CONNECTED + The field is already connected to a form. + + ++
+ curses(3X), form(3X). + + ++
+ The header file+automatically includes the header + file . + + All of the (char *) arguments of these functions should + actually be (void *). The type has been left uncorrected + for strict compatibility with System V. + + +
+ These routines emulate the System V forms library. They + were not supported on Version 7 or BSD versions. + + ++
+ Juergen Pfeifer. Manual pages and adaptation for new + curses by Eric S. Raymond. + + + + + + + + + ++ +