home *** CD-ROM | disk | FTP | other *** search
- /* HightlightBlock */
- /* A little example that renders a highlighted border into the marked
- block in ANSI-Draw */
-
- address ANSIDRAW
- options RESULTS
-
- 'QUERY FILTER_BACKGROUND'
- fb = result
- 'QUERY FILTER_FOREGROUND'
- ff = result
- 'QUERY FILTER_TEXT'
- ft = result
-
- 'QUERY BLOCKSTART_X'
- startx = result
- 'QUERY BLOCKSTART_Y'
- starty = result
- 'QUERY BLOCKSTOP_X'
- stopx = result
- 'QUERY BLOCKSTOP_Y'
- stopy = result
-
- IF RC=0 THEN DO
-
- 'SET FILTER_BACKGROUND'
- 'SET FILTER_FOREGROUND'
- 'SET FILTER_TEXT'
-
- 'LOCK OUTPUT'
- 'LOCK INPUT'
-
- DO j = starty TO stopy
- DO i = startx TO stopx
- 'GO ROW ' j
- 'GO COLUMN ' i
-
- 'SET COLOR_BACKGROUND 0'
- character = 219
- IF j=starty THEN 'SET COLOR_FOREGROUND 14'
- ELSE IF i=startx THEN 'SET COLOR_FOREGROUND 14'
- ELSE IF j=stopy THEN DO
- 'SET COLOR_FOREGROUND 8'
- 'SET COLOR_BACKGROUND 6'
- character = 177
- END
- ELSE IF i=stopx THEN DO
- 'SET COLOR_FOREGROUND 8'
- 'SET COLOR_BACKGROUND 6'
- character = 177
- END
- ELSE DO
- 'SET COLOR_BACKGROUND 6'
- 'SET COLOR_FOREGROUND 7'
- character = 32
- END
- IF character = 32 THEN DO
- 'UNSET FILTER_TEXT'
- 'UNSET FILTER_FOREGROUND'
- END
- ELSE DO
- 'SET FILTER_TEXT'
- 'SET FILTER_FOREGROUND'
- END
-
- 'DRAW CHARACTER ' character
- END i
- END j
-
- 'GO BACKWARD'
- 'UNLOCK INPUT'
- 'UNLOCK OUTPUT'
- 'DRAW SCREEN'
-
- END
- ELSE SAY 'No block marked!'
-
- IF fb=1 THEN 'SET FILTER_BACKGROUND'
- ELSE 'UNSET FILTER_BACKGROUND'
- IF ff=1 THEN 'SET FILTER_FOREGROUND'
- ELSE 'UNSET FILTER_FOREGROUND'
- IF ft=1 THEN 'SET FILTER_TEXT'
- ELSE 'UNSET FILTER_TEXT'
-