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

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

extract actions from AbstractTileSourceLayer to gui.layer.imagery package

  • Property svn:eol-style set to native
File size: 1.0 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.Main;
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.currentZoomLevel));
33 Main.map.mapView.zoomToFactor(newFactor);
34 layer.redraw();
35 }
36}
Note: See TracBrowser for help on using the repository browser.