Advertisement
Guest User

FILSEL

a guest
Sep 21st, 2018
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
QBasic 5.63 KB | None | 0 0
  1. ' Program developed by Jason Page of Page Telegram 2018.
  2. _TITLE "FILSEL v1 by Jason Page of Page Telegram"
  3. DIM forms$(100)
  4. DIM fils$(10000)
  5. SHELL _HIDE "dir/b exts.xyz > tmp.xyz"
  6. OPEN "tmp.xyz" FOR INPUT AS #1
  7. IF NOT (EOF(1)) THEN INPUT #1, ot$
  8. CLOSE #1
  9. IF ot$ <> "exts.xyz" THEN
  10.  
  11.     SHELL _HIDE "echo. > exts.xyz"
  12.  
  13.     forms$(1) = "*.TXT"
  14.     forms$(2) = "*.CSV"
  15.     forms$(3) = "*.INI"
  16.     forms$(4) = "*.RTF"
  17.     forms$(5) = "*.ME "
  18.     forms$(6) = "*.BAS"
  19.     forms$(7) = "*.PHP"
  20.     forms$(8) = "*.   "
  21.     forms$(9) = "*.*  "
  22.     maxc = 9
  23.     SHELL _HIDE "echo " + forms$(1) + " > exts.xyz"
  24.     FOR i = 2 TO 9
  25.         SHELL _HIDE "echo " + forms$(i) + " >> exts.xyz"
  26.     NEXT i
  27.  
  28. ELSE
  29.     c = 0
  30.     OPEN "exts.xyz" FOR INPUT AS #1
  31.     DO
  32.  
  33.         IF NOT (EOF(1)) THEN
  34.             c = c + 1
  35.             INPUT #1, forms$(c)
  36.         END IF
  37.     LOOP UNTIL EOF(1) OR c > 99
  38.     maxc = c
  39.     CLOSE #1
  40. END IF
  41. SHELL _HIDE "echo. > zext.xyz"
  42. CLS
  43. e = 1: f = 1
  44. COLOR 14, 1
  45. LOCATE 1, 1: PRINT "FILSEL by Page Telegram. Select your file & with what program to launch it with."
  46. COLOR 14, 0
  47. LOCATE 1 + 1, 1: PRINT "<     >  /\                                                   \/ ";
  48. COLOR 0, 15
  49. PRINT "[ENTER][ESC][E]"
  50. LOCATE 2, 2: PRINT "     "
  51. LOCATE 1 + 1, 2: PRINT forms$(e)
  52. COLOR 15, 0
  53. IF fils$(1) = "" THEN fils$(1) = "NO FILE"
  54. SHELL _HIDE "dir/b " + forms$(e) + " > zext.xyz"
  55. OPEN "zext.xyz" FOR INPUT AS #1
  56. DO
  57.     IF NOT (EOF(1)) THEN INPUT #1, fils$(f)
  58. LOOP UNTIL EOF(1)
  59. CLOSE #1
  60. IF fmax <> 0 THEN
  61.     PRINT 1, 12: PRINT "                                                   ":
  62.     LOCATE 2, 34 - FIX(LEN(fils$(f)) / 2): PRINT fils$(f)
  63. ELSE
  64.     LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 1 + 1, 12: PRINT "NO FILE"
  65. END IF
  66.  
  67. COLOR 15, 0
  68. LOCATE 2, 12: PRINT "                                                   "
  69. LOCATE 2, 34 - FIX(LEN(fils$(f)) / 2): PRINT fils$(f)
  70.  
  71.  
  72. DO
  73.     SELECT CASE INKEY$
  74.         CASE "E", "e"
  75.  
  76.             COLOR 15, 8
  77.             LOCATE 15, 25: PRINT "                                  ": LOCATE 15, 25: INPUT "Open Using (try notepad)>", cmds$
  78.             IF LEN(cmds$) <> 0 THEN SHELL cmds$ + " exts.xyz" ELSE SHELL "notepad exts.xyz"
  79.             COLOR 15, 0
  80.  
  81.         CASE CHR$(0) + "K"
  82.             fmax = 0
  83.             'PRINT "Left"   Extensions
  84.             IF e > 1 THEN e = e - 1 ELSE BEEP
  85.             COLOR 0, 15
  86.             LOCATE 2, 2: PRINT "     "
  87.             LOCATE 1 + 1, 2: PRINT forms$(e)
  88.             COLOR 15, 0
  89.             IF LEN(fils$(1)) = 0 THEN LOCATE 12, 1: PRINT "NO FILE                   "
  90.             SHELL _HIDE "dir/b " + forms$(e) + " > zext.xyz"
  91.             OPEN "zext.xyz" FOR INPUT AS #1
  92.             DO
  93.                 IF NOT (EOF(1)) THEN
  94.                     fmax = fmax + 1: INPUT #1, fils$(fmax):
  95.                 END IF
  96.  
  97.             LOOP UNTIL EOF(1)
  98.             CLOSE #1
  99.             IF fmax >= 1 THEN
  100.                 LOCATE 1 + 1, 12: PRINT "                                                   ":
  101.                 LOCATE 2, 34 - FIX(LEN(fils$(f)) / 2)
  102.                 PRINT fils$(f)
  103.             ELSE
  104.                 LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 1 + 1, 12: PRINT "NO FILE"
  105.             END IF
  106.  
  107.             'LOCATE 1+1, 12: PRINT fils$(f)
  108.  
  109.         CASE CHR$(0) + "M"
  110.             fmax = 0
  111.             'PRINT "Right"  Extensions
  112.             COLOR 0, 15
  113.             IF e < maxc THEN e = e + 1 ELSE BEEP
  114.             LOCATE 2, 2: PRINT "     "
  115.  
  116.             LOCATE 1 + 1, 2: PRINT forms$(e)
  117.             COLOR 15, 0
  118.  
  119.             SHELL _HIDE "dir/b " + forms$(e) + " > zext.xyz"
  120.             OPEN "zext.xyz" FOR INPUT AS #1
  121.             DO
  122.                 IF NOT (EOF(1)) THEN
  123.                     fmax = fmax + 1: INPUT #1, fils$(fmax):
  124.                 END IF
  125.             LOOP UNTIL EOF(1)
  126.             CLOSE #1
  127.             IF fmax >= 1 THEN
  128.                 LOCATE 1 + 1, 12: PRINT "                                                   "
  129.                 LOCATE 2, 34 - FIX(LEN(fils$(f)) / 2)
  130.                 PRINT fils$(f)
  131.  
  132.             ELSE
  133.                 LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 1 + 1, 12: PRINT "NO FILE              "
  134.             END IF
  135.  
  136.             '         LOCATE 1+1, 12: PRINT fils$(f)
  137.  
  138.         CASE CHR$(0) + "H"
  139.             COLOR 15, 0
  140.             'PRINT "Up"     Files
  141.             IF f > 1 THEN f = f - 1 ELSE BEEP
  142.             IF fmax <> 0 THEN
  143.                 LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 2, 34 - FIX(LEN(fils$(f)) / 2): PRINT fils$(f)
  144.             ELSE
  145.                 LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 1 + 1, 12: PRINT "NO FILE              "
  146.             END IF
  147.  
  148.         CASE CHR$(0) + "P"
  149.             COLOR 15, 0
  150.             'PRINT "Down"   Files
  151.             IF f < fmax THEN f = f + 1 ELSE BEEP
  152.             IF fmax <> 0 THEN
  153.                 LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 2, 34 - FIX(LEN(fils$(f)) / 2): PRINT fils$(f)
  154.             ELSE
  155.                 LOCATE 1 + 1, 12: PRINT "                                                   ": LOCATE 1 + 1, 12: PRINT "NO FILE              "
  156.             END IF
  157.         CASE CHR$(27): SHELL _HIDE "del tmp.xyz": SHELL _HIDE "del zext.xyz": SYSTEM
  158.         CASE CHR$(13)
  159.             COLOR 15, 8
  160.             LOCATE 15, 25: PRINT "                                  ": LOCATE 15, 25: INPUT "Open Using>", cmds$
  161.             SHELL cmds$ + " " + fils$(f)
  162.             COLOR 15, 0
  163.     END SELECT
  164. LOOP
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement