// License: GPL. See LICENSE file for details. package org.openstreetmap.josm.gui.download; import static org.openstreetmap.josm.tools.I18n.tr; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.util.logging.Logger; import org.openstreetmap.josm.data.Bounds; import org.openstreetmap.josm.gui.bbox.BBoxChooser; import org.openstreetmap.josm.gui.bbox.TileSelectionBBoxChooser; /** * Tile selector. * * Provides a tile coordinate input field. * * @author Frederik Ramm <frederik@remote.org> * */ public class TileSelection implements DownloadSelection, PropertyChangeListener { private static final Logger logger = Logger.getLogger(TileSelection.class.getName()); private TileSelectionBBoxChooser chooser; private DownloadDialog parent; protected void build() { chooser = new TileSelectionBBoxChooser(); chooser.addPropertyChangeListener(this); } public TileSelection() { build(); } public void addGui(final DownloadDialog gui) { gui.addDownloadAreaSelector(chooser, tr("Tile Numbers")); parent = gui; } public void setDownloadArea(Bounds area) { chooser.setBoundingBox(area); } public void propertyChange(PropertyChangeEvent evt) { if (evt.getPropertyName().equals(BBoxChooser.BBOX_PROP)) { Bounds bbox = (Bounds)evt.getNewValue(); parent.boundingBoxChanged(bbox, this); } } }