source: josm/trunk/src/org/openstreetmap/josm/gui/conflict/pair/tags/TagMergeTableCellRenderer.java@ 6084

Last change on this file since 6084 was 6084, checked in by bastiK, 11 years ago

see #8902 - add missing @Override annotations (patch by shinigami)

  • Property svn:eol-style set to native
File size: 1.4 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.conflict.pair.tags;
3
4import java.awt.Component;
5import java.text.MessageFormat;
6
7import javax.swing.JLabel;
8import javax.swing.JTable;
9import javax.swing.table.TableCellRenderer;
10
11import org.openstreetmap.josm.gui.conflict.ConflictColors;
12
13public abstract class TagMergeTableCellRenderer extends JLabel implements TableCellRenderer {
14
15 protected abstract void renderKey(TagMergeItem item, boolean isSelected );
16
17 protected abstract void renderValue(TagMergeItem item, boolean isSelected);
18
19 protected void reset() {
20 setOpaque(true);
21 setBackground(ConflictColors.BGCOLOR.get());
22 setForeground(ConflictColors.FGCOLOR.get());
23 }
24
25 @Override
26 public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row,
27 int col) {
28
29 reset();
30 if (value == null)
31 return this;
32
33 TagMergeItem item = (TagMergeItem)value;
34 switch(col) {
35 case 0:
36 renderKey(item, isSelected);
37 break;
38 case 1:
39 renderValue(item, isSelected);
40 break;
41 default:
42 // should not happen, but just in case
43 throw new IllegalArgumentException(MessageFormat.format("Parameter 'col' must be 0 or 1. Got {0}.", col));
44 }
45 return this;
46 }
47
48}
Note: See TracBrowser for help on using the repository browser.