source: josm/trunk/src/org/openstreetmap/josm/gui/conflict/pair/nodes/NodeListMerger.java@ 6070

Last change on this file since 6070 was 6070, checked in by stoecker, 11 years ago

see #8853 remove tabs, trailing spaces, windows line ends, strange characters

  • Property svn:eol-style set to native
File size: 2.2 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.conflict.pair.nodes;
3
4import javax.swing.JScrollPane;
5
6import org.openstreetmap.josm.data.conflict.Conflict;
7import org.openstreetmap.josm.data.osm.Node;
8import org.openstreetmap.josm.data.osm.OsmPrimitive;
9import org.openstreetmap.josm.data.osm.Way;
10import org.openstreetmap.josm.gui.conflict.pair.IConflictResolver;
11import org.openstreetmap.josm.gui.conflict.pair.ListMerger;
12
13/**
14 * A UI component for resolving conflicts in the node lists of two {@link Way}s.
15 *
16 */
17public class NodeListMerger extends ListMerger<Node> implements IConflictResolver {
18 public NodeListMerger() {
19 super(new NodeListMergeModel());
20 }
21
22 @Override
23 protected JScrollPane buildMyElementsTable() {
24 myEntriesTable = new NodeListTable(
25 "table.mynodes",
26 model,
27 model.getMyTableModel(),
28 model.getMySelectionModel()
29 );
30 return embeddInScrollPane(myEntriesTable);
31 }
32
33 @Override
34 protected JScrollPane buildMergedElementsTable() {
35 mergedEntriesTable = new NodeListTable(
36 "table.mergednodes",
37 model,
38 model.getMergedTableModel(),
39 model.getMergedSelectionModel()
40 );
41 return embeddInScrollPane(mergedEntriesTable);
42 }
43
44 @Override
45 protected JScrollPane buildTheirElementsTable() {
46 theirEntriesTable = new NodeListTable(
47 "table.theirnodes",
48 model,
49 model.getTheirTableModel(),
50 model.getTheirSelectionModel()
51 );
52 return embeddInScrollPane(theirEntriesTable);
53 }
54
55 public void populate(Conflict<? extends OsmPrimitive> conflict) {
56 Way myWay = (Way)conflict.getMy();
57 Way theirWay = (Way)conflict.getTheir();
58 ((NodeListMergeModel)model).populate(myWay, theirWay, conflict.getMergedMap());
59 myEntriesTable.setLayer(findLayerFor(myWay));
60 theirEntriesTable.setLayer(findLayerFor(theirWay));
61 }
62
63 public void deletePrimitive(boolean deleted) {
64 if (deleted) {
65 model.setFrozen(true);
66 model.clearMerged();
67 } else {
68 model.setFrozen(false);
69 }
70 }
71}
Note: See TracBrowser for help on using the repository browser.