Release 10.1A: OpenEdge Development:
Progress 4GL Reference

> ## COLOR statement

> Indicates the video attribute or color for normal display or for data entry.

> Note: Does not apply to SpeedScript programming.

> #### Syntax

>     COLOR [ DISPLAY ] color-phrase [ PROMPT color-phrase ]
>            { field ... } { [ frame-phrase ] }

>     COLOR PROMPT color-phrase
>           { field ... } { [ frame-phrase ] }

> `DISPLAY`

> Indicates that you want to use a specific color when the system displays a field.

> `PROMPT`

> Indicates that you want to use a specific color when the system prompts a user for input by an INSERT, PROMPT-FOR, SET, or UPDATE statement.

> ``color-phrase``

> Specifies a video attribute or color. Following is the syntax for `color-phrase`:

>     {     NORMAL
>        |  INPUT
>        |  MESSAGES
>        |  protermcap-attribute
>        |  dos-hex-attribute
>        |  { [ BLINK- ] [ BRIGHT- ]
>              [ fgnd-color ] [ bgnd-color ]
>            }
>        |  { [ BLINK- ] [ RVV- ] [ UNDERLINE- ] [ BRIGHT- ]
>              [ fgnd-color ]
>            }
>        |  VALUE ( expression )
>     }

> For more information on `color-phrase`, see the COLOR phrase reference entry. Progress ignores the `color-phrase` entry for overlay frames on spacetaking terminals.

> ``field``

> The name of the field or fields for which you want to override the default colors.

> ``frame-phrase``

> Specifies the overall layout and processing properties of a frame. For more information see the Frame phrase reference entry.

> Example

> This procedure highlights the item number and on-hand fields for items with an on-hand value less than 50. The variable hilite holds the video attribute (color) for highlighting. In this case, the system uses whatever attribute is used for the message area (such as reverse video, bright, or a color).

> r-color.p
>     DEFINE VARIABLE hilite AS CHARACTER.hilite = "messages".

>       /* Use standard messages attribute to
>         highlight on-hand less than 50 */
>     FOR EACH item:
>       DISPLAY item-num item-name on-hand WITH ATTR-SPACE.
>       IF on-hand < 50 THEN
>         COLOR DISPLAY VALUE(hilite) item-num on-hand.
>     END.

> #### Notes

> - When the output destination is not the terminal, Progress disregards the COLOR statement.

> - The COLOR statement does not automatically display a frame whose field’s color attribute is changing.

> - Use one of these statements to reset a field to the Progress default colors:

>     COLOR DISPLAY NORMAL PROMPT INPUT field

> Or

>     COLOR DISPLAY NORMAL PROMPT INPUT field WITH FRAME frame

> - If you run precompiled procedures on a spacetaking terminal, you must specify the frame field where a color or other video attribute is applied as, or is by default, ATTR-SPACE.

> - If you write a procedure (for a non-spacetaking terminal) that uses color and you run it on a spacetaking terminal, Progress does not display the colors. To display the colors, you must use the ATTR-SPACE option.

> - Certain terminals, such as the WYSE 75, are non-spacetaking for some attributes and spacetaking for others.

> - On UNIX, if you specify a color or video attribute that is not defined for the terminal, Progress uses normal display instead.

> #### See also

> COLOR phrase, DISPLAY statement, Frame phrase

Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095