Changeset 6038 in josm for trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTable.java
- Timestamp:
- 2013-06-28T17:39:49+02:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTable.java
r6036 r6038 21 21 import javax.swing.KeyStroke; 22 22 import javax.swing.ListSelectionModel; 23 import javax.swing.SwingUtilities; 23 24 import javax.swing.event.ListSelectionEvent; 24 25 import javax.swing.event.ListSelectionListener; … … 118 119 } 119 120 120 private void initHighlighting() { 121 getMemberTableModel().getSelectionModel().addListSelectionListener(new ListSelectionListener() { 121 ListSelectionListener highlighterListener = new ListSelectionListener() { 122 122 @Override 123 123 public void valueChanged(ListSelectionEvent lse) { 124 124 if (Main.isDisplayingMapView()) { 125 125 Collection<RelationMember> sel = getMemberTableModel().getSelectedMembers(); 126 ArrayList<OsmPrimitive> toHighlight = new ArrayList<OsmPrimitive>();126 final ArrayList<OsmPrimitive> toHighlight = new ArrayList<OsmPrimitive>(); 127 127 for (RelationMember r: sel) { 128 128 if (r.getMember().isUsable()) { … … 130 130 } 131 131 } 132 if (highlightHelper.highlightOnly(toHighlight)) { 133 Main.map.mapView.repaint(); 134 } 132 SwingUtilities.invokeLater(new Runnable() { 133 @Override 134 public void run() { 135 if (highlightHelper.highlightOnly(toHighlight)) { 136 Main.map.mapView.repaint(); 137 } 138 } 139 }); 135 140 } 136 }}); 141 }}; 142 143 private void initHighlighting() { 144 getMemberTableModel().getSelectionModel().addListSelectionListener(highlighterListener); 137 145 if (Main.isDisplayingMapView()) { 138 146 HighlightHelper.clearAllHighlighted(); … … 200 208 super.unlinkAsListener(); 201 209 MapView.removeLayerChangeListener(zoomToGap); 202 highlightHelper.clear(); 210 } 211 212 public void stopHighlighting() { 213 if (highlighterListener == null) return; 214 getMemberTableModel().getSelectionModel().removeListSelectionListener(highlighterListener); 215 highlighterListener = null; 216 if (Main.isDisplayingMapView()) { 217 HighlightHelper.clearAllHighlighted(); 218 Main.map.mapView.repaint(); 219 } 203 220 } 204 221
Note:
See TracChangeset
for help on using the changeset viewer.