home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / database / clockcal.zip / CLOCKIT.PRG < prev    next >
Text File  |  1991-01-27  |  3KB  |  136 lines

  1. *** CLOCKIT.prg
  2. *
  3. * (c) CTS, MRI 1991
  4. *
  5. PRIVATE mESCA,mCURS,mTALK,mFIX,TMALL,TM     && ,X,Y
  6. DECL TM[11,3], TMALL[3]
  7. mESCA=SET('ESCA')='ON'
  8. mCURS=SET('CURS')='ON'
  9. mTALK=SET('TALK')='ON'
  10. mFIX=.F.
  11. SET TALK OFF
  12. SET ESCA OFF
  13. SET CURS OFF
  14. *=-
  15. *    If this was called by an ON KEY LABEL Command, you must
  16. *    deactivate the ON KEY LABEL by un-remarking the following
  17. *    line and enter the calling key name at the end of the line
  18. *
  19.    ON KEY LABEL F2
  20.    ON KEY LABEL CTRL-T DO TOGLTIME
  21. *=-
  22. IF TYPE('X')#'N' .OR. TYPE('Y')#'N' .OR. X>19 .OR. Y>39
  23.   IF TYPE('X')#"U" .OR. TYPE('Y')#"U"
  24.     x1=X
  25.     y1=Y
  26.     mFIX=.T.
  27.   ENDIF
  28.   X=1
  29.   Y=1
  30. ENDIF
  31. DEFINE WINDOW CLOCK FROM X,Y TO X+5,Y+30 DOUBLE COLOR W+/N,,GR+/R
  32. ACTI WIND CLOCK
  33. DO CLOCK
  34. *=-
  35. DO WHILE .T.
  36.   XTIME=IIF(SET('HOUR')=24,TIME(),IIF(VAL(LEFT(TIME(),2))>12,;
  37.         STR(VAL(LEFT(TIME(),2))-12,2)+SUBS(TIME(),3,6),TIME()))
  38.   HR1=VAL(LEFT(XTIME,1))+1
  39.   HR2=VAL(SUBS(XTIME,2,1))+1
  40.   MN1=VAL(SUBS(XTIME,4,1))+1
  41.   MN2=VAL(SUBS(XTIME,5,1))+1
  42.   SC1=VAL(SUBS(XTIME,7,1))+1
  43.   SC2=VAL(SUBS(XTIME,8,1))+1
  44.   TMALL[1]=TM[HR1,1]+" "+TM[HR2,1]+TM[11,1]+TM[MN1,1]+" "+TM[MN2,1]+TM[11,1]+TM[SC1,1]+" "+TM[SC2,1]
  45.   TMALL[2]=TM[HR1,2]+" "+TM[HR2,2]+TM[11,2]+TM[MN1,2]+" "+TM[MN2,2]+TM[11,2]+TM[SC1,2]+" "+TM[SC2,2]
  46.   TMALL[3]=TM[HR1,3]+" "+TM[HR2,3]+TM[11,3]+TM[MN1,3]+" "+TM[MN2,3]+TM[11,3]+TM[SC1,3]+" "+TM[SC2,3]
  47.   @1,1 SAY TMALL[1]
  48.   @2,1 SAY TMALL[2]
  49.   @3,1 SAY TMALL[3]
  50.   I=INKEY()
  51.   IF I=27
  52.     EXIT
  53.   ENDIF
  54. ENDDO
  55. RELE WIND CLOCK
  56. IF mCURS
  57.   SET CURS ON
  58. ENDIF
  59. IF mESCA
  60.   SET ESCA ON
  61. ENDIF
  62. IF mTALK
  63.   SET TALK ON
  64. ENDIF
  65. IF mFIX
  66.   X=x1
  67.   Y=y1
  68. ENDIF
  69. *=-
  70. *    If this was called by an ON KEY LABEL Command, you must
  71. *    Reactivate the ON KEY LABEL by un-remarking the following
  72. *    line and enter the calling key name after LABEL and before
  73. *    the DO CALENDAR part of the command
  74. *
  75.   ON KEY LABEL F2 DO CLOCKIT
  76.   ON KEY LABEL CTRL-T
  77. *=-
  78. RETURN
  79. *** End of CLOCKIT.prg
  80. *
  81. *=- Procedures
  82. *
  83. PROC CLOCK
  84. MT=' '
  85. TP=CHR(223)
  86. BT=CHR(220)
  87. FL=CHR(219)
  88. TM[1,1]=FL+TP+FL
  89. TM[1,2]=FL+MT+FL
  90. TM[1,3]=TP+TP+TP
  91. TM[2,1]=MT+MT+FL
  92. TM[2,2]=MT+MT+FL
  93. TM[2,3]=MT+MT+TP
  94. TM[3,1]=TP+TP+FL
  95. TM[3,2]=FL+TP+TP
  96. TM[3,3]=TP+TP+TP
  97. TM[4,1]=TP+TP+FL
  98. TM[4,2]=MT+TP+FL
  99. TM[4,3]=TP+TP+TP
  100. TM[5,1]=FL+MT+FL
  101. TM[5,2]=TP+TP+FL
  102. TM[5,3]=MT+MT+TP
  103. TM[6,1]=FL+TP+TP
  104. TM[6,2]=TP+TP+FL
  105. TM[6,3]=TP+TP+TP
  106. TM[7,1]=FL+TP+TP
  107. TM[7,2]=FL+TP+FL
  108. TM[7,3]=TP+TP+TP
  109. TM[8,1]=TP+TP+FL
  110. TM[8,2]=MT+MT+FL
  111. TM[8,3]=MT+MT+TP
  112. TM[9,1]=FL+TP+FL
  113. TM[9,2]=FL+TP+FL
  114. TM[9,3]=TP+TP+TP
  115. TM[10,1]=FL+TP+FL
  116. TM[10,2]=TP+TP+FL
  117. TM[10,3]=TP+TP+TP
  118. TM[11,1]=MT+BT+MT
  119. TM[11,2]=MT+BT+MT
  120. TM[11,3]=MT+MT+MT
  121. RETURN
  122. *
  123. PROC TOGLTIME
  124. ON KEY LABEL F5
  125. IF SET('HOUR')=12
  126.   SET HOUR TO 24
  127. ELSE
  128.   SET HOUR TO 12
  129. ENDIF
  130. ON KEY LABEL F5 DO TOGLTIME
  131. RETURN
  132. *** End of CLOCK.prg
  133. *
  134.  
  135.  
  136.