INTERFACEAppearances ; <* PRAGMA LL *> IMPORT MG, PaintOp, R2; TYPE Appearance = MG.Appearance; TYPE DropShadow <: DSPublic; DSPublic = Appearance OBJECT color: PaintOp.ColorScheme; delta: R2.T; END;
A DropShadow appearance paints an MG.T twice. First it paints the object offsetting the object's position bydelta
and its color tocolor
. Then it paints the object with its original position and color.
TYPE DropShadowHighlight <: DSHPublic; DSHPublic = DropShadow;
A drop shadow appearance where the drop shadow delta
is scaled by the
object's highlight value. In an animation that changes the highlight
value, the effect is to increase the shadow's width and highlight
increases.
TYPE WeightUnderlay <: WUPublic; WUPublic = Appearance OBJECT weight: REAL; color : PaintOp.ColorScheme; END;
A WeightUnderlay appearance paints an MG.T twice. First it paints the object using weightweight
and colorcolor
. Then it paints the object with its original weight and color.
TYPE WeightUnderlayHighlight <: WUHPublic; WUHPublic = WeightUnderlay;
A WeightUnderlay appearance where the weight underlay weight
is scaled
by the object's highlight value. In an animation that changes the
highlight value, the effect is to widen the underlay as highlight
increases.
TYPE Side = {Left, Right, Top, Bottom}; Sides = SET OF Side; Clipped <: ClippedPublic; ClippedPublic = MG.AppearanceDefault OBJECT sides: Sides := Sides{Side.Left.. Side.Bottom}; END;
A Clipped appearance clips an MG.T proportionally based on the object's highlight value. When highlight = 0, the object is unclipped. When highlight = 1, the object is completely clipped.The clipping rectangle shrinks in from the sides in
self.sides
. If two opposing sides are given, the clipping rectangle shrinks to meet in the middle. Otherwise, the clipping rectangle shrinks toward the opposite side.In an animation that changes the highlight value, the effect is for the shrink as highlight increases.
TYPE ColorLineHighlight <: CLHPublic; CLHPublic = Appearance OBJECT highlightColor: PaintOp.ColorScheme; fromFrom := TRUE; END;
A ColorLineHighlight appearance paints an MG.Line in two colors based on the line's highlight value. In an animation that changes the highlight value, the effect is to change the color of the line starting at one endpoint and moving to the other. If fromFrom is TRUE, then the color change starts at thefrom
endpoint of the line, otherwise it starts at theto
endpoint.It is an error to apply a ColorLineHighlight to an object that isn't a subtype of a MG.Line
END Appearances.