NAME
form.h - include file for user edit routine
SYNOPSIS
#include <cbase/form.h>
DESCRIPTION
This include file contains symbolic definitions for the values passed to a user edit routine used with form(C-3). This value is passed as the first argument as explained in C/Base Reference Manual Chapter 3, Using Form. The include file also defines the functions that can be called from within form(C-3).
CONTENTS
/*
* @(#)form.h 11.4
*/
#ifndef _FORM_
#define _FORM_
#include <cbase/dirio.h>
/*
* The following values are passed by form to the user_edit function
* in the first parameter "edit_type"
*/
#define U_INITIALIZE 1 /* perform initialization */
#define U_BEGINFORM 2 /* start another form */
#define U_NEXTFORM 3 /* go to next form in sequence */
#define U_PREVFORM 4 /* go to previous form in sequence */
#define U_FIRSTFORM 5 /* go to first form in sequence */
#define U_QUERY 6 /* start QUERY mode */
#define U_FIND 7 /* start a FIND */
#define U_MATCH 8 /* found a match during FIND */
#define U_UPDATE 9 /* start an UPDATE */
#define U_ADD 10 /* start an ADD */
#define U_DELETE 11 /* DELETE current record */
#define U_PREPARE 12 /* STORE pushed; prepare record */
#define U_STORED 13 /* ADDed or UPDATEd record stored */
#define U_FILEFULL 14 /* STORE not successful */
#define U_EXIT 15 /* exit from form */
#define U_USEREDIT 16 /* perform edit on data field exit */
#define U_CANCEL 17 /* CANCEL pressed */
#define U_CHANGED 18 /* field value has changed */
#define U_DIE 19 /* fatal error, e.g. SIGHUP */
#define U_ENTERFIELD 20 /* peform edit on data field entry */
#define U_FKEY 21 /* unknown function key */
#define U_BEGINVAL 22 /* start validation form */
#define U_ENDVAL 23 /* end validation form */
#define U_BADUPDATE 24 /* Update failed */
#define U_BADDELETE 25 /* Delete failed */
#define U_NOTVALID 26
#define U_REFRESH 27
/*
* functions performed by form
* these are key codes for form function keys, passed to the user edit routine
* in the exit_char parameter, or passed to the snextkey() form function
*/
#define F_QUERY 1000 /* begin QUERY from FIRST */
#define F_QUERYFIRST 1000 /* ... same as above ... */
#define F_FIND 1001 /* perform FIND NEXT */
#define F_FINDNEXT 1001 /* ... same as above ... */
#define F_UPDATE 1002 /* begin UPDATE */
#define F_ADD 1003 /* begin ADD */
#define F_STORE 1004 /* STORE ADDed or UPDATEd record */
#define F_NEXTFORM 1005 /* go to next form */
#define F_PREVFORM 1006 /* go to previous form */
#define F_FIRSTFORM 1007 /* go to first form */
#define F_EXIT 1008 /* EXIT from form */
#define F_DELETE 1009 /* DELETE current record */
#define F_CLEAR 1010 /* CLEAR all fields on form */
#define F_REFRESH 1011 /* repaint current form */
#define F_HOME 1012 /* position to first field */
#define F_CANCEL 1013 /* cancel ADD or UPDATE */
#define F_HELP 1014 /* display on-line help information */
#define F_NEXTUPDATE 1015 /* store record, find next, update */
#define F_VALFORM 1016 /* display validation form */
#define F_VALEXIT 1017 /* exit from validation form */
#define F_QUERYLAST 1018 /* begin QUERY from LAST */
#define F_FINDPREV 1019 /* perform FIND PREVIOUS */
#define F_LOWEST F_QUERY /* lowest function value */
/*
* smode() returns one of the following constants that describes
* the current form mode. All but F_NOMODE are defined above;
* they are the same as the corresponding form function key code.
*
* F_QUERY query mode (defined above)
* F_FIND find mode (defined above)
* F_ADD add mode (defined above)
* F_UPDATE update mode (defined above)
*/
#define F_NOMODE 0 /* not in one of the above modes */
/* functions defined inside form */
/* these can be called by the user_edit function */
char *sread();
int swrite();
int snextfld();
char *sformname();
int sformno();
int sputerr();
char *sdatafile();
int srefresh();
rno_t srecno();
int smode();
int snextkey();
char *seditname();
char *sfldname();
#endif /* _FORM_ */