source: josm/trunk/src/org/openstreetmap/josm/gui/conflict/tags/RelationMemberConflictDecisionRenderer.java@ 2099

Last change on this file since 2099 was 2099, checked in by Gubaer, 15 years ago

added auto completion to combine way dialog
fixed #3461: Value selection in new "combine ways" gets hidden when not selected (now using a JComboBox as renderer)

File size: 2.8 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.conflict.tags;
3
4import java.awt.Component;
5import java.awt.Font;
6
7import javax.swing.JLabel;
8import javax.swing.JList;
9import javax.swing.JTable;
10import javax.swing.ListCellRenderer;
11import javax.swing.UIManager;
12import javax.swing.table.TableCellRenderer;
13
14public class RelationMemberConflictDecisionRenderer extends JLabel implements TableCellRenderer, ListCellRenderer{
15
16 protected void resetTableRenderer() {
17 setOpaque(true);
18 setFont(UIManager.getFont("Table.font"));
19 setBackground(UIManager.getColor("Table.background"));
20 setForeground(UIManager.getColor("Table.foreground"));
21 }
22
23 protected void resetListRenderer() {
24 setOpaque(true);
25 setFont(UIManager.getFont("ComboBox.font"));
26 setBackground(UIManager.getColor("ComboBox.background"));
27 setForeground(UIManager.getColor("ComboBox.foreground"));
28 }
29
30
31 /* --------------------------------------------------------------------------------- */
32 /* TableCellRenderer */
33 /* --------------------------------------------------------------------------------- */
34 public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus,
35 int row, int column) {
36 resetTableRenderer();
37 if (isSelected) {
38 setBackground(UIManager.getColor("Table.selectionBackground"));
39 setForeground(UIManager.getColor("Table.selectionForeground"));
40 }
41 RelationMemberConflictDecisionType decision = (RelationMemberConflictDecisionType)value;
42 RelationMemberConflictDecisionType.prepareLabel(decision, this);
43 return this;
44 }
45
46 /* --------------------------------------------------------------------------------- */
47 /* ListCellRenderer */
48 /* --------------------------------------------------------------------------------- */
49 public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected,
50 boolean cellHasFocus) {
51 resetListRenderer();
52 if (isSelected) {
53 setBackground(UIManager.getColor("ComboBox.selectionBackground"));
54 setForeground(UIManager.getColor("ComboBox.selectionForeground"));
55 }
56 RelationMemberConflictDecisionType decision = (RelationMemberConflictDecisionType)value;
57 RelationMemberConflictDecisionType.prepareLabel(decision, this);
58 if (RelationMemberConflictDecisionType.UNDECIDED.equals(decision)) {
59 setFont(getFont().deriveFont(Font.ITALIC));
60 }
61 return this;
62 }
63}
Note: See TracBrowser for help on using the repository browser.