home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 26 / CD_ASCQ_26_1295.iso / vrac / volume_3.zip / IT.BAS < prev    next >
BASIC Source File  |  1995-09-17  |  4KB  |  190 lines

  1. DECLARE FUNCTION MouseInit% ()
  2. DECLARE FUNCTION GetFilename$ (SS$)
  3. DECLARE FUNCTION GetDrive% ()
  4. DECLARE FUNCTION FindFile$ (FileSpec$, ATTR%, Mouse%)
  5. DECLARE FUNCTION INC! (i%)
  6. DECLARE SUB LocateYX (Y%, X%)
  7. DECLARE FUNCTION YesNo$ (Msg$, Y%, X%)
  8. DECLARE FUNCTION CharFromTo$ (a$, First%, Last%)
  9. DECLARE FUNCTION CharAt$ (a$, i%)
  10. DECLARE SUB Center.Message (Msg$, Line.Num%)
  11.  
  12. '********************************************
  13. '*              Constants                   *
  14. '********************************************
  15. CONST MAX.SCRN.COL% = 80
  16. CONST MAX.SCRN.ROW% = 25
  17. CONST TRUE% = -1
  18. CONST FALSE% = 0
  19.  
  20. '********************************************
  21. '*              Variable's                  *
  22. '********************************************
  23. File.Data$ = ""
  24. VOID$ = ""
  25. Selected.Label% = 0
  26. StopIt% = FALSE%
  27. DIM Label(1 TO 100) AS STRING
  28. CLS
  29. Counter% = 1
  30. Current.Drive1% = 0
  31. Exist1$ = ""
  32. '*********************************************
  33. '*              Initialize                   *
  34. '*********************************************
  35. RANDOMIZE 10
  36. CLS
  37. Current.Drive1% = GetDrive%
  38.  
  39.  
  40.  
  41. '*********************************************
  42. '*      Get Current Dirctory Name            *
  43. '*********************************************
  44. SHELL "dir > dir.txt"
  45. OPEN "dir.txt" FOR INPUT AS #1
  46.       WHILE NOT EOF(1)
  47.        LINE INPUT #1, CurrentPath1$
  48.        IF CharFromTo(CurrentPath1$, 2, 10) = "Directory" THEN
  49.         CurrentPath2$ = CharFromTo(CurrentPath1$, 15, LEN(CurrentPath1$))
  50.         CurrentPath$ = CurrentPath2$ + "\*.zip"
  51.        END IF
  52.       WEND
  53. CLOSE #1
  54. SHELL "del dir.txt"
  55.  
  56.  
  57. '*********************************************
  58. '*      Allow for No Screen while            *
  59. '*      Mouse and file search completes      *
  60. '*********************************************
  61. LOCATE 8, 20
  62. PRINT "Please Wait, Checking for & Processing Zip Files"
  63. LOCATE 9, 20
  64. PRINT INT(RND * 40); "% complete"
  65.  
  66.  
  67. '*********************************************
  68. '*      Mouse & Find File                    *
  69. '*********************************************
  70. r% = MouseInit
  71. LOCATE 10, 20
  72. PRINT " 50 % complete"
  73. Exist$ = FindFile$(CurrentPath$, 0, r%)
  74. IF Exist$ = "" THEN
  75.     CLS
  76.     END
  77. END IF
  78.  
  79. '*********************************************
  80. '*      Processes File Name                  *
  81. '*********************************************
  82. Directory.Name$ = GetFilename$(Exist$)
  83.  
  84.  
  85. '*********************************************
  86. '*     Makes Directory and unzips file       *
  87. '*********************************************
  88. TT$ = "Mkdir " + CurrentPath2$ + "\" + Directory.Name$
  89. SHELL TT$
  90. TT$ = "Pkunzip " + CurrentPath2$ + "\" + Directory.Name$ + ".zip " + CurrentPath2$ + "\" + Directory.Name$
  91. SHELL TT$
  92. CLS
  93.  
  94. SUB Center.Message (Msg$, Line.Num%)
  95.     IF Line.Num% <= MAX.SCRN.ROW% THEN
  96.         IF Line.Num% > 0 THEN
  97.             LOCATE Line.Num%, 1
  98.             PRINT STRING$(MAX.SCRN.COL%, " ");
  99.             LOCATE Line.Num%, INT((MAX.SCRN.COL% - LEN(Msg$)) / 2)
  100.             PRINT Msg$;
  101.         ELSE
  102.             BEEP
  103.         END IF
  104.     ELSE
  105.         BEEP
  106.     END IF
  107. END SUB
  108.  
  109. FUNCTION CharAt$ (a$, i%)
  110.     IF i% > 0 THEN
  111.         CharAt$ = MID$(a$, i%, 1)
  112.     ELSE
  113.         SOUND 2000, 60
  114.     END IF
  115. END FUNCTION
  116.  
  117. FUNCTION CharFromTo$ (a$, First%, Last%)
  118.     IF First% <= Last% THEN
  119.         CharFromTo$ = MID$(a$, First%, (Last% - First% + 1))
  120.     END IF
  121. END FUNCTION
  122.  
  123. SUB DEC (i%)
  124.     i% = i% - 1
  125. END SUB
  126.  
  127. FUNCTION GetFilename$ (SS$)
  128. T = -1
  129. F = 0
  130. switch = T
  131. Length% = LEN(SS$)
  132. FOR a% = Length% TO 1 STEP -1
  133.      IF CharAt(SS$, a%) = "\" AND switch = T THEN
  134.     switch = F
  135.     b% = a% + 1
  136.      END IF
  137.      IF switch = T THEN
  138.        Y$ = Y$ + CharAt(SS$, a%)
  139.      END IF
  140. NEXT a%
  141. IF Length% > 5 THEN
  142.     FOR a% = Length% TO (Length% - 4) STEP -1
  143.         IF CharAt(SS$, a%) = "." THEN
  144.             c% = a% - 1
  145.         END IF
  146.     NEXT a%
  147. END IF
  148. YY$ = CharFromTo(SS$, b%, c%)
  149. GetFilename$ = YY$
  150. END FUNCTION
  151.  
  152. FUNCTION INC (i%)
  153.     i% = i% + 1
  154.     INC = i%
  155. END FUNCTION
  156.  
  157. SUB LocateYX (Y%, X%)
  158.      IF Y% > 0 THEN
  159.     IF Y% < 26 THEN
  160.         IF X% > 0 THEN
  161.             IF X% < 80 THEN
  162.                 LOCATE Y%, X%
  163.              END IF
  164.         END IF
  165.     END IF
  166.      END IF
  167. END SUB
  168.  
  169. FUNCTION YesNo$ (Msg$, Y%, X%)
  170.  
  171.     'This will return "Y" or "N"
  172.  
  173.     Answer$ = " "
  174.     WHILE (INSTR("YyNn", Answer$) = 0)
  175.         CALL LocateYX(Y%, X%)
  176.         PRINT Msg$;
  177.         CurrentX% = POS(0)
  178.         CurrentY% = CSRLIN
  179.         INPUT " (Y/N) "; Answer$
  180.         S = LEN(Answer$)
  181.         CALL LocateYX(CurrentY%, CurrentX%)
  182.         PRINT STRING$(S + 9, " ")
  183.         IF S > 0 THEN Answer$ = LEFT$(Answer$, 1)
  184.  
  185.     WEND
  186.     YesNo$ = UCASE$(Answer$)
  187.  
  188. END FUNCTION
  189.  
  190.