home *** CD-ROM | disk | FTP | other *** search
- *****************************************************************
- FUNCTION SIGNON(app_name1, app_name2, dev_name1, dev_name2, hold)
- *****************************************************************
-
- * Draws imploding/exploding application "sign-on" screen
-
- * Copyright(c) 1991 -- James Occhiogrosso
-
- #include "setcurs.ch"
-
- LOCAL top := 1, left := 1, bottom := 22, right := 78, ;
- keypress := 0, old_color := SETCOLOR(colstd), ;
- old_cursor := SETCURSOR(SC_NONE)
-
-
-
- IF PCOUNT() < 4
- RETURN NIL
- ENDIF
-
- * Set hold screen flag to false if undefined
- hold = IF(hold == NIL, .F., hold)
-
- CLEAR SCREEN
-
- DO WHILE keypress = 0
-
- SETCOLOR(colbarlo)
-
- * Display application name
- @ 8, 15 SAY PADC(IF(app_name1 != NIL, app_name1, ''), 50)
- @ 9, 15 SAY PADC(IF(app_name2 != NIL, app_name2, ''), 50)
-
- SETCOLOR(colstd)
- * Display the innermost boxed area
- @ 10, 17 TO 15, 62
-
- * Display developers name
- @ 11, 18 SAY PADC(IF(dev_name1 != NIL, dev_name1, ''), 44)
- @ 12, 18 SAY PADC(IF(dev_name2 != NIL, dev_name2, ''), 44)
-
- * Display copyright notice
- @ 13, 17 SAY '├────────────────────────────────────────────┤'
- @ 14, 20 SAY 'Copyright (c) 1991 ─ All rights Reserved'
-
- * Change colors
- SETCOLOR(colbarlo)
-
- * Draw double-line boxes inward
- DO WHILE top < 8
- @ top,left TO bottom,right DOUBLE
- top++
- bottom--
- left = left + 2
- right = right - 2
- ENDDO
-
- * Wait for 1 second
- PAUSE(1)
-
- * Reset row and column
- top = 7 && top = 7
- left = 14 && left = 14
- bottom = 16 && bottom = 16
- right = 65 && right = 65
-
- * Draw double-line boxes outward, overlaying original
- * lines at top and bottom of screen
-
- DO WHILE top > 0 .AND. right <= 79
- @ top, left TO bottom, right DOUBLE
- SETCOLOR(colbarhi)
- top--
- bottom++
- left = left - 2
- right = right + 2
- ENDDO
-
- * Check "hold" flag. If true, clear screen and redisplay
- * signon message every 2 seconds or until a key is pressed
-
- IF hold
- * Put message on screen, and wait for a key
- SETCOLOR(colstd)
- CENTERON(24, hitanykey)
- keypress = INKEY(2)
-
- IF keypress = 0
- * Wait 2 seconds before looping
- CLEAR SCREEN
- PAUSE(2)
- ENDIF
-
- ELSE
- * No hold, so simulate key closure to display
- keypress = 1
- PAUSE(2)
- ENDIF
-
- ENDDO
-
- * Restore entry conditions and return
-
- SETCOLOR(old_color)
- SETCURSOR(old_cursor)
- RETURN NIL
-
-