void prepareClose() { sourceProductList.clear(); }
Product[] getSourceProducts() { return sourceProductList.getSourceProducts(); }
void addProduct(Product selectedProduct) { sourceProductList.addProduct(selectedProduct); }
sourceProductList = new SourceProductList(appContext); sourceProductList.setLastOpenInputDir("org.esa.beam.binning.lastDir"); sourceProductList.setLastOpenedFormat("org.esa.beam.binning.lastFormat"); sourceProductList.addChangeListener(changeListener); sourceProductList.setXAxis(false); binningFormModel.getBindingContext().bind(BinningFormModel.PROPERTY_KEY_SOURCE_PRODUCT_PATHS, sourceProductList); JComponent[] panels = sourceProductList.getComponents(); sourceProductPanel.add(panels[0], BorderLayout.CENTER); sourceProductPanel.add(panels[1], BorderLayout.EAST);
/** * Creates an array of two JPanels. The first panel contains a list displaying the chosen products. The second panel * contains buttons for adding and removing products, laid out in configurable direction. Note that it makes only sense * to use both components. * * @return an array of two JPanels. */ private JComponent[] createComponents() { JPanel listPanel = new JPanel(new BorderLayout()); final JScrollPane scrollPane = new JScrollPane(inputPathsList); scrollPane.setPreferredSize(new Dimension(100, 50)); listPanel.add(scrollPane, BorderLayout.CENTER); final JPanel addRemoveButtonPanel = new JPanel(); int axis = this.xAxis ? BoxLayout.X_AXIS : BoxLayout.Y_AXIS; final BoxLayout buttonLayout = new BoxLayout(addRemoveButtonPanel, axis); addRemoveButtonPanel.setLayout(buttonLayout); addRemoveButtonPanel.add(createAddInputButton()); addRemoveButtonPanel.add(createRemoveInputButton()); JPanel[] panels = new JPanel[2]; panels[0] = listPanel; panels[1] = addRemoveButtonPanel; return panels; }
panel = new JPanel(tableLayout); sourceProductList = new SourceProductList(appContext); sourceProductList.setLastOpenedFormat(LAST_OPEN_FORMAT); sourceProductList.setLastOpenInputDir(LAST_OPEN_INPUT_DIR); sourceProductList.addChangeListener(changeListener); sourceProductList.setXAxis(true); context.bind("sourceProductPaths", sourceProductList); JComponent[] components = sourceProductList.getComponents();
void clear() { sourceProductList.clear(); setOutputDirPath(""); }
@Override public void contentsChanged(ListDataEvent event) { final Product[] sourceProducts = sourceProductList.getSourceProducts(); try { binningFormModel.setProperty(BinningFormModel.PROPERTY_KEY_SOURCE_PRODUCTS, sourceProducts); } catch (ValidationException e) { appContext.handleError("Unable to set source products.", e); } if (sourceProducts.length > 0) { binningFormModel.useAsContextProduct(sourceProducts[0]); return; } String[] sourceProductPath = binningFormModel.getSourceProductPath(); if (sourceProductPath != null && sourceProductPath.length > 0) { openFirstProduct(sourceProductPath); return; } binningFormModel.useAsContextProduct(null); }