package processing.app.contrib; import java.awt.Color; import javax.swing.GroupLayout; import javax.swing.JLabel; import javax.swing.JProgressBar; import processing.app.ui.Toolkit; public class UpdateContributionTab extends ContributionTab { public UpdateContributionTab(ManagerFrame dialog, ContributionType type) { super(); this.contribDialog = dialog; this.contribType = type; filter = new Contribution.Filter() { public boolean matches(Contribution contrib) { if (contrib instanceof LocalContribution) { return ContributionListing.getInstance().hasUpdates(contrib); } return false; } }; contributionListPanel = new UpdateListPanel(this, filter); // contributionListPanel.setBorder(new EmptyBorder(8, 8, 8, 8)); statusPanel = new UpdateStatusPanel(this, 650); contribListing = ContributionListing.getInstance(); contribListing.addListener(contributionListPanel); } @Override protected void setLayout(boolean error, boolean loading) { if (progressBar == null) { progressBar = new JProgressBar(); progressBar.setVisible(false); buildErrorPanel(); loaderLabel = new JLabel(Toolkit.getLibIcon("manager/loader.gif")); loaderLabel.setOpaque(false); // loaderLabel.setBackground(Color.WHITE); } GroupLayout layout = new GroupLayout(this); setLayout(layout); layout.setHorizontalGroup(layout .createParallelGroup(GroupLayout.Alignment.CENTER) .addComponent(loaderLabel) .addComponent(contributionListPanel) .addComponent(errorPanel) .addComponent(statusPanel)); layout.setVerticalGroup(layout .createSequentialGroup() .addGroup(layout.createParallelGroup(GroupLayout.Alignment.CENTER) .addComponent(loaderLabel) .addComponent(contributionListPanel)) .addComponent(errorPanel) .addComponent(statusPanel, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)); layout.setHonorsVisibility(contributionListPanel, false); setBackground(Color.WHITE); } }