diff --git a/modules/DesktopImport/src/main/java/org/gephi/desktop/importer/ReportPanel.java b/modules/DesktopImport/src/main/java/org/gephi/desktop/importer/ReportPanel.java index 69b5b20261acf2b7e1579ca69017fc3d68df005c..b56440165f11c14e5ff76166bcd00b882a3b8e87 100644 --- a/modules/DesktopImport/src/main/java/org/gephi/desktop/importer/ReportPanel.java +++ b/modules/DesktopImport/src/main/java/org/gephi/desktop/importer/ReportPanel.java @@ -444,13 +444,10 @@ public class ReportPanel extends javax.swing.JPanel { private void initProcessors() { int i = 0; - Collection processors = Lookup.getDefault().lookupAll(Processor.class); - for (Processor processor : processors) { + for (Processor processor : Lookup.getDefault().lookupAll(Processor.class)) { JRadioButton radio = new JRadioButton(processor.getDisplayName()); radio.putClientProperty(PROCESSOR_KEY, processor); processorGroup.add(radio); - GridBagConstraints constraints = new GridBagConstraints(0, i++, 1, 1, 0, (i == processors.size() ? 1.0 : 0.0), GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0); - processorPanel.add(radio, constraints); } } @@ -459,7 +456,8 @@ public class ReportPanel extends javax.swing.JPanel { @Override public void run() { - boolean first = true; + + List validButtons = new ArrayList(); for (Enumeration enumeration = processorGroup.getElements(); enumeration.hasMoreElements();) { AbstractButton radioButton = enumeration.nextElement(); Processor p = (Processor) radioButton.getClientProperty(PROCESSOR_KEY); @@ -467,13 +465,18 @@ public class ReportPanel extends javax.swing.JPanel { ProcessorUI pui = getProcessorUI(p); if (pui != null) { boolean isValid = pui.isValid(containers); - radioButton.setVisible(isValid); if (isValid) { - radioButton.setSelected(first); - first = false; + validButtons.add(radioButton); } } } + + int i = 0; + for (AbstractButton radio : validButtons) { + radio.setSelected(i == 0); + GridBagConstraints constraints = new GridBagConstraints(0, i++, 1, 1, 0, (i == validButtons.size() ? 1.0 : 0.0), GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0); + processorPanel.add(radio, constraints); + } } }); }