// License: GPL. For details, see LICENSE file. package org.openstreetmap.josm.gui.correction; import static org.openstreetmap.josm.tools.I18n.tr; import java.util.List; import org.openstreetmap.josm.data.correction.TagCorrection; /** * Tag correction table model. * @since 729 */ public class TagCorrectionTableModel extends CorrectionTableModel<TagCorrection> { /** * Constructs a new {@code TagCorrectionTableModel}. * @param tagCorrections list of tag corrections */ public TagCorrectionTableModel(List<TagCorrection> tagCorrections) { super(tagCorrections); } @Override public int getColumnCount() { return 5; } @Override public String getCorrectionColumnName(int colIndex) { switch (colIndex) { case 0: return tr("Old key"); case 1: return tr("Old value"); case 2: return tr("New key"); case 3: return tr("New value"); default: return null; } } @Override public Object getCorrectionValueAt(int rowIndex, int colIndex) { TagCorrection tagCorrection = getCorrections().get(rowIndex); switch (colIndex) { case 0: return tagCorrection.oldKey; case 1: return tagCorrection.oldValue; case 2: return tagCorrection.newKey; case 3: return tagCorrection.newValue; default: return null; } } @Override protected boolean isBoldCell(int row, int column) { TagCorrection tagCorrection = getCorrections().get(row); return (column == 2 && tagCorrection.isKeyChanged()) || (column == 3 && tagCorrection.isValueChanged()); } }