private void reconfigureColumnModel() { createDefaultColumnsFromModel(); TableColumnModel columnModel = getColumnModel(); MaskTableModel maskTableModel = getModel(); int vci = maskTableModel.getVisibilityColumnIndex(); if (vci >= 0) { columnModel.getColumn(vci).setHeaderRenderer(visibilityHR); } for (int i = 0; i < maskTableModel.getColumnCount(); i++) { columnModel.getColumn(i).setPreferredWidth(maskTableModel.getPreferredColumnWidth(i)); } }
boolean isInManagmentMode() { return getModel().isInManagmentMode(); }
void clear() { setProduct(null, null); }
public void addMask(Mask mask, int index) { getProduct().getMaskGroup().add(index, mask); makeMaskVisible(mask); fireTableDataChanged(); }
void removeMask(Mask mask) { getProduct().getMaskGroup().remove(mask); fireTableDataChanged(); }
public void testViewMode() { MaskTableModel maskTableModel = new MaskTableModel(false); assertEquals(false, maskTableModel.isInManagmentMode()); assertEquals(4, maskTableModel.getColumnCount()); assertEquals("Name", maskTableModel.getColumnName(0)); assertEquals("Colour", maskTableModel.getColumnName(1)); assertEquals("Transparency", maskTableModel.getColumnName(2)); assertEquals("Description", maskTableModel.getColumnName(3)); assertEquals(0, maskTableModel.getRowCount()); maskTableModel.setProduct(product, null); assertEquals(false, maskTableModel.isInManagmentMode()); assertEquals(4, maskTableModel.getColumnCount()); assertEquals("Name", maskTableModel.getColumnName(0)); assertEquals("Colour", maskTableModel.getColumnName(1)); assertEquals("Transparency", maskTableModel.getColumnName(2)); assertEquals("Description", maskTableModel.getColumnName(3)); assertEquals(10, maskTableModel.getRowCount()); maskTableModel.setProduct(product, product.getBand("C")); assertEquals(false, maskTableModel.isInManagmentMode()); assertEquals(5, maskTableModel.getColumnCount()); assertEquals("Visibility", maskTableModel.getColumnName(0)); assertEquals("Name", maskTableModel.getColumnName(1)); assertEquals("Colour", maskTableModel.getColumnName(2)); assertEquals("Transparency", maskTableModel.getColumnName(3)); assertEquals("Description", maskTableModel.getColumnName(4)); assertEquals(10, maskTableModel.getRowCount());
private void saveColumnWidths() { if (getRowCount() > 0) { MaskTableModel maskTableModel = getModel(); for (int i = 0; i < maskTableModel.getColumnCount(); i++) { maskTableModel.setPreferredColumnWidth(i, columnModel.getColumn(i).getPreferredWidth()); } } }
void setProduct(Product product, RasterDataNode visibleBand) { if (this.product != product) { if (this.product != null) { this.product.removeProductNodeListener(maskPNL); } this.product = product; if (this.product != null) { this.product.addProductNodeListener(maskPNL); } } this.visibleBand = visibleBand; updateModeIdxs(); fireTableStructureChanged(); }
@Override public void setValueAt(Object aValue, int rowIndex, int columnIndex) { final ProductNodeGroup<Mask> maskGroup = getMaskGroup(); Mask mask = maskGroup.get(rowIndex); int column = modeIdxs[columnIndex]; fireTableCellUpdated(rowIndex, columnIndex); } else if (column == IDX_NAME) { mask.setName((String) aValue); fireTableCellUpdated(rowIndex, columnIndex); } else if (column == IDX_TYPE) { fireTableCellUpdated(rowIndex, columnIndex); } else if (column == IDX_TRANSPARENCY) { mask.setImageTransparency((Double) aValue); fireTableCellUpdated(rowIndex, columnIndex); } else if (column == IDX_DESCRIPTION) { mask.setDescription((String) aValue); fireTableCellUpdated(rowIndex, columnIndex);
void addMask(Mask mask) { getModel().addMask(mask); int rowIndex = getModel().getMaskIndex(mask.getName()); getSelectionModel().addSelectionInterval(rowIndex, rowIndex); scrollRectToVisible(getCellRect(rowIndex, 0, true)); }
public MaskTable(boolean maskManagmentMode) { super(new MaskTableModel(maskManagmentMode)); visibilityHR = new VisibilityHR(); setName("maskTable"); setAutoCreateColumnsFromModel(true); setPreferredScrollableViewportSize(new Dimension(200, 150)); setDefaultRenderer(Color.class, new ColorTableCellRenderer()); setDefaultEditor(Color.class, new ColorTableCellEditor()); setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); getTableHeader().setReorderingAllowed(false); getTableHeader().setResizingAllowed(true); setAutoResizeMode(JTable.AUTO_RESIZE_OFF); ToolTipMIL toolTipSetter = new ToolTipMIL(); addMouseListener(toolTipSetter); addMouseMotionListener(toolTipSetter); setRowHeight(this.getRowHeight() + 4); reconfigureColumnModel(); }
void clear() { getModel().clear(); }
public void insertMask(Mask mask, int index) { getModel().addMask(mask, index); }
private void processEvent(ProductNodeEvent event) { if (event.getSourceNode() instanceof Mask) { fireTableDataChanged(); } else if (event.getSourceNode() instanceof Placemark) { fireTableDataChanged(); } else if (event.getSourceNode() == visibleBand && event.getPropertyName() != null && event.getPropertyName().equals(RasterDataNode.PROPERTY_NAME_IMAGE_INFO)) { fireTableDataChanged(); } }
protected MaskForm(boolean maskManagmentMode, ListSelectionListener selectionListener) { maskTable = new MaskTable(maskManagmentMode); maskTable.getSelectionModel().addListSelectionListener(selectionListener); maskTable.getSelectionModel().addListSelectionListener(new ListSelectionListener() { @Override public void valueChanged(ListSelectionEvent e) { updateState(); } }); maskTable.getModel().addTableModelListener(new TableModelListener() { @Override public void tableChanged(TableModelEvent e) { updateState(); } }); maskTable.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(final MouseEvent e) { if (e.getClickCount() == 2) { Action action = getDoubleClickAction(); if (action.isEnabled()) { action.actionPerformed(new ActionEvent(e.getSource(), e.getID(), null)); } } } }); }
public void testManagementMode() { MaskTableModel maskTableModel = new MaskTableModel(true); assertEquals(false, maskTableModel.isInManagmentMode()); assertEquals(5, maskTableModel.getColumnCount()); assertEquals("Name", maskTableModel.getColumnName(0)); assertEquals("Type", maskTableModel.getColumnName(1)); assertEquals("Colour", maskTableModel.getColumnName(2)); assertEquals("Transparency", maskTableModel.getColumnName(3)); assertEquals("Description", maskTableModel.getColumnName(4)); assertEquals(0, maskTableModel.getRowCount()); maskTableModel.setProduct(product, null); assertEquals(true, maskTableModel.isInManagmentMode()); assertEquals(5, maskTableModel.getColumnCount()); assertEquals("Name", maskTableModel.getColumnName(0)); assertEquals("Type", maskTableModel.getColumnName(1)); assertEquals("Colour", maskTableModel.getColumnName(2)); assertEquals("Transparency", maskTableModel.getColumnName(3)); assertEquals("Description", maskTableModel.getColumnName(4)); assertEquals(10, maskTableModel.getRowCount()); maskTableModel.setProduct(product, product.getBand("C")); assertEquals(true, maskTableModel.isInManagmentMode()); assertEquals(6, maskTableModel.getColumnCount()); assertEquals("Visibility", maskTableModel.getColumnName(0)); assertEquals("Name", maskTableModel.getColumnName(1)); assertEquals("Type", maskTableModel.getColumnName(2)); assertEquals("Colour", maskTableModel.getColumnName(3)); assertEquals("Transparency", maskTableModel.getColumnName(4)); assertEquals("Description", maskTableModel.getColumnName(5));
void addMask(Mask mask) { getProduct().getMaskGroup().add(mask); makeMaskVisible(mask); fireTableDataChanged(); }
void setProduct(Product product, RasterDataNode visibleBand) { saveColumnWidths(); getModel().setProduct(product, visibleBand); reconfigureColumnModel(); }