home *** CD-ROM | disk | FTP | other *** search
- /*
- ** GetModuleVersion.adpro
- **
- ** $VER: GetModuleVersion.adpro 1.3.0 (12.12.93)
- **
- ** This ADPro/MorphPlus script lets you inquire about the version number
- ** of a particular loader, saver, or operator module.
- **
- ** This script requires ADPro v2.5.0 (or higher).
- **
- ** Copyright © 1992-1993 ASDG, Incorporated
- ** All Rights Reserved
- */
-
-
- ADDRESS "ADPro"
- OPTIONS RESULTS
-
- NL = '0A'X
- SQ = '27'X
- DQ = '22'X
- TRUE = 1
- FALSE = 0
-
-
- /*
- ** Select the type of module.
- */
-
- ModuleType.1 = "ADPro Loader Module"
- ModuleType.2 = "ADPro Saver Module"
- ModuleType.3 = "ADPro Operator Module"
- ModuleType.4 = "ADPro Display Module"
- ModuleType.5 = "FRED Operator Script"
- ModuleType.6 = "FRED Renderer Script"
- ModuleType.7 = "FRED Saver Script"
- ModuleType.8 = "FRED Function Script"
- ModuleType.9 = "T-Rexx Script"
- MinModuleType = 1
- MaxModuleType = 9
- DefModuleType = 1
-
- ModuleID.1 = "LOADER"
- ModuleID.2 = "SAVER"
- ModuleID.3 = "OPERATOR"
- ModuleID.4 = "DISPLAY"
- ModuleID.5 = "FRED Operator"
- ModuleID.6 = "FRED Renderer"
- ModuleID.7 = "FRED Saver"
- ModuleID.8 = "FRED Function"
- ModuleID.9 = "T-Rexx"
-
- ModuleTypeDir.1 = "ADPRO:Loaders2/"
- ModuleTypeDir.2 = "ADPRO:Savers2/"
- ModuleTypeDir.3 = "ADPRO:Operators2/"
- ModuleTypeDir.4 = "ADPRO:Displays2/"
- ModuleTypeDir.5 = "FREDSCRIPTS:FREDOperators/"
- ModuleTypeDir.6 = "FREDSCRIPTS:FREDRenderers/"
- ModuleTypeDir.7 = "FREDSCRIPTS:FREDSavers/"
- ModuleTypeDir.8 = "FREDSCRIPTS:FREDFunctions/"
- ModuleTypeDir.9 = "REXX:"
-
- String = '"' || ModuleType.DefModuleType || '"'
- DO LoopCounter = MinModuleType TO MaxModuleType
- String = String '"' || ModuleType.LoopCounter || '"'
- END
-
- continue = FALSE
- DO UNTIL (continue = TRUE)
- ADPRO_TO_FRONT
-
- LISTVIEW '"Module Type?"' (MaxModuleType-MinModuleType+1) ITEMS String
- LISTVIEW_RC = RC
- PARSE VAR ADPRO_RESULT '"'ModuleName'"' scratch
-
- IF (LISTVIEW_RC ~= 0) & (LISTVIEW_RC ~= 1) THEN
- continue = TRUE
- ELSE DO
- SelectedModuleType = MinModuleType
- DO WHILE (SelectedModuleType <= MaxModuleType) & (COMPARE( ModuleName, ModuleType.SelectedModuleType ) ~= 0)
- SelectedModuleType = SelectedModuleType + 1
- END
-
- checkMore = TRUE
- DO UNTIL (checkMore = FALSE)
- IF (SelectedModuleType <= 3) THEN DO
- ListType = ModuleID.SelectedModuleType || "S"
- GETLIST ListType
- ModuleList = ADPRO_RESULT
-
-
- /*
- ** Which module are we going to interrogate?
- */
-
- ADPRO_TO_FRONT
-
- Title = '"' || "WHICH " || ModuleID.SelectedModuleType || "?" || '"'
- LISTVIEW Title 10 ITEMS ModuleList
- LISTVIEW_RC = RC
- PARSE VAR ADPRO_RESULT '"'SelectedModuleStr'"' scratch
-
- IF (LISTVIEW_RC ~= 0) & (LISTVIEW_RC ~= 1) THEN
- checkMore = FALSE
- ELSE
- SelectedModuleName = ModuleTypeDir.SelectedModuleType || STRIP( STRIP( SelectedModuleStr, "B", " " ), "B", '"' )
- END
- ELSE DO
- ADPRO_TO_FRONT
-
- Title = '''' || "WHICH" ModuleID.SelectedModuleType "SCRIPT?" || ''''
- GETFILE Title ModuleTypeDir.SelectedModuleType
- GETFILE_RC = RC
- SelectedModuleName = STRIP( STRIP( ADPRO_RESULT, "B", " " ), "B", '"' )
-
- IF (GETFILE_RC ~= 0) THEN
- checkMore = FALSE
- END
-
- IF (checkMore = TRUE) THEN DO
- ADDRESS COMMAND "version >RAM:version.out full " || SelectedModuleName
- IF (OPEN( VERFILE, 'RAM:version.out', 'r' )) THEN DO
- VersionString = READLN( VERFILE )
-
-
- /*
- ** Display the version number. Use word wrap.
- */
-
- CALL "FREDSCRIPTS:FREDFunctions/WordWrap" 10 38 VersionString
- text = RESULT
-
- ADPRO_TO_FRONT
-
- OKAYN '"GetModuleVersion"' '"'text'"' '"Check Another Module|Exit"'
- IF (RC = 0) THEN
- checkMore = FALSE
-
- ADDRESS REXX CLOSE( VERFILE )
- ADDRESS COMMAND "Delete >NIL: RAM:version.out"
- END
- ELSE DO
- ADPRO_TO_FRONT
- OKAY1 "Error loading version number."
- END
- END
- END
- END
- END
-
- EXIT 0
-