home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / GFX / ADPro251-3.DMS / ADPro251-3.adf / FREDScripts.lha / FREDSavers / SaveAsCDXL.fred.pre < prev    next >
Encoding:
Text File  |  1994-01-31  |  2.7 KB  |  140 lines

  1. /*
  2. ** SaveAsCDXL.fred.pre
  3. **
  4. ** $VER: SaveAsCDXL.fred.pre 1.0.0 (25.12.93)
  5. **
  6. ** If the SaveAsCDXL.fred script appears in the InvokeADPro list,
  7. ** this program will ask the user to enter the name of an CDXL file
  8. ** to be written.  The name will be stuffed into a REXX clip.
  9. **
  10. ** If they fail to answer, the InvokeADPro list will be aborted.
  11. **
  12. ** Clips Exported:
  13. **    FREDCDXLName        -    CDXL file user picked
  14. **    FREDCDXLInterleave    -    1 if the user wants Interleaved frames
  15. **                -    2 if the user doesn't want Interleaved frames
  16. **    FREDCDXLSaveType    -    Save CDXL frames as RAW or IMAGE
  17. **    FREDLockPalette        -    ~0 if we are to pick a new palette
  18. **                -    0 if we are to lock the palette
  19. **    FREDCDXLAppend        -       0 if appending to existing pan file
  20. **                    1 if starting new pan file
  21. **
  22. ** NOTE: Clip names are case sensitive.
  23. **
  24. ** This script requires FRED v1.4.0 (or higher) to run.  Also required is
  25. ** ADPro v2.5.0 (or higher).
  26. **
  27. ** Copyright © 1992-1993 ASDG, Incorporated
  28. ** All Rights Reserved
  29. */
  30.  
  31. ADDRESS "ADPro"
  32. OPTIONS RESULTS
  33.  
  34. PARSE ARG NumberOfCells NumberOfFrames
  35.  
  36. NL = '0A'X
  37. SQ = '27'X
  38. DQ = '22'X
  39. TRUE  = 1
  40. FALSE = 0
  41.  
  42.  
  43. /*
  44. ** Get the CDXL filename.
  45. */
  46.  
  47. CALL "FREDSCRIPTS:FREDFunctions/GetAFile" '"Select CDXL File"' '""""' '""""' TRUE
  48. CDXLFile = RESULT
  49. IF (CDXLFile = DQ||DQ) THEN
  50.     EXIT 10
  51.  
  52. ADPRO_TO_FRONT
  53.  
  54. /* 
  55. ** Check to see if the user wants the CDXL frames to be interleaved or not.
  56. */
  57.  
  58. OKAYN '"SaveAsCDXL.fred.pre"' '"Interleave CDXL frames?"' '"Interleave|Non-Interleave|Cancel"'
  59. IF (RC = 0) THEN DO
  60.     SCREEN_TO_FRONT "FRED"
  61.     EXIT 10
  62. END
  63.  
  64. ELSE IF (RC = 1) THEN 
  65.     Inter = 1
  66. ELSE IF (RC = 2) THEN
  67.     Inter = 0
  68.  
  69. /*
  70. ** Check to see if frames are to be saved as RAW or IMAGE
  71. */
  72.  
  73. OKAYN '"SaveAsCDXL.fred.pre"' '"Choose save type"' '"RAW|IMAGE|Cancel"'
  74. IF (RC = 0) THEN DO
  75.     SCREEN_TO_FRONT "FRED"
  76.     EXIT 10
  77. END
  78.  
  79. ELSE IF (RC = 1) THEN
  80.     SaveType = "RAW"
  81. ELSE IF (RC = 2) THEN
  82.     SaveType = "IMAGE"
  83.  
  84. /*
  85. ** See if user wants to lock the palette to the first frame
  86. */
  87.  
  88. OKAYN '"SaveAsCDXL.fred.pre"' '"Lock palette to first frame?"' '"YES|NO|Cancel"'
  89. IF (RC = 0) THEN DO
  90.     SCREEN_TO_FRONT "FRED"
  91.     EXIT 10
  92. END
  93.  
  94. ELSE IF (RC = 1) THEN
  95.     LockPalette = 0
  96. ELSE IF (RC = 2) THEN
  97.     LockPalette = 1
  98.  
  99. Append = 1
  100.  
  101. IF (EXISTS( CDXLFile )) THEN DO
  102.     ADPRO_TO_FRONT
  103.     OKAYN '"SaveAsCDXL.fred.pre"' '"Truncate existing file?"' '"Append|Replace|Cancel"'
  104.     IF (RC = 0) THEN DO
  105.         FRED_TO_FRONT
  106.         EXIT 10
  107.     END
  108.  
  109.     ELSE IF (RC = 1) THEN
  110.         Append = 0
  111.     ELSE IF (RC = 2) THEN DO
  112.         ADDRESS COMMAND "Delete >NIL:" CDXLFile
  113.         Append = 1
  114.         
  115. END
  116.  
  117. SCREEN_TO_FRONT "FRED"
  118.  
  119. /*
  120. ** Update the clips.
  121. */
  122.  
  123. SETCLIP( "FREDCDXLName", CDXLFile )
  124. SETCLIP( "FREDCDXLInterleave", Inter )
  125. SETCLIP( "FREDCDXLSaveType", SaveType )
  126. SETCLIP( "FREDCDXLLockPalette", LockPalette )
  127. SETCLIP( "FREDCDXLAppend", Append)
  128.  
  129. EXIT 0
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.     
  139.  
  140.