1152
Appendix A: System Routines — Windows
TI
-
89 / TI
-
92 Plus Developer Guide
Not for Distribution
Beta Version January 26, 2001
WinAttr
Declaration:
BYTE
WinAttr
(WINDOW
* w
, BYTE
Attr
)
Category(ies):
Windows
Description:
Set the attribute for the next write to a window (characters or lines).
Inputs:
w
— WINDOW struct of a previously opened window.
Attr
— For characters (
WinChar[XY]
,
WinStr[XY]
) each attribute
affects the background and foreground pixels defining the
character differently:
Attribute Background Foreground
A_NORMAL Unchanged ON
A_REPLACE OFF ON
A_REVERSE ON OFF
A_SHADED OFF Every other pixel on
A_XOR Unchanged XOR’d with destination
For lines, ellipses and pixels (
WinLine[Ext, Rel, To]
,
WinEllipse
,
WinPixSet
) there are three supported attributes:
A_NORMAL Destination pixels turned ON
A_REVERSE Destination pixels turned OFF
A_XOR Source pixels XOR’d with destination pixels
WinLine
,
WinLineRel
, and
WinLineTo
also support A_THICK1
which draws a double thick NORMAL line.
Outputs:
Original attribute for window.
Assumptions:
Note the application of attributes as listed above and that some window
drawing routines (
WinBitmapPut
,
WinFill
,
WinRect
, and
WinFillTriangle
)
have a separate attribute that is passed each time.
Side Effects:
Sets the default attribute for the window until changed.
Availability:
All versions of the TI
-
89 / TI
-
92 Plus.
TI
-
89 / TI
-
92 Plus
Differences
None
See Also: WinChar[XY], WinEllipse, WinLine[Ext, To, Rel], WinPixSet,
WinStr[XY]
Example:
See
WinStr
for an example of using all of the character attributes.
WinAttr( &w, A_NORMAL ); /* normal draw */
WinStrXY( &w, 0, 0, "TEST" ); /* draw string */
GKeyIn( NULL, 0 ); /* wait on user */
WinAttr( &w, A_XOR ); /* XOR draw */
WinStrXY( &w, 0, 0, "TEST" ); /* erase string just drawn */