source: josm/trunk/src/org/openstreetmap/josm/gui/history/VersionTableCellRenderer.java

Last change on this file was 17892, checked in by simon04, 3 years ago

see #20880 - Fix VersionTableCellRenderer

File size: 1.3 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.history;
3
4import javax.swing.BorderFactory;
5import javax.swing.JLabel;
6import javax.swing.JTable;
7import javax.swing.SwingConstants;
8import javax.swing.table.TableCellRenderer;
9import java.awt.Color;
10import java.awt.Component;
11
12/**
13 * Renderer for version labels.
14 */
15public class VersionTableCellRenderer extends JLabel implements TableCellRenderer {
16
17 /**
18 * Constructs a new {@code VersionCellRenderer}.
19 */
20 public VersionTableCellRenderer() {
21 setHorizontalAlignment(SwingConstants.CENTER);
22 }
23
24 @Override
25 public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus,
26 int row, int column) {
27 String v = "";
28 if (value != null) {
29 v = value.toString();
30 }
31 setText(v);
32 Color color = table.getModel() instanceof VersionTableModel
33 ? ((VersionTableModel) table.getModel()).getVersionColor(row)
34 : null;
35 if (color != null) {
36 setBorder(BorderFactory.createMatteBorder(0, 2, 0, 0, color));
37 } else {
38 setBorder(null);
39 }
40 return this;
41 }
42}
Note: See TracBrowser for help on using the repository browser.