home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / GFX / viewer / hf-pv204.lha / PicView20 / PicViewAddOne.lha / Rexx / MakeAscii.rexx next >
Encoding:
OS/2 REXX Batch file  |  1996-07-30  |  2.6 KB  |  111 lines

  1. /*********************************************************/
  2. /* MakeAscii.rexx       $VER: 1.2 (1.8.96)  for PicView  */
  3. /* (C) 1996 Maik Solf            solf@madhouse.boerde.de */
  4. /* Im collecting handdrawn pictures, contact me 2 swap   */
  5. /*********************************************************/
  6.  
  7. OPTIONS RESULTS
  8. ADDRESS 'PICVIEW.1'
  9.  
  10. /* open rexxreqtools.library */
  11. IF ~SHOW('L',"rexxreqtools.library") THEN
  12.    IF ~ADDLIB("rexxreqtools.library", 0, -30, 0) THEN
  13.       EXIT 10
  14.  
  15. /* Vars */
  16. Enter='0a'x
  17. DEnter=Enter || Enter
  18.  
  19. /* User-Options */
  20. YourName='Maik Solf'
  21. Titel='Pictures from' YourName ||  Enter || '-----------------------' || DEnter
  22.  
  23. /* get DefDir without */
  24. DefDirFilename='PICVIEW:DefDirMakeAscii'
  25.  
  26. IF OPEN(handle,DefDirFilename,'R')=0 THEN DefDir='RAM:'
  27.                                      ELSE DefDir=READLN(handle)
  28. CLOSE(handle)
  29.  
  30. /* number of pictures */
  31. getentries
  32. Number=RESULT
  33. IF Number=0 THEN DO
  34.    rtezrequest('No pictures in current catalog.' , , 'MakeAscii.rexx' )
  35.    EXIT 5
  36. END
  37.  
  38. /* get filename */
  39. Filename=rtfilerequest(DefDir, , "Select File" , , , )
  40. IF rtresult==0 THEN DO
  41.    CALL rtezrequest('You didnt pick a file.' , , 'MakeAscii.rexx' )
  42.    EXIT 20
  43. END
  44.  
  45. /* parse Filename -> DefDir + File */
  46. DirEnd=1
  47. DO i=1 TO LENGTH(Filename)
  48.    IF SUBSTR(Filename,i,1)=':' THEN DirEnd=i
  49.    IF SUBSTR(Filename,i,1)='/' THEN DirEnd=i
  50. END
  51. DefDir=SUBSTR(Filename,1,DirEnd-1)
  52.  
  53. /* store DefDir */
  54. IF OPEN(handle,DefDirFilename,'W')~=0 THEN WRITELN(handle,DefDir)
  55. CLOSE(handle)
  56.  
  57. /* open file */
  58. IF OPEN(Handle,Filename,'W')=0 THEN DO
  59.    rtezrequest('Couldnt open file.' , , 'MakeAscii.rexx' )
  60.    EXIT 20
  61. END
  62.  
  63. /* write titel */
  64. WRITELN(Handle,Titel)
  65.  
  66. DO i=0 TO Number-1
  67. /* get data of picture */
  68.    /* no parse because Space */
  69.    getpicdata i data name
  70.    NA=RESULT
  71.    getpicdata i data path
  72.    PA=RESULT
  73.    getpicdata i data file
  74.    FI=RESULT
  75.    getpicdata i data comment
  76.    CM=RESULT
  77.    getpicdata i data modetext
  78.    MT=RESULT
  79.    /* parse possible */
  80.    getpicdata i data weekday date time width height depth size format modeid
  81.    PARSE VAR RESULT WD DA TI WI HE DP SI FM MI
  82. /* convert to output */
  83.    CALL UP_Format
  84. /* write to ascii */
  85.    WRITELN(Handle,Entry)
  86. END
  87.  
  88. IF Number=1
  89.    THEN Ende=Number 'picture'
  90.    ELSE Ende=Number 'pictures'
  91.  
  92. WRITELN(Handle,Ende)
  93.  
  94. CLOSE(handle)
  95.  
  96. Ende=Ende 'saved as ascii.'
  97.  
  98. rtezrequest(Ende , , 'MakeAscii.rexx' )
  99.  
  100. EXIT 0
  101.  
  102. UP_Format:
  103. /* chance your output */
  104.     Entry=''
  105.     Entry=Entry || 'Name   :' NA || Enter
  106.     Entry=Entry || 'Width  :' WI || Enter
  107.     Entry=Entry || 'Height :' HE || Enter
  108.     Entry=Entry || 'Depth  :' DP || Enter
  109.     Entry=Entry || 'Mode   :' MT || Enter
  110. RETURN
  111.