26
27 import java.awt.Graphics;
28 import java.awt.Insets;
29 import java.awt.Rectangle;
30 import java.awt.Component;
31
32 /**
33 * Interface describing an object capable of rendering a border
34 * around the edges of a swing component.
35 * For examples of using borders see
36 * <a href="http://docs.oracle.com/javase/tutorial/uiswing/components/border.html">How to Use Borders</a>,
37 * a section in <em>The Java Tutorial.</em>
38 * <p>
39 * In the Swing component set, borders supercede Insets as the
40 * mechanism for creating a (decorated or plain) area around the
41 * edge of a component.
42 * <p>
43 * Usage Notes:
44 * <ul>
45 * <li>Use EmptyBorder to create a plain border (this mechanism
46 * replaces its predecessor, <code>setInsets</code>).
47 * <li>Use CompoundBorder to nest multiple border objects, creating
48 * a single, combined border.
49 * <li>Border instances are designed to be shared. Rather than creating
50 * a new border object using one of border classes, use the
51 * BorderFactory methods, which produces a shared instance of the
52 * common border types.
53 * <li>Additional border styles include BevelBorder, SoftBevelBorder,
54 * EtchedBorder, LineBorder, TitledBorder, and MatteBorder.
55 * <li>To create a new border class, subclass AbstractBorder.
56 * </ul>
57 *
58 * @author David Kloba
59 * @author Amy Fowler
60 * @see javax.swing.BorderFactory
61 * @see EmptyBorder
62 * @see CompoundBorder
63 */
64 public interface Border
65 {
66 /**
|
26
27 import java.awt.Graphics;
28 import java.awt.Insets;
29 import java.awt.Rectangle;
30 import java.awt.Component;
31
32 /**
33 * Interface describing an object capable of rendering a border
34 * around the edges of a swing component.
35 * For examples of using borders see
36 * <a href="http://docs.oracle.com/javase/tutorial/uiswing/components/border.html">How to Use Borders</a>,
37 * a section in <em>The Java Tutorial.</em>
38 * <p>
39 * In the Swing component set, borders supercede Insets as the
40 * mechanism for creating a (decorated or plain) area around the
41 * edge of a component.
42 * <p>
43 * Usage Notes:
44 * <ul>
45 * <li>Use EmptyBorder to create a plain border (this mechanism
46 * replaces its predecessor, {@code setInsets}).
47 * <li>Use CompoundBorder to nest multiple border objects, creating
48 * a single, combined border.
49 * <li>Border instances are designed to be shared. Rather than creating
50 * a new border object using one of border classes, use the
51 * BorderFactory methods, which produces a shared instance of the
52 * common border types.
53 * <li>Additional border styles include BevelBorder, SoftBevelBorder,
54 * EtchedBorder, LineBorder, TitledBorder, and MatteBorder.
55 * <li>To create a new border class, subclass AbstractBorder.
56 * </ul>
57 *
58 * @author David Kloba
59 * @author Amy Fowler
60 * @see javax.swing.BorderFactory
61 * @see EmptyBorder
62 * @see CompoundBorder
63 */
64 public interface Border
65 {
66 /**
|