Revert "Fixed selectors in Boards Manager"

This reverts commit e19cf4d1a15f70c99f64769cedc2fe2b0bc24841.
This commit is contained in:
Federico Fissore 2015-03-12 17:16:46 +01:00
parent 6d55c6ea03
commit 631bf76c76
1 changed files with 32 additions and 25 deletions

View File

@ -28,36 +28,27 @@
*/
package cc.arduino.packages.contributions.ui;
import static processing.app.I18n._;
import static processing.app.I18n.format;
import cc.arduino.packages.contributions.ContributedBoard;
import cc.arduino.packages.contributions.ContributedPlatform;
import cc.arduino.packages.contributions.ui.ContributionIndexTableModel.ContributedPlatformReleases;
import cc.arduino.ui.InstallerTableCell;
import processing.app.Base;
import java.awt.Color;
import java.awt.Component;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTable;
import javax.swing.JTextPane;
import javax.swing.Timer;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
import javax.swing.event.HyperlinkEvent;
import javax.swing.event.HyperlinkListener;
import javax.swing.text.Document;
import javax.swing.text.html.HTMLDocument;
import javax.swing.text.html.StyleSheet;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import processing.app.Base;
import cc.arduino.packages.contributions.ContributedBoard;
import cc.arduino.packages.contributions.ContributedPlatform;
import cc.arduino.packages.contributions.ui.ContributionIndexTableModel.ContributedPlatformReleases;
import cc.arduino.ui.InstallerTableCell;
import static processing.app.I18n._;
import static processing.app.I18n.format;
@SuppressWarnings("serial")
public class ContributedPlatformTableCell extends InstallerTableCell {
@ -103,7 +94,7 @@ public class ContributedPlatformTableCell extends InstallerTableCell {
}
});
installButton = new JButton(_("Update"));
installButton = new JButton(_("Install"));
installButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
@ -132,6 +123,14 @@ public class ContributedPlatformTableCell extends InstallerTableCell {
downgradeChooser = new JComboBox();
downgradeChooser.addItem("-");
downgradeChooser.setMaximumSize(downgradeChooser.getPreferredSize());
downgradeChooser.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
Object selectVersionItem = downgradeChooser.getItemAt(0);
boolean disableDowngrade = (e.getItem() == selectVersionItem);
downgradeButton.setEnabled(!disableDowngrade);
}
});
panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
@ -219,6 +218,7 @@ public class ContributedPlatformTableCell extends InstallerTableCell {
setEnabled(true);
downgradeChooser.removeAllItems();
downgradeChooser.addItem(_("Select version"));
boolean visible = false;
for (ContributedPlatform release : editorValue.releases) {
if (release.isInstalled())
@ -240,16 +240,23 @@ public class ContributedPlatformTableCell extends InstallerTableCell {
ContributedPlatform selectedPlatform = releases.getSelected();
ContributedPlatform installedPlatform = releases.getInstalled();
boolean removable, upgradable;
boolean removable, installable, upgradable;
if (installedPlatform == null) {
installable = true;
removable = false;
upgradable = false;
} else {
installable = false;
removable = true;
upgradable = (selectedPlatform != installedPlatform);
}
installButton.setVisible(upgradable);
if (installable)
installButton.setText(_("Install"));
if (upgradable)
installButton.setText(_("Upgrade"));
installButton.setVisible(installable || upgradable);
removeButton.setVisible(removable);
removeButtonStrut.setVisible(removable);