package gjt; import java.awt.*; /** * Extension of Border that draws a 3D border. * * Drawn raised by default, drawing style used by paint() is * controlled by raise() and inset(). Note that raise() and * inset() do not result in anything being painted, but only set * the state for the next call to paint(). To set the state and * paint in one operation, use paintRaised() and paintInset(). *

* * The current state of the border may be obtained by calling * isRaised().

* * @version 1.0, Apr 1 1996 * @author David Geary * @see Border * @see EtchedRectangle * @see gjt.test.BorderTest */ public class ThreeDBorder extends Border { public ThreeDBorder(Component borderMe) { this(borderMe, _defaultThickness, _defaultGap); } public ThreeDBorder(Component borderMe, int borderThickness) { this(borderMe, borderThickness, _defaultGap); } public ThreeDBorder(Component borderMe, int borderThickness, int gap) { super(borderMe, borderThickness, gap); } public void inset() { ((ThreeDRectangle)border()).inset(); } public void raise() { ((ThreeDRectangle)border()).raise(); } public void paintRaised() { ((ThreeDRectangle)border()).paintRaised(); } public void paintInset() { ((ThreeDRectangle)border()).paintInset (); } public boolean isRaised() { return ((ThreeDRectangle)border()).isRaised(); } protected DrawnRectangle border() { if(border == null) border = new ThreeDRectangle(this, thickness); return border; } }