home *** CD-ROM | disk | FTP | other *** search
- /*
- ** ModifyFilenameSelect
- **
- ** $VER: ModifyFilenameSelect 1.2.0 (5.11.93)
- **
- ** This ARexx script contains a function which select the type of filename
- ** modification that will be done. This script must be used in conjunction
- ** with the ModifyFilename script.
- **
- ** INPUTS
- ** DefFNameExt -- default filename extension.
- ** DefFrameNumDigits -- default number of digits in frame number.
- ** MinFrameNumDigits -- minimum number of digits in frame number.
- ** MaxFrameNumDigits -- maximum number of digits in frame number.
- **
- ** RETURN
- ** ModifyFNameStr -- string describing how to modify the filename.
- **
- ** This script should work with current versions of ARexx.
- **
- ** 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
-
- PARSE ARG Arguments
- PARSE VAR Arguments '"'DefFNameExt'"' DefFrameNumDigits MinFrameNumDigits MaxFrameNumDigits
-
- DefFNameExt = SQ || DQ || DefFNameExt || DQ || SQ
-
- ModifyFNameType.0 = "Use current filename"
- ModifyFNameType.1 = "Remove extension"
- ModifyFNameType.2 = "Replace extension with ???"
- ModifyFNameType.3 = "Replace extension with frame #"
- ModifyFNameType.4 = "Replace filename with ???"
- ModifyFNameType.5 = "Replace filename with frame #"
- ModifyFNameType.6 = "Replace filename with ???.frame #"
- ModifyFNameType.7 = "Prepend ???"
- ModifyFNameType.8 = "Prepend frame #"
- ModifyFNameType.9 = "Append ???"
- ModifyFNameType.10 = "Append frame #"
- ModifyFNameType.11 = "Make Framestore filename"
-
- MinModifyFNameType = 0
- MaxModifyFNameType = 11
- DefModifyFNameType = 0
-
- String = DQ || ModifyFNameType.DefModifyFNameType || DQ
- DO LoopCounter = MinModifyFNameType TO MaxModifyFNameType
- String = String DQ || ModifyFNameType.LoopCounter || DQ
- END
-
- ADPRO_TO_FRONT
-
- continue = TRUE
- DO WHILE (continue = TRUE)
- LISTVIEW '"Filename Treatment:"' (MaxModifyFNameType-MinModifyFNameType+1) ITEMS String
- LISTVIEW_RC = RC
- PARSE VAR ADPRO_RESULT '"'ModifyFNameStr'"' scratch
-
- IF (LISTVIEW_RC ~= 0) & (LISTVIEW_RC ~= 1) THEN DO
- ADPRO_TO_FRONT
-
- OKAYN '"ModifyFilenameSelect"' '"This value is required."' '"Retry|Cancel"'
- IF (RC = 0) THEN
- EXIT 10
-
- SCREEN_TO_FRONT "FRED"
- END
- ELSE
- continue = FALSE
- END
-
- ModifyFNameMode = MinModifyFNameType
- DO WHILE (ModifyFNameMode < MaxModifyFNameType) & (COMPARE( ModifyFNameType.ModifyFNameMode, ModifyFNameStr ) ~= 0)
- ModifyFNameMode = ModifyFNameMode + 1
- END
-
- IF (ModifyFNameMode = 2) THEN DO
- /*
- ** Replace extension with ???
- */
- CALL "FREDSCRIPTS:FREDFunctions/GetAString" '"Replace extension with"' DefFNameExt TRUE
- FNameExt = RESULT
- END
- ELSE IF (ModifyFNameMode = 4) THEN DO
- /*
- ** Replace filename with ???
- */
- CALL "FREDSCRIPTS:FREDFunctions/GetAString" '"Replace filename with"' DefFNameExt TRUE
- FNameExt = RESULT
- END
- ELSE IF (ModifyFNameMode = 7) THEN DO
- /*
- ** Prepend ???
- */
- CALL "FREDSCRIPTS:FREDFunctions/GetAString" '"Prepend filename with"' DefFNameExt TRUE
- FNameExt = RESULT
- END
- ELSE IF (ModifyFNameMode = 9) THEN DO
- /*
- ** Append ???
- */
- CALL "FREDSCRIPTS:FREDFunctions/GetAString" '"Append filename with"' DefFNameExt TRUE
- FNameExt = RESULT
- END
- ELSE IF (ModifyFNameMode = 3) | (ModifyFNameMode = 5) | (ModifyFNameMode = 6) | (ModifyFNameMode = 8) | (ModifyFNameMode = 10) THEN DO
- /*
- ** Replace extension with frame number
- ** Replace filename with frame number
- ** Replace filename with ???.frame number
- ** Prepend frame number
- ** Append frame number
- */
- IF (ModifyFNameMode = 6) THEN DO
- /*
- ** Replace filename with ???.frame number
- */
- CALL "FREDSCRIPTS:FREDFunctions/GetAString" '"Replace with base name"' '"image"' TRUE
- FNameExt = RESULT
- END
-
- ADPRO_TO_FRONT
-
- OKAYN '"ModifyFilenameSelect"' '"Increment current frame number?"' '"Enter Increment|Use Current Number|Cancel"'
- IF (RC = 0) THEN DO
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
- ELSE IF (RC = 1) THEN DO
- CALL "FREDSCRIPTS:FREDFunctions/GetANumber" '"Frame # increment"' 1 0 100 TRUE
- FrameNumIncr = RESULT
- IF (FrameNumIncr = (0-1)) THEN
- EXIT 10
- END
- ELSE IF (RC = 2) THEN
- FrameNumIncr = 0
-
- ADPRO_TO_FRONT
-
- OKAYN '"ModifyFilenameSelect"' '"Prepend frame # with zeros?"' '"Prepend Zeros|Don''t Prepend|Cancel"'
- IF (RC = 0) THEN DO
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
- ELSE IF (RC = 1) THEN DO
- ZeroPrepend = TRUE
-
- CALL "FREDSCRIPTS:FREDFunctions/GetANumber" '"#Digits in frame number"' DefFrameNumDigits MinFrameNumDigits MaxFrameNumDigits TRUE
- ZeroPrependChars = RESULT
- IF (ZeroPrependChars = (MinFrameNumDigits-1)) THEN
- EXIT 10
- END
- ELSE IF (RC = 2) THEN DO
- ZeroPrepend = FALSE
-
- ZeroPrependChars = 0
- END
- END
- ELSE IF (ModifyFNameMode = 11) THEN DO
- /*
- ** Make Framestore filename
- */
-
- /*
- +++use OKAYN
-
- CALL "FREDSCRIPTS:FREDFunctions/GetABool" '"Use embedded frame number"' '"to reuse file''s number"' '"to use current number"'
- IF (RESULT = TRUE) THEN
- FrameNumIncr = (0-1)
- ELSE
- FrameNumIncr = 0
-
- CALL "FREDSCRIPTS:FREDFunctions/GetABool" '"Use embedded description"' '"to reuse file''s desc."' '"to replace with string"'
- IF (RESULT = TRUE) THEN DO
- CALL "FREDSCRIPTS:FREDFunctions/GetAString" '"Enter description"' "Untitled" TRUE
- FNameExt = RESULT
- END
- ELSE
- FNameExt = "???"
- */
- FrameNumIncr = 0
-
- CALL "FREDSCRIPTS:FREDFunctions/GetAString" '"Enter Framestore basename"' "Untitled" TRUE
- FNameExt = RESULT
- END
-
-
- /*
- ** Ask if the file should be relocated to a different directory.
- */
-
- ADPRO_TO_FRONT
-
- OKAYN '"ModifyFilenameSelect"' '"Move processed image?"' '"Keep in Same Directory|Move to New Directory|Cancel"'
- IF (RC = 0) THEN DO
- SCREEN_TO_FRONT "FRED"
- EXIT 10
- END
- ELSE IF (RC = 1) THEN DO
- SameDirID = TRUE
- NewDir = "XXX"
- END
- ELSE IF (RC = 2) THEN DO
- SameDirID = FALSE
- CALL "FREDSCRIPTS:FREDFunctions/GetADir" '"Select new directory"' '"ADPRO:"' TRUE
- IF (RESULT = DQ||DQ) THEN
- EXIT 10
- ELSE
- NewDir = RESULT
- END
-
- SCREEN_TO_BACK "FRED"
-
- ModifyFNameStr = ModifyFNameMode DQ || FNameExt || DQ ZeroPrependChars FrameNumIncr SameDirID DQ || NewDir || DQ
-
- RETURN ModifyFNameStr
-
- EXIT 0
-