35
35
import java .awt .Component ;
36
36
import java .util .Collections ;
37
37
import java .util .LinkedList ;
38
+ import java .util .List ;
38
39
import java .util .stream .Collectors ;
39
40
40
41
import javax .swing .JTable ;
50
51
@ SuppressWarnings ("serial" )
51
52
public class ContributedPlatformTableCellEditor extends InstallerTableCell {
52
53
53
- private ContributedPlatformTableCell editorCell ;
54
- private ContributedPlatformReleases editorValue ;
54
+ private ContributedPlatformTableCell cell ;
55
+ private ContributedPlatformReleases value ;
55
56
56
57
@ Override
57
58
public Object getCellEditorValue () {
58
- return editorValue ;
59
+ return value ;
59
60
}
60
61
61
62
@ Override
62
- public Component getTableCellEditorComponent (JTable table , Object value ,
63
+ public Component getTableCellEditorComponent (JTable table , Object _value ,
63
64
boolean isSelected , int row ,
64
65
int column ) {
65
- editorCell = new ContributedPlatformTableCell () ;
66
- editorCell . installButton
67
- . addActionListener ( e -> onInstall ( editorValue . getSelected (),
68
- editorValue . getInstalled ()));
69
- editorCell . removeButton
70
- . addActionListener (e -> onRemove (editorValue .getInstalled ()));
71
- editorCell .downgradeButton .addActionListener (e -> {
72
- ContributedPlatform selected = (ContributedPlatform ) editorCell .downgradeChooser
66
+ value = ( ContributedPlatformReleases ) _value ;
67
+
68
+ cell = new ContributedPlatformTableCell ();
69
+ cell . installButton . addActionListener ( e -> onInstall ( value . getSelected (),
70
+ value . getInstalled ()));
71
+ cell . removeButton . addActionListener (e -> onRemove (value .getInstalled ()));
72
+ cell .downgradeButton .addActionListener (e -> {
73
+ ContributedPlatform selected = (ContributedPlatform ) cell .downgradeChooser
73
74
.getSelectedItem ();
74
- onInstall (selected , editorValue .getInstalled ());
75
+ onInstall (selected , value .getInstalled ());
75
76
});
76
- editorCell .versionToInstallChooser .addItemListener (e -> editorValue
77
- .select ((ContributedPlatform ) editorCell .versionToInstallChooser
77
+ cell .versionToInstallChooser .addItemListener (e -> value
78
+ .select ((ContributedPlatform ) cell .versionToInstallChooser
78
79
.getSelectedItem ()));
79
80
80
- editorValue = (ContributedPlatformReleases ) value ;
81
81
setEnabled (true );
82
82
83
- final ContributedPlatform installed = editorValue .getInstalled ();
83
+ final ContributedPlatform installed = value .getInstalled ();
84
84
85
- java .util .List <ContributedPlatform > releases = new LinkedList <>(
86
- editorValue .releases );
87
- java .util .List <ContributedPlatform > uninstalledReleases = releases .stream ()
85
+ List <ContributedPlatform > releases = new LinkedList <>(value .releases );
86
+ List <ContributedPlatform > uninstalledReleases = releases .stream ()
88
87
.filter (new InstalledPredicate ().negate ()).collect (Collectors .toList ());
89
88
90
- java . util . List <ContributedPlatform > installedBuiltIn = releases .stream ()
89
+ List <ContributedPlatform > installedBuiltIn = releases .stream ()
91
90
.filter (new InstalledPredicate ()).filter (new BuiltInPredicate ())
92
91
.collect (Collectors .toList ());
93
92
@@ -98,11 +97,11 @@ public Component getTableCellEditorComponent(JTable table, Object value,
98
97
Collections .sort (uninstalledReleases , new ReverseComparator <>(
99
98
new DownloadableContributionVersionComparator ()));
100
99
101
- editorCell .downgradeChooser .removeAllItems ();
102
- editorCell .downgradeChooser .addItem (tr ("Select version" ));
100
+ cell .downgradeChooser .removeAllItems ();
101
+ cell .downgradeChooser .addItem (tr ("Select version" ));
103
102
104
- final java . util . List <ContributedPlatform > uninstalledPreviousReleases = new LinkedList <>();
105
- final java . util . List <ContributedPlatform > uninstalledNewerReleases = new LinkedList <>();
103
+ final List <ContributedPlatform > uninstalledPreviousReleases = new LinkedList <>();
104
+ final List <ContributedPlatform > uninstalledNewerReleases = new LinkedList <>();
106
105
107
106
final VersionComparator versionComparator = new VersionComparator ();
108
107
uninstalledReleases .stream ().forEach (input -> {
@@ -114,35 +113,32 @@ public Component getTableCellEditorComponent(JTable table, Object value,
114
113
uninstalledNewerReleases .add (input );
115
114
}
116
115
});
117
- uninstalledNewerReleases .forEach (editorCell .downgradeChooser ::addItem );
118
- uninstalledPreviousReleases .forEach (editorCell .downgradeChooser ::addItem );
119
-
120
- editorCell .downgradeChooser
121
- .setVisible (installed != null
122
- && (!uninstalledPreviousReleases .isEmpty ()
123
- || uninstalledNewerReleases .size () > 1 ));
124
- editorCell .downgradeButton
125
- .setVisible (installed != null
126
- && (!uninstalledPreviousReleases .isEmpty ()
127
- || uninstalledNewerReleases .size () > 1 ));
128
-
129
- editorCell .versionToInstallChooser .removeAllItems ();
130
- uninstalledReleases .forEach (editorCell .versionToInstallChooser ::addItem );
131
- editorCell .versionToInstallChooser
116
+ uninstalledNewerReleases .forEach (cell .downgradeChooser ::addItem );
117
+ uninstalledPreviousReleases .forEach (cell .downgradeChooser ::addItem );
118
+
119
+ boolean downgradeVisible = installed != null
120
+ && (!uninstalledPreviousReleases .isEmpty ()
121
+ || uninstalledNewerReleases .size () > 1 );
122
+ cell .downgradeChooser .setVisible (downgradeVisible );
123
+ cell .downgradeButton .setVisible (downgradeVisible );
124
+
125
+ cell .versionToInstallChooser .removeAllItems ();
126
+ uninstalledReleases .forEach (cell .versionToInstallChooser ::addItem );
127
+ cell .versionToInstallChooser
132
128
.setVisible (installed == null && uninstalledReleases .size () > 1 );
133
129
134
- editorCell .update (table , value , true , !installedBuiltIn .isEmpty ());
135
- editorCell .setBackground (new Color (218 , 227 , 227 )); // #dae3e3
136
- return editorCell ;
130
+ cell .update (table , _value , true , !installedBuiltIn .isEmpty ());
131
+ cell .setBackground (new Color (218 , 227 , 227 )); // #dae3e3
132
+ return cell ;
137
133
}
138
134
139
135
@ Override
140
136
public void setEnabled (boolean enabled ) {
141
- editorCell .setButtonsVisible (enabled );
137
+ cell .setButtonsVisible (enabled );
142
138
}
143
139
144
140
public void setStatus (String status ) {
145
- editorCell .statusLabel .setText (status );
141
+ cell .statusLabel .setText (status );
146
142
}
147
143
148
144
protected void onRemove (ContributedPlatform contributedPlatform ) {
0 commit comments