1 package fr.ifremer.dali.ui.swing.util.table.renderer;
2
3 import javax.swing.JLabel;
4 import javax.swing.JTable;
5 import javax.swing.table.TableCellRenderer;
6 import java.awt.Component;
7
8 import static org.nuiton.i18n.I18n.t;
9
10
11
12
13 public class MultipleValueCellRenderer implements TableCellRenderer {
14
15 private final TableCellRenderer delegate;
16 private final JLabel multiValueLabel;
17
18 public MultipleValueCellRenderer(TableCellRenderer delegate) {
19 this.delegate = delegate;
20 multiValueLabel = createMultiValueLabel();
21 }
22
23 private JLabel createMultiValueLabel() {
24 JLabel label = new JLabel(t("dali.measurement.grouped.multiEdit.multiValueLabel"));
25 label.setOpaque(true);
26 return label;
27 }
28
29 @Override
30 public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
31 return value == null
32 ? multiValueLabel
33 : delegate.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
34 }
35 }