01: package org.airtodo.headers;
02:
03: import java.awt.Component;
04:
05: import javax.swing.Icon;
06: import javax.swing.JLabel;
07: import javax.swing.table.DefaultTableCellRenderer;
08:
09: import org.air.framework.core.ColumnDecorations;
10: import org.air.framework.core.Header;
11: import org.air.framework.core.Registry;
12: import org.air.framework.core.Utils;
13: import org.air.framework.gui.table_view.table.Table;
14: import org.air.framework.properties.Icons;
15: import org.airtodo.records.TaskTypes;
16:
17: public class TaskType extends Header {
18: public TaskType() {
19: put(TaskTypes.NAME, new ColumnDecorations(true, 150));
20: put(TaskTypes.COMMENT, new ColumnDecorations(true, 300));
21: }
22:
23: @Override
24: public Class getRecordClass() {
25: return TaskTypes.class;
26: }
27:
28: public Component getCellRendererComponent(
29: DefaultTableCellRenderer defaultTableCellRenderer,
30: Object columnIdentifier, Object recordId, Table table,
31: Object value, boolean isSelected, int row, int column) {
32: if (columnIdentifier.equals(Utils
33: .getColumnIdentifier(TaskTypes.NAME))) {
34: defaultTableCellRenderer
35: .setHorizontalAlignment(JLabel.LEFT);
36: Object defaultId = Registry.getDefaultId().get(
37: getRecordClass());
38: Icon icon;
39: if (defaultId != null && recordId.equals(defaultId))
40: icon = Icons.CIRCLE_BLUE;
41: else
42: icon = Icons.CIRCLE_WHITE;
43: defaultTableCellRenderer.setIcon(icon);
44: }
45: return null;
46: }
47: }
|