package com.google.gwt.maps.client.maptypes; /* * #%L * GWT Maps API V3 - Core API * %% * Copyright (C) 2011 - 2012 GWT Maps API V3 * %% * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * #L% */ import com.google.gwt.dom.client.Document; import com.google.gwt.dom.client.Element; import com.google.gwt.maps.client.base.Point; import com.google.gwt.maps.client.base.Size; /** * This interface defines map type. This interface is typically used for base maps such as road, satellite or hybrid * maps. Immutable. <br> * <br> * See <a href="https://developers.google.com/maps/documentation/javascript/reference#MapType">MapType API Doc</a> */ public interface MapType { /** * Returns a tile for the given tile coordinate (x, y) and zoom level. This tile will be appended to the given * ownerDocument. * * @param tileCoord * @param zoom * @param ownerDocument */ public Element getTile(Point tileCoord, int zoom, Document ownerDocument); /** * Releases the given tile, performing any necessary cleanup. The provided tile will have already been removed from * the document. Optional. * * @param tile */ public void releaseTile(Element tile); /** * sets Alt text to display when this MapType's button is hovered over in the MapTypeControl. Optional. * * @param alt */ public void setAlt(String alt); /** * gets Alt text to display when this MapType's button is hovered over in the MapTypeControl. Optional. */ public String getAlt(); /** * sets The maximum zoom level for the map when displaying this MapType. Required for base MapTypes, ignored for * overlay MapTypes. * * @param maxZoom */ public void setMaxZoom(int maxZoom); /** * sets The minimum zoom level for the map when displaying this MapType. Optional; defaults to 0. * * @param minZoom */ public void setMinZoom(int minZoom); /** * sets Name to display in the MapTypeControl. Optional. * * @param name */ public void setName(String name); /** * sets The Projection used to render this MapType. Optional; defaults to Mercator. * * @param projection */ public void setProjection(Projection projection); /** * sets Radius of the planet for the map, in meters. Optional; defaults to Earth's equatorial radius of 6378137 * meters. * * @param radius */ public void setRadius(int radius); /** * sets The dimensions of each tile. Required. * * @param tileSize */ public void setTileSize(Size tileSize); }