01: package org.netbeans.modules.soa.mappercore.utils;
02:
03: import java.awt.Color;
04: import java.awt.Component;
05: import java.awt.Graphics;
06: import java.awt.Insets;
07: import javax.swing.JTextField;
08: import javax.swing.border.Border;
09: import javax.swing.plaf.metal.MetalTextFieldUI;
10:
11: /**
12: *
13: * @author anjeleevich
14: */
15: public class MetalTextFieldBorder implements Border {
16:
17: public void paintBorder(Component c, Graphics g, int x, int y,
18: int width, int height) {
19: Color oldColor = g.getColor();
20: g.setColor(OUTER_COLOR);
21: g.drawRect(x, y, width - 1, height - 1);
22:
23: // g.setColor(INNER_COLOR);
24: // g.drawRect(x + 1, y + 1, width - 3, height - 3);
25:
26: g.setColor(oldColor);
27: }
28:
29: public Insets getBorderInsets(Component c) {
30: return new Insets(1, 4, 1, 4);
31: }
32:
33: public boolean isBorderOpaque() {
34: return false;
35: }
36:
37: public static final void installIfItIsNeeded(JTextField textField) {
38: if (textField.getUI() instanceof MetalTextFieldUI) {
39: textField.setBorder(INSTANCE);
40: }
41: }
42:
43: private static final Color OUTER_COLOR = new Color(0x7A8A99);
44: private static final Color INNER_COLOR = new Color(0xB8CFE5);
45:
46: public static final Border INSTANCE = new MetalTextFieldBorder();
47: }
|