-package org.simantics.spreadsheet.ui;\r
-\r
-import java.awt.Color;\r
-import java.awt.Component;\r
-import java.awt.Dimension;\r
-import java.util.HashMap;\r
-import java.util.Map;\r
-\r
-import javax.swing.JLabel;\r
-import javax.swing.JList;\r
-import javax.swing.JTable;\r
-import javax.swing.ListCellRenderer;\r
-import javax.swing.SwingConstants;\r
-import javax.swing.table.JTableHeader;\r
-\r
-public class RowHeaderRenderer implements ListCellRenderer {\r
-\r
- private static Color ROW_HEADER_BACKGROUND = new Color(240, 240, 240);\r
- \r
- final Map<Integer, JLabel> labels = new HashMap<Integer, JLabel>();\r
- final JTable table;\r
- final JTableHeader header;\r
-\r
- RowHeaderRenderer(JTable table) {\r
- header = table.getTableHeader();\r
- this.table = table;\r
- }\r
-\r
- private JLabel newLabel() {\r
- JLabel label = new JLabel();\r
- label.setOpaque(true);\r
- label.setBorder(TableBorder.BORDER);\r
- label.setHorizontalAlignment(SwingConstants.CENTER);\r
- label.setForeground(header.getForeground());\r
- label.setBackground(ROW_HEADER_BACKGROUND);\r
- label.setFont(header.getFont());\r
- return label;\r
- }\r
-\r
- public Component getListCellRendererComponent(JList list, Object value,\r
- int index, boolean isSelected, boolean cellHasFocus) {\r
-\r
- JLabel label = labels.get(index);\r
- if(label == null) {\r
- label = newLabel();\r
- labels.put(index, label);\r
- }\r
-\r
- label.setText((value == null) ? "" : value.toString());\r
-\r
- int height = table.getRowHeight(index);\r
- label.setPreferredSize(new Dimension(label.getWidth(), height));\r
- \r
- return label;\r
-\r
- }\r
-}\r
+package org.simantics.spreadsheet.ui;
+
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.Dimension;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.swing.JLabel;
+import javax.swing.JList;
+import javax.swing.JTable;
+import javax.swing.ListCellRenderer;
+import javax.swing.SwingConstants;
+import javax.swing.table.JTableHeader;
+
+public class RowHeaderRenderer implements ListCellRenderer {
+
+ private static Color ROW_HEADER_BACKGROUND = new Color(240, 240, 240);
+
+ final Map<Integer, JLabel> labels = new HashMap<Integer, JLabel>();
+ final JTable table;
+ final JTableHeader header;
+
+ RowHeaderRenderer(JTable table) {
+ header = table.getTableHeader();
+ this.table = table;
+ }
+
+ private JLabel newLabel() {
+ JLabel label = new JLabel();
+ label.setOpaque(true);
+ label.setBorder(TableBorder.BORDER);
+ label.setHorizontalAlignment(SwingConstants.CENTER);
+ label.setForeground(header.getForeground());
+ label.setBackground(ROW_HEADER_BACKGROUND);
+ label.setFont(header.getFont());
+ return label;
+ }
+
+ public Component getListCellRendererComponent(JList list, Object value,
+ int index, boolean isSelected, boolean cellHasFocus) {
+
+ JLabel label = labels.get(index);
+ if(label == null) {
+ label = newLabel();
+ labels.put(index, label);
+ }
+
+ label.setText((value == null) ? "" : value.toString());
+
+ int height = table.getRowHeight(index);
+ label.setPreferredSize(new Dimension(label.getWidth(), height));
+
+ return label;
+
+ }
+}