source: josm/trunk/src/org/openstreetmap/josm/gui/layer/imagery/ZoomToNativeLevelAction.java@ 12630

Last change on this file since 12630 was 12630, checked in by Don-vip, 7 years ago

see #15182 - deprecate Main.map and Main.isDisplayingMapView(). Replacements: gui.MainApplication.getMap() / gui.MainApplication.isDisplayingMapView()

  • Property svn:eol-style set to native
File size: 1.1 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.layer.imagery;
3
4import static org.openstreetmap.josm.tools.I18n.tr;
5
6import java.awt.event.ActionEvent;
7
8import javax.swing.AbstractAction;
9
10import org.openstreetmap.josm.gui.MainApplication;
11import org.openstreetmap.josm.gui.layer.AbstractTileSourceLayer;
12
13/**
14 * Change resolution to native zoom level.
15 * @since 11950 (extracted from {@link AbstractTileSourceLayer})
16 */
17public class ZoomToNativeLevelAction extends AbstractAction {
18
19 private final AbstractTileSourceLayer<?> layer;
20
21 /**
22 * Constructs a new {@code ZoomToNativeLevelAction}.
23 * @param layer imagery layer
24 */
25 public ZoomToNativeLevelAction(AbstractTileSourceLayer<?> layer) {
26 super(tr("Zoom to native resolution"));
27 this.layer = layer;
28 }
29
30 @Override
31 public void actionPerformed(ActionEvent ae) {
32 double newFactor = Math.sqrt(layer.getScaleFactor(layer.getZoomLevel()));
33 MainApplication.getMap().mapView.zoomToFactor(newFactor);
34 layer.invalidate();
35 }
36}
Note: See TracBrowser for help on using the repository browser.