FORM.H C-5

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_ */