Copyright (C) 1994, Digital Equipment Corp.
File: TextureVBT.i3, coded by cgn Thu Apr 30 14:28:28 1987
<*PRAGMA LL*>A
TextureVBT.T is a VBT that displays a texture, possibly
colored. Its preferred and minimum sizes are zero and its maximum
size is very large, in each axis.
INTERFACEThe callTextureVBT ; IMPORT VBT, PaintOp, Pixmap; TYPE T <: Public; Public = VBT.Leaf OBJECT METHODS <* LL.sup <= VBT.mu *> init(op: PaintOp.T := PaintOp.BgFg; txt: Pixmap.T := Pixmap.Solid; nwAlign: BOOLEAN := FALSE): T END;
v.init(...) initializes v as a TextureVBT
displaying txt with the painting operation op.
The domain of v will be painted using the painting operation op
and the texture txt+delta, where delta is the origin unless
nwAlign is set to TRUE, in which case delta will be set to
the northwest corner of v.
PROCEDURE New( op: PaintOp.T := PaintOp.BgFg; txt: Pixmap.T := Pixmap.Solid; nwAlign: BOOLEAN := FALSE): T; <* LL.sup <= VBT.mu *>
New(...)is equivalent toNEW(T).init(...).
PROCEDURE Set( v: T; op: PaintOp.T := PaintOp.BgFg; txt: Pixmap.T := Pixmap.Solid; nwAlign: BOOLEAN := FALSE); <* LL.sup = VBT.mu *>
Change v's texture and mark it for redisplay. PROCEDURE Get( v: T; VAR op: PaintOp.T; VAR txt: Pixmap.T; VAR nwAlign: BOOLEAN); <* LL.sup = VBT.mu *>
Fetch v's texture. END TextureVBT.