private void setSourceProductSelectorToolTipTexts() { for (SourceProductDescriptor descriptor : sourceProductSelectorMap.keySet()) { final String description = descriptor.getDescription(); if (description != null) { final SourceProductSelector selector = sourceProductSelectorMap.get(descriptor); selector.getProductNameComboBox().setToolTipText(description); } } }
private JPanel createSourceProductPanel() { final JPanel masterPanel = new JPanel(new BorderLayout(3, 3)); masterPanel.add(masterProductSelector.getProductNameLabel(), BorderLayout.NORTH); masterProductSelector.getProductNameComboBox().setPrototypeDisplayValue( "MER_RR__1PPBCM20030730_071000_000003972018_00321_07389_0000.N1"); masterPanel.add(masterProductSelector.getProductNameComboBox(), BorderLayout.CENTER); masterPanel.add(masterProductSelector.getProductFileChooserButton(), BorderLayout.EAST); final JPanel slavePanel = new JPanel(new BorderLayout(3, 3)); slavePanel.add(slaveProductSelector.getProductNameLabel(), BorderLayout.NORTH); slavePanel.add(slaveProductSelector.getProductNameComboBox(), BorderLayout.CENTER); slavePanel.add(slaveProductSelector.getProductFileChooserButton(), BorderLayout.EAST); final TableLayout layout = new TableLayout(1); layout.setTableAnchor(TableLayout.Anchor.WEST); layout.setTableFill(TableLayout.Fill.HORIZONTAL); layout.setTableWeightX(1.0); layout.setCellPadding(0, 0, new Insets(3, 3, 3, 3)); layout.setCellPadding(1, 0, new Insets(3, 3, 3, 3)); final JPanel panel = new JPanel(layout); panel.setBorder(BorderFactory.createTitledBorder("Source Products")); panel.add(masterPanel); panel.add(slavePanel); return panel; }
private JPanel createUpdateProductSelectorPanel(final SourceProductSelector selector) { final JPanel subPanel = new JPanel(new BorderLayout(3, 3)); subPanel.add(selector.getProductNameComboBox(), BorderLayout.CENTER); subPanel.add(selector.getProductFileChooserButton(), BorderLayout.EAST); final TableLayout tableLayout = new TableLayout(1); tableLayout.setTableAnchor(TableLayout.Anchor.WEST); tableLayout.setTableWeightX(1.0); tableLayout.setRowFill(0, TableLayout.Fill.HORIZONTAL); tableLayout.setRowFill(1, TableLayout.Fill.HORIZONTAL); tableLayout.setTablePadding(3, 3); JPanel panel = new JPanel(tableLayout); panel.add(selector.getProductNameLabel()); panel.add(subPanel); panel.add(tableLayout.createVerticalSpacer()); return panel; }
private JPanel createUpdateProductSelectorPanel(final SourceProductSelector selector) { final JPanel subPanel = new JPanel(new BorderLayout(3, 3)); subPanel.add(selector.getProductNameComboBox(), BorderLayout.CENTER); subPanel.add(selector.getProductFileChooserButton(), BorderLayout.EAST); final TableLayout tableLayout = new TableLayout(1); tableLayout.setTableAnchor(TableLayout.Anchor.WEST); tableLayout.setTableWeightX(1.0); tableLayout.setRowFill(0, TableLayout.Fill.HORIZONTAL); tableLayout.setRowFill(1, TableLayout.Fill.HORIZONTAL); tableLayout.setTablePadding(3, 3); JPanel panel = new JPanel(tableLayout); panel.add(selector.getProductNameLabel()); panel.add(subPanel); panel.add(tableLayout.createVerticalSpacer()); return panel; }
@Override public void propertyChange(PropertyChangeEvent evt) { collocateProductSelector.getProductNameComboBox().setEnabled(panel.isEnabled()); collocateProductSelector.getProductFileChooserButton().setEnabled(panel.isEnabled()); final boolean collocate = getRadioButton().isSelected(); getCrsUI().firePropertyChange("collocate", !collocate, collocate); } });
public JPanel createDefaultPanel(String borderTitle) { final JPanel subPanel = new JPanel(new BorderLayout(3, 3)); subPanel.add(getProductNameComboBox(), BorderLayout.CENTER); subPanel.add(getProductFileChooserButton(), BorderLayout.EAST); final TableLayout tableLayout = new TableLayout(1); tableLayout.setTableAnchor(TableLayout.Anchor.WEST); tableLayout.setTableWeightX(1.0); tableLayout.setRowFill(0, TableLayout.Fill.HORIZONTAL); tableLayout.setRowFill(1, TableLayout.Fill.HORIZONTAL); tableLayout.setTablePadding(3, 3); JPanel panel = new JPanel(tableLayout); panel.add(getProductNameLabel()); panel.add(subPanel); if (StringUtils.isNotNullAndNotEmpty(borderTitle)) { panel.setBorder(BorderFactory.createTitledBorder(borderTitle)); panel.add(tableLayout.createVerticalSpacer()); } return panel; }
public CollocationForm(PropertySet propertySet, TargetProductSelector targetProductSelector, AppContext appContext) { this.targetProductSelector = targetProductSelector; masterProductSelector = new SourceProductSelector(appContext, "Master (pixel values are conserved):"); slaveProductSelector = new SourceProductSelector(appContext, "Slave (pixel values are resampled onto the master grid):"); renameMasterComponentsCheckBox = new JCheckBox("Rename master components:"); renameSlaveComponentsCheckBox = new JCheckBox("Rename slave components:"); masterComponentPatternField = new JTextField(); slaveComponentPatternField = new JTextField(); resamplingComboBoxModel = new DefaultComboBoxModel<>(ResamplingType.values()); resamplingComboBox = new JComboBox<>(resamplingComboBoxModel); slaveProductSelector.getProductNameComboBox().addActionListener(e -> { Product slaveProduct = slaveProductSelector.getSelectedProduct(); boolean validPixelExpressionUsed = isValidPixelExpressionUsed(slaveProduct); adaptResamplingComboBoxModel(resamplingComboBoxModel, validPixelExpressionUsed); }); createComponents(); bindComponents(propertySet); }
@Override protected JComponent createCrsComponent() { collocateProductSelector = new SourceProductSelector(getAppContext(), "Product:"); collocateProductSelector.setProductFilter(new CollocateProductFilter()); collocateProductSelector.addSelectionChangeListener(new AbstractSelectionChangeListener() { @Override public void selectionChanged(SelectionChangeEvent event) { fireCrsChanged(); } }); final JPanel panel = new JPanel(new BorderLayout(2, 2)); panel.add(collocateProductSelector.getProductNameComboBox(), BorderLayout.CENTER); panel.add(collocateProductSelector.getProductFileChooserButton(), BorderLayout.EAST); panel.addPropertyChangeListener("enabled", new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent evt) { collocateProductSelector.getProductNameComboBox().setEnabled(panel.isEnabled()); collocateProductSelector.getProductFileChooserButton().setEnabled(panel.isEnabled()); final boolean collocate = getRadioButton().isSelected(); getCrsUI().firePropertyChange("collocate", !collocate, collocate); } }); return panel; }
private JPanel createSourceProductPanel() { final JPanel panel = sourceProductSelector.createDefaultPanel(); sourceProductSelector.getProductNameLabel().setText("Name:"); sourceProductSelector.getProductNameComboBox().setPrototypeDisplayValue( "MER_RR__1PPBCM20030730_071000_000003972018_00321_07389_0000.N1"); sourceProductSelector.addSelectionChangeListener(new AbstractSelectionChangeListener() { @Override public void selectionChanged(SelectionChangeEvent event) { final Product sourceProduct = getSourceProduct(); updateTargetProductName(sourceProduct); GeoPos centerGeoPos = null; if (sourceProduct != null) { centerGeoPos = ProductUtils.getCenterGeoPos(sourceProduct); } infoForm.setCenterPos(centerGeoPos); if (outputGeometryModel != null) { outputGeometryModel.setSourceProduct(sourceProduct); } updateCRS(); } }); return panel; }
@Test public void testCreateOpTab() { JComponent component = sourceUI.CreateOpTab("testOp", parameterMap, appContext); assertNotNull(component); assertEquals(sourceUI.sourceProductSelector.getProductNameComboBox().getModel().getSize(), 2); }
@Test public void testCreatedUIComponentsAreSame() { SourceProductSelector selector = new SourceProductSelector(appContext, "Source:"); selector.initProducts(); assertSame(selector.getProductNameLabel(), selector.getProductNameLabel()); assertSame(selector.getProductNameComboBox(), selector.getProductNameComboBox()); assertSame(selector.getProductFileChooserButton(), selector.getProductFileChooserButton()); }
@Test public void testCreatedUIComponentsNotNull() { SourceProductSelector selector = new SourceProductSelector(appContext, "Source:"); selector.initProducts(); Assert.assertNotNull(selector.getProductNameLabel()); Assert.assertNotNull(selector.getProductNameComboBox()); Assert.assertNotNull(selector.getProductFileChooserButton()); }
@Test public void testThatComboboxContains_4_EntriesIfEmptySelectionIsDisabled() { boolean enableEmptySelection = false; SourceProductSelector selector = new SourceProductSelector(appContext, "Source", enableEmptySelection); selector.initProducts(); final JComboBox<Object> comboBox = selector.getProductNameComboBox(); assertEquals(4, comboBox.getItemCount()); assertEquals(comboBox.getItemAt(0), defaultProducts[0]); assertEquals(comboBox.getItemAt(1), defaultProducts[1]); assertEquals(comboBox.getItemAt(2), defaultProducts[2]); assertEquals(comboBox.getItemAt(3), defaultProducts[3]); assertEquals(4, selector.getProductCount()); }
@Test public void testThatComboboxContains_5_EntriesIfEmptySelectionIsEnabled() { boolean enableEmptySelection = true; SourceProductSelector selector = new SourceProductSelector(appContext, "Source", enableEmptySelection); selector.initProducts(); final JComboBox<Object> comboBox = selector.getProductNameComboBox(); assertEquals(5, comboBox.getItemCount()); assertEquals(comboBox.getItemAt(0), null); assertEquals(comboBox.getItemAt(1), defaultProducts[0]); assertEquals(comboBox.getItemAt(2), defaultProducts[1]); assertEquals(comboBox.getItemAt(3), defaultProducts[2]); assertEquals(comboBox.getItemAt(4), defaultProducts[3]); assertEquals(4, selector.getProductCount()); }