source: josm/trunk/src/org/openstreetmap/josm/actions/AddImageryLayerAction.java@ 3965

Last change on this file since 3965 was 3878, checked in by Upliner, 13 years ago

Add support for ScanEx IRS tilesource (patch by glebius)

  • Property svn:eol-style set to native
File size: 1.5 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.actions;
3
4import static org.openstreetmap.josm.tools.I18n.tr;
5
6import java.awt.event.ActionEvent;
7
8import org.openstreetmap.josm.Main;
9import org.openstreetmap.josm.data.imagery.ImageryInfo;
10import org.openstreetmap.josm.data.imagery.ImageryInfo.ImageryType;
11import org.openstreetmap.josm.gui.layer.ImageryLayer;
12
13public class AddImageryLayerAction extends JosmAction {
14
15 private final ImageryInfo info;
16
17 public AddImageryLayerAction(ImageryInfo info) {
18 super(info.getMenuName(), "imagery_menu", tr("Add imagery layer {0}",info.getName()), null, false, false);
19 putValue("toolbar", "imagery_" + info.getToolbarName());
20 this.info = info;
21 installAdapters();
22 }
23
24 @Override
25 public void actionPerformed(ActionEvent e) {
26 if (!isEnabled()) return;
27 Main.main.addLayer(ImageryLayer.create(info));
28 }
29
30 @Override
31 protected void updateEnabledState() {
32 // never enable blacklisted entries.
33 if (info.isBlacklisted()) {
34 setEnabled(false);
35 } else if (info.getImageryType() == ImageryType.TMS || info.getImageryType() == ImageryType.BING || info.getImageryType() == ImageryType.SCANEX) {
36 setEnabled(true);
37 } else if (Main.map != null && Main.map.mapView != null && !Main.map.mapView.getAllLayers().isEmpty()) {
38 setEnabled(true);
39 } else {
40 setEnabled(false);
41 }
42 }
43}
Note: See TracBrowser for help on using the repository browser.