home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / GFX / ADPro251-3.DMS / ADPro251-3.adf / ADProScripts.lha / GetModuleVersion.adpro < prev    next >
Encoding:
Text File  |  1994-01-31  |  3.7 KB  |  152 lines

  1. /*
  2. ** GetModuleVersion.adpro
  3. **
  4. ** $VER: GetModuleVersion.adpro 1.3.0 (12.12.93)
  5. **
  6. ** This ADPro/MorphPlus script lets you inquire about the version number
  7. ** of a particular loader, saver, or operator module.
  8. **
  9. ** This script requires ADPro v2.5.0 (or higher).
  10. **
  11. ** Copyright © 1992-1993 ASDG, Incorporated
  12. ** All Rights Reserved
  13. */
  14.  
  15.  
  16. ADDRESS "ADPro"
  17. OPTIONS RESULTS
  18.  
  19. NL = '0A'X
  20. SQ = '27'X
  21. DQ = '22'X
  22. TRUE  = 1
  23. FALSE = 0
  24.  
  25.  
  26. /*
  27. ** Select the type of module.
  28. */
  29.  
  30. ModuleType.1 = "ADPro Loader Module"
  31. ModuleType.2 = "ADPro Saver Module"
  32. ModuleType.3 = "ADPro Operator Module"
  33. ModuleType.4 = "ADPro Display Module"
  34. ModuleType.5 = "FRED Operator Script"
  35. ModuleType.6 = "FRED Renderer Script"
  36. ModuleType.7 = "FRED Saver Script"
  37. ModuleType.8 = "FRED Function Script"
  38. ModuleType.9 = "T-Rexx Script"
  39. MinModuleType = 1
  40. MaxModuleType = 9
  41. DefModuleType = 1
  42.  
  43. ModuleID.1 = "LOADER"
  44. ModuleID.2 = "SAVER"
  45. ModuleID.3 = "OPERATOR"
  46. ModuleID.4 = "DISPLAY"
  47. ModuleID.5 = "FRED Operator"
  48. ModuleID.6 = "FRED Renderer"
  49. ModuleID.7 = "FRED Saver"
  50. ModuleID.8 = "FRED Function"
  51. ModuleID.9 = "T-Rexx"
  52.  
  53. ModuleTypeDir.1 = "ADPRO:Loaders2/"
  54. ModuleTypeDir.2 = "ADPRO:Savers2/"
  55. ModuleTypeDir.3 = "ADPRO:Operators2/"
  56. ModuleTypeDir.4 = "ADPRO:Displays2/"
  57. ModuleTypeDir.5 = "FREDSCRIPTS:FREDOperators/"
  58. ModuleTypeDir.6 = "FREDSCRIPTS:FREDRenderers/"
  59. ModuleTypeDir.7 = "FREDSCRIPTS:FREDSavers/"
  60. ModuleTypeDir.8 = "FREDSCRIPTS:FREDFunctions/"
  61. ModuleTypeDir.9 = "REXX:"
  62.  
  63. String = '"' || ModuleType.DefModuleType || '"'
  64. DO LoopCounter = MinModuleType TO MaxModuleType
  65.     String = String '"' || ModuleType.LoopCounter || '"'
  66. END
  67.  
  68. continue = FALSE
  69. DO UNTIL (continue = TRUE)
  70.     ADPRO_TO_FRONT
  71.  
  72.     LISTVIEW '"Module Type?"' (MaxModuleType-MinModuleType+1) ITEMS String
  73.     LISTVIEW_RC = RC
  74.     PARSE VAR ADPRO_RESULT '"'ModuleName'"' scratch
  75.  
  76.     IF (LISTVIEW_RC ~= 0) & (LISTVIEW_RC ~= 1) THEN
  77.         continue = TRUE
  78.     ELSE DO
  79.         SelectedModuleType = MinModuleType
  80.         DO WHILE (SelectedModuleType <= MaxModuleType) & (COMPARE( ModuleName, ModuleType.SelectedModuleType ) ~= 0)
  81.             SelectedModuleType = SelectedModuleType + 1
  82.         END
  83.  
  84.         checkMore = TRUE
  85.         DO UNTIL (checkMore = FALSE)
  86.             IF (SelectedModuleType <= 3) THEN DO
  87.                 ListType = ModuleID.SelectedModuleType || "S"
  88.                 GETLIST ListType
  89.                 ModuleList = ADPRO_RESULT
  90.  
  91.  
  92.                 /*
  93.                 ** Which module are we going to interrogate?
  94.                 */
  95.  
  96.                 ADPRO_TO_FRONT
  97.  
  98.                 Title = '"' || "WHICH " || ModuleID.SelectedModuleType || "?" || '"'
  99.                 LISTVIEW Title 10 ITEMS ModuleList
  100.                 LISTVIEW_RC = RC
  101.                 PARSE VAR ADPRO_RESULT '"'SelectedModuleStr'"' scratch
  102.  
  103.                 IF (LISTVIEW_RC ~= 0) & (LISTVIEW_RC ~= 1) THEN
  104.                     checkMore = FALSE
  105.                 ELSE
  106.                     SelectedModuleName = ModuleTypeDir.SelectedModuleType || STRIP( STRIP( SelectedModuleStr, "B", " " ), "B", '"' )
  107.             END
  108.             ELSE DO
  109.                 ADPRO_TO_FRONT
  110.  
  111.                 Title = '''' || "WHICH" ModuleID.SelectedModuleType "SCRIPT?" || ''''
  112.                 GETFILE Title ModuleTypeDir.SelectedModuleType
  113.                 GETFILE_RC = RC
  114.                 SelectedModuleName = STRIP( STRIP( ADPRO_RESULT, "B", " " ), "B", '"' )
  115.  
  116.                 IF (GETFILE_RC ~= 0) THEN
  117.                     checkMore = FALSE
  118.             END
  119.  
  120.             IF (checkMore = TRUE) THEN DO
  121.                 ADDRESS COMMAND "version >RAM:version.out full " || SelectedModuleName
  122.                 IF (OPEN( VERFILE, 'RAM:version.out', 'r' )) THEN DO
  123.                     VersionString = READLN( VERFILE )
  124.  
  125.  
  126.                     /*
  127.                     ** Display the version number.  Use word wrap.
  128.                     */
  129.  
  130.                     CALL "FREDSCRIPTS:FREDFunctions/WordWrap" 10 38 VersionString
  131.                     text = RESULT
  132.  
  133.                     ADPRO_TO_FRONT
  134.  
  135.                     OKAYN '"GetModuleVersion"' '"'text'"' '"Check Another Module|Exit"'
  136.                     IF (RC = 0) THEN
  137.                         checkMore = FALSE
  138.  
  139.                     ADDRESS REXX CLOSE( VERFILE )
  140.                     ADDRESS COMMAND "Delete >NIL: RAM:version.out"
  141.                 END
  142.                 ELSE DO
  143.                     ADPRO_TO_FRONT
  144.                     OKAY1 "Error loading version number."
  145.                 END
  146.             END
  147.         END
  148.     END
  149. END
  150.  
  151. EXIT 0
  152.