Ignore:
Timestamp:
2009-10-09T17:16:54+02:00 (15 years ago)
Author:
Gubaer
Message:

Removed inefficient DataSet:getSelected() when responding to fireSelectionChanged() in JOSM actions, see thread on dev
Still uses DataSet:getSelected() when responding to layer change events, this is less critical.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/actions/MergeSelectionAction.java

    r2198 r2256  
    66import java.awt.event.ActionEvent;
    77import java.awt.event.KeyEvent;
     8import java.util.Collection;
    89import java.util.List;
    910
    1011import org.openstreetmap.josm.data.osm.DataSet;
     12import org.openstreetmap.josm.data.osm.OsmPrimitive;
    1113import org.openstreetmap.josm.data.osm.visitor.MergeSourceBuildingVisitor;
    1214import org.openstreetmap.josm.gui.dialogs.LayerListDialog;
     
    4547    @Override
    4648    protected void updateEnabledState() {
    47         if (getEditLayer() == null) {
     49        if (getCurrentDataSet() == null) {
    4850            setEnabled(false);
    49             return;
     51        } else {
     52            updateEnabledState(getCurrentDataSet().getSelected());
    5053        }
    51         setEnabled(!getEditLayer().data.getSelected().isEmpty());
     54    }
     55
     56    @Override
     57    protected void updateEnabledState(Collection<? extends OsmPrimitive> selection) {
     58        setEnabled(selection != null && !selection.isEmpty());
    5259    }
    5360}
Note: See TracChangeset for help on using the changeset viewer.