39 |
package javax.swing.plaf.metal; |
package javax.swing.plaf.metal; |
40 |
|
|
41 |
import java.awt.Color; |
import java.awt.Color; |
|
import java.util.HashMap; |
|
42 |
|
|
43 |
import javax.swing.JComponent; |
import javax.swing.JComponent; |
44 |
|
import javax.swing.JSplitPane; |
45 |
import javax.swing.UIDefaults; |
import javax.swing.UIDefaults; |
46 |
import javax.swing.UIManager; |
import javax.swing.UIManager; |
47 |
import javax.swing.plaf.ComponentUI; |
import javax.swing.plaf.ComponentUI; |
|
import javax.swing.plaf.basic.BasicSplitPaneUI; |
|
48 |
import javax.swing.plaf.basic.BasicSplitPaneDivider; |
import javax.swing.plaf.basic.BasicSplitPaneDivider; |
49 |
|
import javax.swing.plaf.basic.BasicSplitPaneUI; |
50 |
|
|
51 |
public class MetalSplitPaneUI |
/** |
52 |
extends BasicSplitPaneUI |
* A UI delegate for the {@link JSplitPane} component. |
53 |
|
*/ |
54 |
|
public class MetalSplitPaneUI extends BasicSplitPaneUI |
55 |
{ |
{ |
|
|
|
|
/** The UI instances for MetalSplitPaneUIs */ |
|
|
private static HashMap instances; |
|
|
|
|
56 |
/** |
/** |
57 |
* Constructs a new instance of MetalSplitPaneUI. |
* Constructs a new instance of <code>MetalSplitPaneUI</code>. |
58 |
*/ |
*/ |
59 |
public MetalSplitPaneUI() |
public MetalSplitPaneUI() |
60 |
{ |
{ |
62 |
} |
} |
63 |
|
|
64 |
/** |
/** |
65 |
* Returns an instance of MetalSplitPaneUI. |
* Returns a new instance of <code>MetalSplitPaneUI</code>. |
66 |
* |
* |
67 |
* @param component the component for which we return an UI instance |
* @param component the component for which we return an UI instance |
68 |
* |
* |
69 |
* @return an instance of MetalSplitPaneUI |
* @return A new instance of <code>MetalSplitPaneUI</code>. |
70 |
*/ |
*/ |
71 |
public static ComponentUI createUI(JComponent component) |
public static ComponentUI createUI(JComponent component) |
72 |
{ |
{ |
73 |
if (instances == null) |
return new MetalSplitPaneUI(); |
|
instances = new HashMap(); |
|
|
|
|
|
Object o = instances.get(component); |
|
|
MetalSplitPaneUI instance; |
|
|
if (o == null) |
|
|
{ |
|
|
instance = new MetalSplitPaneUI(); |
|
|
instances.put(component, instance); |
|
|
} |
|
|
else |
|
|
instance = (MetalSplitPaneUI) o; |
|
|
|
|
|
return instance; |
|
74 |
} |
} |
75 |
|
|
76 |
/** |
/** |