home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / Ascii-Ansi / ADRAW097.LHA / ANSI-Draw / ARexx / HighlightBlock.rexx next >
Encoding:
OS/2 REXX Batch file  |  1995-10-31  |  2.0 KB  |  84 lines

  1. /* HightlightBlock */
  2. /* A little example that renders a highlighted border into the marked 
  3.    block in ANSI-Draw */
  4.  
  5. address ANSIDRAW
  6. options RESULTS
  7.  
  8. 'QUERY FILTER_BACKGROUND'
  9. fb = result
  10. 'QUERY FILTER_FOREGROUND'
  11. ff = result
  12. 'QUERY FILTER_TEXT'
  13. ft = result
  14.  
  15. 'QUERY BLOCKSTART_X'
  16. startx = result
  17. 'QUERY BLOCKSTART_Y'
  18. starty = result
  19. 'QUERY BLOCKSTOP_X'
  20. stopx = result
  21. 'QUERY BLOCKSTOP_Y'
  22. stopy = result
  23.  
  24. IF RC=0 THEN DO
  25.  
  26.    'SET FILTER_BACKGROUND'
  27.    'SET FILTER_FOREGROUND'
  28.    'SET FILTER_TEXT'
  29.  
  30.    'LOCK OUTPUT'
  31.    'LOCK INPUT'
  32.  
  33.    DO j = starty TO stopy
  34.       DO i = startx TO stopx
  35.          'GO ROW ' j
  36.          'GO COLUMN ' i
  37.  
  38.          'SET COLOR_BACKGROUND 0'   
  39.          character = 219
  40.          IF j=starty THEN 'SET COLOR_FOREGROUND 14'
  41.          ELSE IF i=startx THEN 'SET COLOR_FOREGROUND 14'
  42.          ELSE IF j=stopy THEN DO
  43.                                  'SET COLOR_FOREGROUND 8'
  44.                                  'SET COLOR_BACKGROUND 6'
  45.                                  character = 177
  46.                                  END
  47.          ELSE IF i=stopx THEN DO
  48.                                  'SET COLOR_FOREGROUND 8'
  49.                                  'SET COLOR_BACKGROUND 6'
  50.                                  character = 177
  51.                                  END
  52.          ELSE DO 
  53.                   'SET COLOR_BACKGROUND 6'
  54.                   'SET COLOR_FOREGROUND 7'
  55.                   character = 32
  56.                   END
  57.          IF character = 32 THEN DO
  58.                                  'UNSET FILTER_TEXT'
  59.                                  'UNSET FILTER_FOREGROUND'
  60.                                  END
  61.          ELSE DO
  62.                'SET FILTER_TEXT'
  63.                'SET FILTER_FOREGROUND'
  64.                END
  65.  
  66.          'DRAW CHARACTER ' character
  67.          END i
  68.       END j
  69.  
  70.    'GO BACKWARD'
  71.    'UNLOCK INPUT'
  72.    'UNLOCK OUTPUT'
  73.    'DRAW SCREEN'
  74.  
  75. END
  76. ELSE SAY 'No block marked!'
  77.  
  78. IF fb=1 THEN 'SET FILTER_BACKGROUND'
  79. ELSE 'UNSET FILTER_BACKGROUND'
  80. IF ff=1 THEN 'SET FILTER_FOREGROUND'
  81. ELSE 'UNSET FILTER_FOREGROUND'
  82. IF ft=1 THEN 'SET FILTER_TEXT'
  83. ELSE 'UNSET FILTER_TEXT'
  84.