@@ -35,22 +35,21 @@ public class ThemeChooserDialog extends DialogComponentProvider {
35
35
public ThemeChooserDialog (ThemeManager themeManager ) {
36
36
super ("Change Theme" );
37
37
this .themeManager = themeManager ;
38
+
38
39
addWorkPanel (buildMainPanel ());
39
40
addOKButton ();
40
- addApplyButton ();
41
41
addCancelButton ();
42
42
setRememberSize (false );
43
43
setHelpLocation (new HelpLocation ("Theming" , "Switch_Theme" ));
44
- updateOkApplyButtons ();
44
+ updateButtonEnablement ();
45
45
}
46
46
47
- private void updateOkApplyButtons () {
47
+ private void updateButtonEnablement () {
48
48
49
49
GTheme selectedValue = listPanel .getSelectedValue ();
50
50
GTheme currentTheme = themeManager .getActiveTheme ();
51
51
boolean canApplyTheme = selectedValue != null && !currentTheme .equals (selectedValue );
52
52
setOkEnabled (canApplyTheme );
53
- setApplyEnabled (canApplyTheme );
54
53
}
55
54
56
55
@ Override
@@ -59,22 +58,12 @@ protected void okCallback() {
59
58
close ();
60
59
}
61
60
62
- @ Override
63
- protected void applyCallback () {
64
- applyTheme ();
65
- }
66
-
67
61
private void applyTheme () {
68
62
GTheme selectedValue = listPanel .getSelectedValue ();
69
- if (selectedValue == null ) {
70
- return ;
71
- }
72
63
GTheme activeTheme = themeManager .getActiveTheme ();
73
- if (selectedValue != activeTheme ) {
64
+ if (selectedValue != null && selectedValue != activeTheme ) {
74
65
Swing .runLater (() -> themeManager .setTheme (selectedValue ));
75
66
}
76
- setOkEnabled (false );
77
- setApplyEnabled (false );
78
67
}
79
68
80
69
protected void cancelCallback () {
@@ -93,12 +82,12 @@ private JComponent buildMainPanel() {
93
82
listPanel .setSelectedValue (activeTheme );
94
83
listPanel .addListSelectionListener (e -> selectionChanged ());
95
84
panel .add (listPanel );
96
-
85
+ listPanel . setDoubleClickActionListener ( e -> okCallback ());
97
86
return panel ;
98
87
}
99
88
100
89
private void selectionChanged () {
101
- updateOkApplyButtons ();
90
+ updateButtonEnablement ();
102
91
}
103
92
104
93
private class ThemeListModel extends AbstractListModel <GTheme > {
0 commit comments