*- procedures & code to support navigation
*- of migrated DB4 screen files. This code
*- is copied to the PROCCODE memo field of 
*- the SCX file.
*-
*- (c) Microsoft Corporation 1995

#DEFINE C_BEGFILEMSG_LOC	[Beginning of file.]
#DEFINE C_ENDFILEMSG_LOC	[End of file.]
#DEFINE C_ALERTTITL_LOC		"Add Records"
#DEFINE C_ASKADDMSG_LOC		"Do you want to add a new record to the table?"
#DEFINE C_BUTTONP			"@*HT \<Yes;\<No"

POP KEY

PROCEDURE dopgup
IF	BOF()
	GO TOP
ELSE
	SKIP -1
	IF BOF()
		WAIT WINDOW	C_BEGFILEMSG NOWAIT
		GO TOP
	ENDIF
ENDIF
SHOW GETS

PROCEDURE dopgdn
IF EOF() OR RECC() = 0
	DO migadd
ELSE
	SKIP
	IF EOF()
		DO migadd
	ENDIF
ENDIF
SHOW GETS
RETURN

PROCEDURE ctlpgup
*- handle Ctl+PGUP
GO TOP
SHOW GETS
RETURN

PROCEDURE ctlpgdn
*- handle ctl+PGDN
IF EOF() OR RECC() = 0
	DO migadd
ELSE
	SKIP
	IF EOF()
		DO migadd
	ELSE
		GO BOTTOM
	ENDIF
ENDIF
SHOW GETS
RETURN


PROCEDURE migadd

#REGION 0
REGIONAL m.currarea, m.talkstat, m.compstat

IF SET("TALK") = "ON"
	SET TALK OFF
	m.talkstat = "ON"
ELSE
	m.talkstat = "OFF"
ENDIF
m.compstat = SET("COMPATIBLE")
SET COMPATIBLE FOXPLUS

m.rborder = SET("READBORDER")
SET READBORDER ON

*- clear ON KEY LABELs that were set up
PUSH KEY
ON KEY LABEL PGUP
ON KEY LABEL PGDN
ON KEY LABEL CTRL+PGUP
ON KEY LABEL CTRL+PGDN

**               Windows Window definitions                

DO CASE
	CASE _WINDOWS OR _MAC
		IF NOT WEXIST("_qn10my1k9")
			DEFINE WINDOW _qn10my1k9 ;
				AT  5.154, 38.200  ;
				SIZE 9.769,59.800 ;
				TITLE C_ALERTTITL_LOC ;
				FONT "MS Sans Serif", 8 ;
				FLOAT ;
				NOCLOSE ;
				NOMINIMIZE ;
				DOUBLE ;
				COLOR SCHEME 5
			MOVE WINDOW _qn10my1k9 CENTER
		ENDIF


*       *********************************************************
*       *                                                         
*       *              ADDREC/Windows Screen Layout               
*       *                                                         
*       *********************************************************
*

	#REGION 1
	IF WVISIBLE("_qn10my1k9")
		ACTIVATE WINDOW _qn10my1k9 SAME
	ELSE
		ACTIVATE WINDOW _qn10my1k9 NOSHOW
	ENDIF
	@ 6.462,9.600 GET m.iaddrec ;
		PICTURE C_BUTTONP ;
		SIZE 1.769,11.667,10.000 ;
		DEFAULT 1 ;
		FONT "MS Sans Serif", 8 ;
		STYLE "B" ;
		VALID addrecv()
	@ 1.769,9.600 SAY C_ASKADDMSG_LOC  ;
		SIZE 2.000,28.250, 0.000 ;
		FONT "MS Sans Serif", 10 ;
		STYLE "BT"

	IF NOT WVISIBLE("_qn10my1k9")
		ACTIVATE WINDOW _qn10my1k9
	ENDIF
	READ CYCLE MODAL

	RELEASE WINDOW _qn10my1k9
	
CASE _DOS OR _UNIX
	
	IF NOT WEXIST("_qnd0yoc65")
		DEFINE WINDOW _qnd0yoc65 ;
			FROM INT((SROW()-10)/2),INT((SCOL()-59)/2) ;
			TO INT((SROW()-10)/2)+9,INT((SCOL()-59)/2)+58 ;
			TITLE "Add Records" ;
			FLOAT ;
			NOCLOSE ;
			SHADOW ;
			NOMINIMIZE ;
			DOUBLE ;
			COLOR SCHEME 5
	ENDIF
	
	
	*       ķ
	*                                                                
	*                      ADDREC/MS-DOS Screen Layout               
	*                                                                
	*       Ľ
	*
	
	#REGION 1
	IF WVISIBLE("_qnd0yoc65")
		ACTIVATE WINDOW _qnd0yoc65 SAME
	ELSE
		ACTIVATE WINDOW _qnd0yoc65 NOSHOW
	ENDIF
	@ 6,12 GET m.iaddrec ;
		PICTURE "@*HT \<Yes;\<No" ;
		SIZE 1,11,10 ;
		DEFAULT 1 ;
		VALID addrecv()
	@ 2,5 SAY "Do you want to add a new record to the table?" ;
		SIZE 1,45, 0
	
	IF NOT WVISIBLE("_qnd0yoc65")
		ACTIVATE WINDOW _qnd0yoc65
	ENDIF
	
	READ CYCLE MODAL
	
	RELEASE WINDOW _qnd0yoc65
ENDCASE

#REGION 0

IF EOF()
	GO BOTTOM
ENDIF

*- restore ON KEY LABELS
POP KEY

SET READBORDER &rborder

IF m.talkstat = "ON"
	SET TALK ON
ENDIF
IF m.compstat = "ON"
	SET COMPATIBLE ON
ENDIF


*       *********************************************************
*       *                                                         
*       * _QN10MY496           m.iaddrec VALID                    
*       *                                                         
*       * Function Origin:                                        
*       *                                                         
*       * From Platform:       Windows                            
*       * From Screen:         ADDREC,     Record Number:    2    
*       * Variable:            m.iaddrec                          
*       * Called By:           VALID Clause                       
*       * Object Type:         Push Button                        
*       * Snippet Number:      1                                  
*       *                                                         
*       *********************************************************
*
FUNCTION addrecv     &&  m.iaddrec VALID
#REGION 1
IF m.iaddrec = 1
	IF !EMPTY(ALIAS())
		APPEND BLANK
	ENDIF
ENDIF
GO BOTTOM
RETURN
