Index: applications/editors/josm/plugins/turnlanes/src/org/openstreetmap/josm/plugins/turnlanes/gui/TurnLanesDialog.java
===================================================================
--- applications/editors/josm/plugins/turnlanes/src/org/openstreetmap/josm/plugins/turnlanes/gui/TurnLanesDialog.java	(revision 34287)
+++ applications/editors/josm/plugins/turnlanes/src/org/openstreetmap/josm/plugins/turnlanes/gui/TurnLanesDialog.java	(revision 34288)
@@ -19,6 +19,5 @@
 
 import org.openstreetmap.josm.actions.JosmAction;
-import org.openstreetmap.josm.data.SelectionChangedListener;
-import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.data.osm.DataSelectionListener;
 import org.openstreetmap.josm.data.osm.Node;
 import org.openstreetmap.josm.data.osm.OsmPrimitive;
@@ -31,4 +30,5 @@
 import org.openstreetmap.josm.data.osm.event.PrimitivesRemovedEvent;
 import org.openstreetmap.josm.data.osm.event.RelationMembersChangedEvent;
+import org.openstreetmap.josm.data.osm.event.SelectionEventManager;
 import org.openstreetmap.josm.data.osm.event.TagsChangedEvent;
 import org.openstreetmap.josm.data.osm.event.WayNodesChangedEvent;
@@ -40,5 +40,5 @@
 import org.openstreetmap.josm.plugins.turnlanes.model.ModelContainer;
 
-public class TurnLanesDialog extends ToggleDialog implements ActiveLayerChangeListener, SelectionChangedListener {
+public class TurnLanesDialog extends ToggleDialog implements ActiveLayerChangeListener, DataSelectionListener {
     private class EditAction extends JosmAction {
         private static final long serialVersionUID = 4114119073563457706L;
@@ -148,5 +148,5 @@
 
         MainApplication.getLayerManager().addActiveLayerChangeListener(this);
-        DataSet.addSelectionListener(this);
+        SelectionEventManager.getInstance().addSelectionListener(this);
 
         final JPanel buttonPanel = new JPanel(new GridLayout(1, 2, 4, 4));
@@ -202,10 +202,10 @@
 
     @Override
-    public void selectionChanged(Collection<? extends OsmPrimitive> newSelection) {
-        if (selected.equals(new HashSet<>(newSelection))) {
+    public void selectionChanged(SelectionChangeEvent event) {
+        if (selected.equals(new HashSet<>(event.getSelection()))) {
             return;
         }
         selected.clear();
-        selected.addAll(newSelection);
+        selected.addAll(event.getSelection());
 
         refresh();
@@ -216,5 +216,5 @@
         super.destroy();
         MainApplication.getLayerManager().removeActiveLayerChangeListener(this);
-        DataSet.removeSelectionListener(this);
+        SelectionEventManager.getInstance().removeSelectionListener(this);
         editAction.destroy();
         validateAction.destroy();
