View Javadoc
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   * @author peck7 on 24/01/2020.
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  }