home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / xbase / library / dbase / tc / tpcclock / tpcclock.prg < prev   
Text File  |  1990-11-22  |  5KB  |  168 lines

  1. * --- DEMO PROGRAM FOR TPCCLOCK ---
  2. SET COLOR TO RG+/N
  3. SET ESCA OFF
  4. SET TALK OFF
  5. SET ECHO OFF
  6. SET STAT OFF
  7. SET SCORE OFF
  8. LOAD TPCCLOCK
  9. LOAD SAVESCR
  10.  
  11. CHOICE    = 1
  12. ScreenLoc = '/@ 6,26'          && Say the clock at 10,26
  13. Format    = '/F1'              && Use 24 hour time
  14. OnOff     = 'O'                && Turn the CLOCK on
  15. LANGUAGE  = 'DABSE'            && USE "FOX" FOR FOXBASE
  16.  
  17. IF "FOX"$LANGUAGE
  18.    X         = SYS(2002)          && TURN THE CURSOR OFF
  19. ENDIF
  20.  
  21. CALL TPCCLOCK WITH ScreenLoc
  22. SET COLOR TO W+/B
  23. @ 5 ,10 SAY '┌───────────────────────────────┬─────────────────────────────┐'
  24. @ 6 ,10 SAY '│ CURRENT TIME:                 │                             │'
  25. @ 7 ,10 SAY '├───────────────────────────────┴─────────────────────────────┤'
  26. @ 8 ,10 SAY '│                                                             │'
  27. @ 9 ,10 SAY '│    This is a demo of TPCCLOCK.BIN.  TPCCLOCK allows the     │'
  28. @ 10,10 SAY '│ programmer to display an on screen constantly updated clock │'
  29. @ 11,10 SAY '│ without using a TSR program.  The time may be displayed in  │'
  30. @ 12,10 SAY '│ either 12 or 24 Hour formats.    <Press Esc to continue>    │'
  31. @ 13,10 SAY '│                                                             │'
  32. @ 14,10 SAY '╞══[ Lines of code used with TPCCLOCK.BIN so far ]════════════╡'
  33. @ 15,10 SAY '│ ScreenLoc = "/@ 6,26"           '+CHR(38)+CHR(38)+' Say the clock at 10,26   │'
  34. @ 16,10 SAY '│ Format    = "/F0"               '+CHR(38)+CHR(38)+' Use 24 hour time         │'
  35. @ 17,10 SAY '│ OnOff     = "O"                 '+CHR(38)+CHR(38)+' Turn the CLOCK on        │'
  36. @ 18,10 SAY '│ CALL TPCCLOCK WITH ScreenLoc                                │'
  37. @ 19,10 SAY '│ CALL TPCCLOCK WITH OnOff                                    │'
  38. @ 20,10 SAY '└─────────────────────────────────────────────────────────────┘'
  39. CALL TPCCLOCK WITH OnOff
  40. ON ERROR CALL TPCCLOCK WITH 'F'
  41.  
  42. DO WHILE CHOICE = 1 .OR. CHOICE = 2
  43.    @ 6,26 CLEAR TO 6,36
  44.    CALL TPCCLOCK WITH Format
  45.  
  46.    IF "FOX"$UPPER(LANGUAGE)
  47.       @ 6,44 PROMPT 'Military'
  48.       @ 6,54 PROMPT 'Standard'
  49.       MENU TO CHOICE
  50.    ELSE
  51.       @ 6,44 SAY '(1) Military'
  52.       @ 6,58 SAY '(2) Standard'
  53.       CHOICE=0
  54.       CLEAR TYPE
  55.       DO WHILE CHOICE=0
  56.          CHOICE=INKEY()
  57.       ENDDO
  58.       DO CASE
  59.       CASE CHOICE = 49
  60.          CHOICE=1
  61.       CASE CHOICE = 50
  62.          CHOICE=2
  63.       CASE CHOICE = 27
  64.       OTHERWISE
  65.          LOOP
  66.       ENDCASE
  67.    ENDIF
  68.  
  69.    DO CASE
  70.       CASE CHOICE = 1
  71.          Format    = '/F0'               && Use 24 hour time
  72.          SCROLL 15,11,19,70,1
  73.          @ 19,12 SAY 'Format    = "/F0"             '+CHR(38)+CHR(38)+' Use 24 hour time'
  74.          SCROLL 15,11,19,70,1
  75.          @ 19,12 SAY 'CALL TPCCLOCK WITH Format'
  76.       CASE CHOICE = 2
  77.          Format    = '/F1'               && Use 12 hour time
  78.          SCROLL 15,11,19,70,1
  79.          @ 19,12 SAY 'Format    = "/F1"             '+CHR(38)+CHR(38)+' Use 12 hour time'
  80.          SCROLL 15,11,19,70,1
  81.          @ 19,12 SAY 'CALL TPCCLOCK WITH Format'
  82.    ENDCASE
  83. ENDDO
  84.  
  85. INKIE=0
  86. @ 6,44 SAY 'Use arrow keys to move time'
  87. @ 9 ,10 SAY '│    In addition to beeing able to display both 12 and 24     │'
  88. @ 10,10 SAY '│ hour formats, TPCCLOCK can be displayed anywhere on the     │'
  89. @ 11,10 SAY '│ screen.                                                     │'
  90. @ 12,10 SAY '│                                  <Press Esc to continue>    │'
  91. ROW = 6
  92. COL = 26
  93. SET COLOR TO W+/B,B/B
  94. _ON  = 'O'
  95. _OFF = 'F'
  96. CALL TPCCLOCK WITH _OFF
  97. @ 6,26 CLEAR TO 6,36
  98. CALL SAVESCR WITH 'S1'
  99. CALL TPCCLOCK WITH _ON
  100. DO WHILE INKIE <> 27
  101.    CALL TPCCLOCK WITH _OFF
  102.    CALL SAVESCR WITH 'R1'
  103.    ScreenLoc = '/@ '+LTRIM(RTRIM(STR(ROW)))+','+LTRIM(RTRIM(STR(COL)))          && Say the clock at 10,26
  104.    SCROLL 15,11,19,70,1
  105.    @ 19,12 SAY 'ScreenLoc = "'+SCREENLOC+'"'
  106.    SCROLL 15,11,19,70,1
  107.    @ 19,12 SAY 'CALL TPCCLOCK WITH ScreenLoc'
  108.    CALL SAVESCR WITH 'S1'
  109.    CALL TPCCLOCK WITH ScreenLoc
  110.    CALL TPCCLOCK WITH _ON
  111.    T=' '
  112.    @ 6,11 GET T
  113.    CLEAR TYPEAHEAD
  114.    READ
  115.    INKIE=READKEY()
  116.    DO CASE
  117.       CASE INKIE = 12 .OR. INKIE = 268                 && ESCAPE
  118.          EXIT
  119.       CASE INKIE =  4 .OR. INKIE = 260                 && UP ARROW
  120.          ROW=ROW-1
  121.          IF ROW<0
  122.             ROW=0
  123.          ENDIF
  124.       CASE INKIE =  5 .OR. INKIE = 261                 && DOWN ARROW
  125.          ROW=ROW+1
  126.          IF ROW>23
  127.             ROW=23
  128.          ENDIF
  129.       CASE INKIE =  0                     && LEFT ARROW
  130.          COL=COL-1
  131.          IF COL<0
  132.             COL=0
  133.          ENDIF
  134.       CASE INKIE =  1 .OR. INKIE = 257                 && RIGHT ARROW
  135.          COL=COL+1
  136.          IF COL>70
  137.             COL=70
  138.          ENDIF
  139.    ENDCASE
  140. ENDDO
  141.  
  142. OnOff     = 'F'                 && Turn the CLOCK off
  143. CALL TPCCLOCK WITH OnOff
  144.  
  145. RELE MODU TPCCLOCK
  146. RELE MODU SAVESCR
  147.  
  148. SET COLOR TO W+/N
  149. CLEA
  150. @ 3,0 SAY ''
  151. ! tYPE TPCCLOCK.BIN
  152. @ 24,0 SAY '                               Press any key to Quit...                         '
  153.  
  154.  
  155. INKIE=0
  156. CLEAR TYPE
  157. DO WHILE INKIE=0
  158.    INKIE=INKEY()
  159. ENDDO
  160.  
  161. IF "FOX"$LANGUAGE
  162.    X=SYS(2002,1)
  163. ENDIF
  164.  
  165. QUIT
  166. * EOF() TPCCLOCK.PRG
  167. *--------------------------------------------------------------------------
  168.