Changeset 9447 in josm


Ignore:
Timestamp:
2016-01-14T18:23:23+01:00 (8 years ago)
Author:
simon04
Message:

see #12335 - Improve "Zoom to layer" and "Zoom to download" enabled states (patch by kolesar)

File:
1 edited

Legend:

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

    r8900 r9447  
    221221     */
    222222    protected Layer getFirstSelectedLayer() {
     223        if (Main.main.getActiveLayer() == null) {
     224            return null;
     225        }
    223226        List<Layer> layers = LayerListDialog.getInstance().getModel().getSelectedLayers();
    224227        if (layers.isEmpty())
     
    246249            break;
    247250        case "layer":
    248             if (Main.main.getActiveLayer() == null)
    249                 return null;
    250251            // try to zoom to the first selected layer
    251252            Layer l = getFirstSelectedLayer();
     
    290291                lastZoomTime = -1;
    291292            }
    292             DataSet dataset = Main.main.getCurrentDataSet();
     293            final DataSet dataset = getCurrentDataSet();
    293294            if (dataset != null) {
    294295                List<DataSource> dataSources = new ArrayList<>(dataset.getDataSources());
     
    323324            break;
    324325        case "layer":
    325             if (!Main.isDisplayingMapView() || Main.map.mapView.getAllLayersAsList().isEmpty()) {
    326                 setEnabled(false);
    327             } else {
    328                 // FIXME: should also check for whether a layer is selected in the layer list dialog
    329                 setEnabled(true);
    330             }
     326            setEnabled(getFirstSelectedLayer() != null);
    331327            break;
    332328        case "conflict":
    333329            setEnabled(Main.map != null && Main.map.conflictDialog.getSelectedConflict() != null);
     330            break;
     331        case "download":
     332            setEnabled(getCurrentDataSet() != null && !getCurrentDataSet().getDataSources().isEmpty());
    334333            break;
    335334        case "problem":
     
    414413                }
    415414            }
     415            updateEnabledState();
    416416        }
    417417    }
Note: See TracChangeset for help on using the changeset viewer.