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

Last change on this file since 11330 was 11330, checked in by Don-vip, 7 years ago

sonar - fix recent issues

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