VMS Help
RTL Routines, SMG$, SMG$DRAW_LINE
*Conan The Librarian (sorry for the slow response - running on an old VAX)
|
|
The Draw a Line routine draws a horizontal or vertical line.
Format
SMG$DRAW_LINE display-id ,start-row ,start-column
,end-row ,end-column [,rendition-set]
[,rendition-complement]
OpenVMS usage:cond_value
type: longword (unsigned)
access: write only
mechanism: by value
display-id
OpenVMS usage:identifier
type: longword (unsigned)
access: read only
mechanism: by reference
Specifies the virtual display on which the line is to be drawn.
The display-id argument is the address of an unsigned longword
that contains the display identifier.
The display identifier is returned by SMG$CREATE_VIRTUAL_DISPLAY.
start-row
OpenVMS usage:longword_signed
type: longword (signed)
access: read only
mechanism: by reference
Specifies the row at which to begin drawing the line. The start-
row argument is the address of a signed longword that contains
the row number at which to begin drawing the line.
start-column
OpenVMS usage:longword_signed
type: longword (signed)
access: read only
mechanism: by reference
Specifies the column at which to begin drawing the line. The
start-column argument is the address of a signed longword that
contains the column number at which to begin drawing the line.
end-row
OpenVMS usage:longword_signed
type: longword (signed)
access: read only
mechanism: by reference
Specifies the row at which the drawn line ends. The end-row
argument is the address of a signed longword that contains the
row number at which the drawn line ends.
end-column
OpenVMS usage:longword_signed
type: longword (signed)
access: read only
mechanism: by reference
Specifies the column at which the drawn line ends. The end-column
argument is the address of a signed longword that contains the
column number at which the drawn line ends.
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
[legal]
[privacy]
[GNU]
[policy]
[netiquette]
[sponsors]
[FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.