home *** CD-ROM | disk | FTP | other *** search
- #include <stdio.h>
- #include "inout.h"
- /*----------------------- inout ------------------------------*/
- /*DESCRIPTION: Allows entry, editing, displaying, and clearing*/
- /* of a field of data with specified length, position, */
- /* color attributes, and data types. Handles function */
- /* keys, tab keys, and arrow keys. */
- /* */
- /*INPUT:
- --------VARIABLE---------------------DESCRIPTION--------------
- X ;X COORDINATE TO START ENTERING INFORMATION
- Y ;COLUMN TO START ENTERING INFORMATION
- len ;MAX LENGTH OF DATA TO BE ENTERED
- FG ;FOREGROUND COLOR
- BG ;BACKGROUND COLOR
- Data ;STRING THE ENTRY IS STORED IN
-
- Mode ;0 = ENTER
- ;1 = EDIT WITH CURSOR AT THE END OF THE DATA FIELD
- ;2 = EDIT WITH CURSOR AT THE BEGINNING OF THE FIELD
- ;3 = DISPLAY THE DATA FIELD
- ;4 = CLEAR THE DATA FIELD
-
- Type ;0 = ALPHANUMERIC (DEF)
- ;1 = NUMERIC
- ;2 = PHONE # (999)-999-9999
- ;3 = SOCIAL SECURITY NUMBER 999-99-9999
- ;4 = DATE - MM/DD/YY
- ;5 = PASSWORD
- ;6 = UPPER CASE AN
- ;7 = INTEGER
- ;8 = REAL
- ;9 = A SYSTEM GENERATED NUMBER
-
- show ;0 = DOTS (DEF)
- ;1 = BLANKS
- ;2 = UNDERSCORE
- ;3 = NO SHOW
-
- vkey ;CHAR 1 -- F = ALLOW FUNCTION KEY USE
- ;CHAR 2 -- A = ALLOW UP AND DOWN ARROW USE
- ;CHAR 3 -- T = ALLOW TAB AND BACKTAB EXIT FROM INOUT
-
- ret INPUT
- ;0 = NON-DESTRUCTIVE ENTER KEY IN EDIT MODE (DEF)
- ;1 = DESTRUCTIVE ENTER KEY IN EDIT MODE
- OUTPUT
- ;0 = FIELD FILLED
- ;1-12 = FUNCTION KEY PRESSED
- ;13 = ENTER KEY PRESSED
- ;14 = ESC KEY
- ;15 = UP ARROW
- ;16 = DOWN ARROW
- ;17 = TAB
- ;18 = BACKTAB
- USES: strspc, strnchr, OnCursor, GetCursor, SetCursor, rtrim, rtrimlen,
- CheckNum
- ---------------------------------------------------------------*/
- inout (int X, int Y, int len, int FG, int BG, void *Data, int Mode,
- int Type, int show, char *vkey, int *ret)
-