1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.xnap.gui.theme;
21
22 import javax.swing.plaf.metal.MetalLookAndFeel;
23 import javax.swing.plaf.metal.MetalTheme;
24
25 import java.awt.Component;
26
27 /***
28 * This class provides a theme that wraps an existing {@link MetalTheme}.
29 */
30 public class MetalThemeWrapper implements Theme {
31
32
33
34
35
36 private MetalTheme theme;
37
38
39
40 public MetalThemeWrapper(MetalTheme theme)
41 {
42 this.theme = theme;
43 }
44
45
46
47 public void install()
48 {
49 MetalLookAndFeel.setCurrentTheme(getTheme());
50 }
51
52 /***
53 * Returns the class name of the theme.
54 */
55 public String getClassName()
56 {
57 return getTheme().getClass().getName();
58 }
59
60 /***
61 * Returns the name theme.
62 */
63 public String getName()
64 {
65 return getTheme().getName();
66 }
67
68 public MetalTheme getTheme()
69 {
70 return theme;
71 }
72
73 /***
74 * Returns false.
75 */
76 public boolean isConfigurable()
77 {
78 return false;
79 }
80
81 /***
82 * Returns false.
83 */
84 public boolean isIconTheme()
85 {
86 return false;
87 }
88
89 /***
90 * Does nothing.
91 */
92 public boolean showConfigurationDialog(Component parent)
93 {
94 return false;
95 }
96
97 public String toString()
98 {
99 return getName();
100 }
101
102 }