/* * PropertyModel.java * * Created on 4 ������ 2006 �., 16:22 * */ package datechooser.beans.customizer; import datechooser.beans.customizer.render.CaptionCellRenderer; import datechooser.beans.customizer.render.ValueCellRenderer; import javax.swing.table.DefaultTableModel; import static datechooser.beans.locale.LocaleUtils.getEditorLocaleString; /** * Customizer use table for properties visualization. This is its model.<br> * ���������� ���������� ������� ��� ����������� �������. ��� �� ������. * ��������� �� ���� ������� �������� ����� �������������� �������. * @author Androsov Vadim * @since 1.0 */ public class PropertyTableModel extends DefaultTableModel { private PropertyDescriptorsHolder holder; public PropertyTableModel(PropertyDescriptorsHolder holder) { super(holder.getPropertyCount(), 2); this.holder = holder; } public Object getValueAt(int row, int column) { return holder.getPropertyDescriptors()[row].getName(); } public boolean isCellEditable(int row, int column) { return column == 1; } public Class<?> getColumnClass(int columnIndex) { switch (columnIndex) { case 0: return CaptionCellRenderer.class; case 1: return ValueCellRenderer.class; default: return CaptionCellRenderer.class; } } public String getColumnName(int column) { switch (column) { case 0: return getEditorLocaleString("property"); case 1: return getEditorLocaleString("value"); default: return "?? (" + column + ')'; } } }