public class TagMergeModel extends DefaultTableModel
TableModel used in the tables of the TagMerger.
The model can populate(OsmPrimitive, OsmPrimitive) itself from the conflicts
in the tag sets of two OsmPrimitives. Internally, it keeps a list of TagMergeItems.
decide(int, MergeDecisionType) and decide(int[], MergeDecisionType) can be used
to remember a merge decision for a specific row in the model.
The model notifies PropertyChangeListeners about updates of the number of
undecided tags (see PROP_NUM_UNDECIDED_TAGS).| Modifier and Type | Field and Description |
|---|---|
private Set<PropertyChangeListener> |
listeners
the property change listeners
|
private int |
numUndecidedTags |
static String |
PROP_NUM_UNDECIDED_TAGS |
private List<TagMergeItem> |
tagMergeItems
the list of tag merge items
|
columnIdentifiers, dataVectorlistenerList| Constructor and Description |
|---|
TagMergeModel()
Constructs a new
TagMergeModel. |
addColumn, addColumn, addColumn, addRow, addRow, convertToVector, convertToVector, getColumnCount, getColumnName, getDataVector, insertRow, insertRow, moveRow, newDataAvailable, newRowsAdded, removeRow, rowsRemoved, setColumnCount, setColumnIdentifiers, setColumnIdentifiers, setDataVector, setDataVector, setNumRows, setRowCount, setValueAtaddTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, removeTableModelListenerpublic static final String PROP_NUM_UNDECIDED_TAGS
private final transient List<TagMergeItem> tagMergeItems
private final transient Set<PropertyChangeListener> listeners
private int numUndecidedTags
public TagMergeModel()
TagMergeModel.public void addPropertyChangeListener(PropertyChangeListener listener)
public void removePropertyChangeListener(PropertyChangeListener listener)
protected void fireNumUndecidedTagsChanged(int oldValue, int newValue)
PropertyChangeListeners about an update of PROP_NUM_UNDECIDED_TAGSoldValue - the old valuenewValue - the new valueprotected void refreshNumUndecidedTags()
TagMergeItems. Notifies PropertyChangeListener if necessary.public void populate(OsmPrimitive my, OsmPrimitive their)
my - my primitive (i.e. the primitive from the local dataset)their - their primitive (i.e. the primitive from the server dataset)public void addItem(TagMergeItem item)
TagMergeItem to the modelitem - the itemprotected void rememberDecision(int row, MergeDecisionType decision)
public void decide(int row, MergeDecisionType decision)
row - the rowdecision - the decisionpublic void decide(int[] rows, MergeDecisionType decision)
rows - the array of row indicesdecision - the decisionpublic int getRowCount()
getRowCount in interface TableModelgetRowCount in class DefaultTableModelpublic Object getValueAt(int row, int column)
getValueAt in interface TableModelgetValueAt in class DefaultTableModelpublic boolean isCellEditable(int row, int column)
isCellEditable in interface TableModelisCellEditable in class DefaultTableModelpublic TagConflictResolveCommand buildResolveCommand(Conflict<? extends OsmPrimitive> conflict)
public boolean isResolvedCompletely()
public int getNumResolvedConflicts()
public int getFirstUndecided(int startIndex)