001// License: GPL. For details, see LICENSE file. 002package org.openstreetmap.josm.gui.history; 003 004import static org.openstreetmap.josm.tools.I18n.tr; 005 006import javax.swing.table.DefaultTableColumnModel; 007import javax.swing.table.TableColumn; 008 009/** 010 * The {@link javax.swing.table.TableColumnModel} for the table with the list of relation members. 011 * @since 1709 012 */ 013public class RelationMemberTableColumnModel extends DefaultTableColumnModel { 014 015 static final int INDEX_COLUMN = 0; 016 static final int ROLE_COLUMN = 1; 017 static final int OBJECT_COLUMN = 2; 018 019 /** 020 * Constructs a new {@code RelationMemberTableColumnModel}. 021 */ 022 public RelationMemberTableColumnModel() { 023 createColumns(); 024 } 025 026 protected void createColumns() { 027 RelationMemberListTableCellRenderer renderer = new RelationMemberListTableCellRenderer(); 028 029 TableColumn col = new TableColumn(INDEX_COLUMN, 0); 030 col.setHeaderValue(tr("\u2116")); 031 col.setCellRenderer(renderer); 032 addColumn(col); 033 034 col = new TableColumn(ROLE_COLUMN); 035 col.setHeaderValue(tr("Role")); 036 col.setCellRenderer(renderer); 037 addColumn(col); 038 039 col = new TableColumn(OBJECT_COLUMN); 040 col.setHeaderValue(tr("Object")); 041 col.setCellRenderer(renderer); 042 addColumn(col); 043 } 044}