VMS Help  —  RTL Routines, SMG$  SMG$DRAW_CHAR
    The Draw a Character in a Virtual Display routine draws a
    character at the specified position in a virtual display.

    Format

      SMG$DRAW_CHAR  display-id ,flags [,row] [,column]

                     [,rendition-set] [,rendition-complement]

1  –  Returns

    OpenVMS usage:cond_value
    type:         longword (unsigned)
    access:       write only
    mechanism:    by value

2  –  Arguments

 display-id

    OpenVMS usage:identifier
    type:         longword (unsigned)
    access:       read only
    mechanism:    by reference

    Identifier of the virtual display. The display-id argument is the
    address of an unsigned longword containing this identifier.

 flags

    OpenVMS usage:mask_longword
    type:         longword (unsigned)
    access:       read only
    mechanism:    by reference

    Optional bit mask indicating the character to be drawn. The flags
    argument is the address of an unsigned longword that contains the
    flag. The flags argument accepts the following character values:

    o  SMG$M_UP

    o  SMG$M_DOWN

    o  SMG$M_LEFT

    o  SMG$M_RIGHT

    Note that you may perform a logical OR operation to draw T
    characters, corner characters, cross characters, and so forth.
    A value of 0 draws a diamond character.

 row

    OpenVMS usage:longword_signed
    type:         longword (signed)
    access:       read only
    mechanism:    by reference

    Optional row number specifying the row position at which the
    specified character is drawn. The row argument is the address of
    a signed longword containing the row number. If row is omitted,
    the character is drawn at the row position of the current virtual
    cursor.

 column

    OpenVMS usage:longword_signed
    type:         longword (signed)
    access:       read only
    mechanism:    by reference

    Optional column number specifying the column position at which
    the specified character is drawn. The column argument is the
    address of a signed longword containing the column number. If
    column is omitted, the character is drawn at the column position
    of the current virtual cursor.

 rendition-set

    OpenVMS usage:mask_longword
    type:         longword (unsigned)
    access:       read only
    mechanism:    by reference

    Attribute specifier. The optional rendition-set argument is
    the address of a longword bit mask in which each attribute set
    causes the corresponding attribute to be set in the display. The
    following attributes can be specified using the rendition-set
    argument:

    SMG$M_BLINK     Displays blinking characters.
    SMG$M_BOLD      Displays characters in higher-than-normal
                    intensity.
    SMG$M_REVERSE   Displays characters in reverse video; that is,
                    using the opposite of the default rendition of
                    the virtual display.
    SMG$M_          Displays underlined characters.
    UNDERLINE
    SMG$M_          Specifies invisible characters; that is, the
    INVISIBLE       characters exist in the virtual display but do
                    not appear on the pasteboard.
    SMG$M_USER1     Displays user-defined attributes.
    through
    SMG$M_USER8

    The display-id argument must be specified when you use the
    rendition-set argument.

 rendition-complement

    OpenVMS usage:mask_longword
    type:         longword (unsigned)
    access:       read only
    mechanism:    by reference

    Attribute complement specifier. The optional rendition-
    complement argument is the address of a longword bit mask in
    which each attribute set causes the corresponding attribute to
    be complemented in the display. All of the attributes that can
    be specified with the rendition-set argument can be complemented
    with the rendition-complement argument. The display-id argument
    must be specified when you use the rendition-complement argument.

    The optional arguments rendition-set and rendition-complement
    let the user control the attributes of the virtual display. The
    rendition-set argument sets certain virtual display attributes,
    while rendition-complement complements these attributes. If the
    same bit is specified in both the rendition-set and rendition-
    complement parameters, rendition-set is evaluated first, followed
    by rendition-complement. By using these two parameters together,
    the user can control each virtual display attribute in a single
    procedure call. On a single-attribute basis, the user can cause
    the following transformations:

    Set  Complement Action

    0    0          Attribute set to default
    1    0          Attribute on
    0    1          Attribute set to complement of default setting
    1    1          Attribute off
Close Help