Example usage for com.google.gwt.maps.client.geocode Placemark getCity

List of usage examples for com.google.gwt.maps.client.geocode Placemark getCity

Introduction

In this page you can find the example usage for com.google.gwt.maps.client.geocode Placemark getCity.

Prototype

public final String getCity() 

Source Link

Document

xAL field for "LocalityName" returned by the query.

Usage

From source file:com.google.gwt.maps.sample.hellomaps.client.ReverseGeocoderDemo.java

License:Apache License

public ReverseGeocoderDemo() {
    VerticalPanel outer = new VerticalPanel();
    map = new MapWidget(LatLng.newInstance(0, 0), 1);
    outer.add(map);/*from   www  . j a v  a2s  .  c  om*/
    map.setSize("500px", "300px");
    initWidget(outer);
    // Workaround for bug with click handler & setUItoDefaults() - see issue 260
    MapUIOptions opts = map.getDefaultUI();
    opts.setDoubleClick(false);
    map.setUI(opts);

    map.addMapClickHandler(new MapClickHandler() {

        public void onClick(final MapClickEvent event) {
            // Do not mis-interpret clicks on the info window and marker as
            // map click events to be reverse geocoded.
            if (event.getOverlay() != null) {
                return;
            }
            final Marker marker = new Marker(event.getLatLng());
            final VerticalPanel panel = new VerticalPanel();
            final InfoWindowContent content = new InfoWindowContent(panel);
            panel.add(new Label("LatLng: " + event.getLatLng().toString()));

            // Do a reverse geocode of this position
            geocoder.getLocations(event.getLatLng(), new LocationCallback() {

                public void onFailure(int statusCode) {
                    Window.alert("Failed to geocode position " + event.getLatLng() + ". Status: " + statusCode
                            + " " + StatusCodes.getName(statusCode));
                }

                public void onSuccess(JsArray<Placemark> locations) {
                    for (int i = 0; i < locations.length(); ++i) {
                        Placemark location = locations.get(i);
                        StringBuilder value = new StringBuilder();
                        if (location.getAddress() != null) {
                            value.append(location.getAddress());
                        } else {
                            if (location.getCity() != null) {
                                value.append(location.getCity());
                            }
                            if (location.getAdministrativeArea() != null) {
                                value.append(location.getAdministrativeArea() + ", ");
                            }
                            if (location.getCountry() != null) {
                                value.append(location.getCountry());
                            }
                        }
                        int ordinal = (i + 1);
                        panel.add(new Label("  " + ordinal + ") " + value.toString()));
                    }
                    map.addOverlay(marker);
                    map.getInfoWindow().open(marker, content);
                }
            });
            marker.addMarkerClickHandler(new MarkerClickHandler() {

                public void onClick(MarkerClickEvent markerClickEvent) {
                    if (!map.getInfoWindow().isVisible()) {
                        map.getInfoWindow().open(marker, content);
                    }
                }
            });
        }

    });
    geocoder = new Geocoder();
}

From source file:org.onebusaway.webapp.gwt.where_library.impl.CombinedSearchHandlerImpl.java

License:Apache License

private Place getPlacemarkAsPlace(Placemark mark) {

    String name = null;//from  w ww  .j a  v  a2 s  .  c  o  m
    List<String> description = new ArrayList<String>();

    if (mark.getStreet() != null) {
        name = mark.getStreet();
        if (mark.getCity() != null)
            description.add(mark.getCity());
        if (mark.getState() != null)
            description.add(mark.getState());
        if (mark.getPostalCode() != null)
            description.add(mark.getPostalCode());
    } else if (mark.getCity() != null) {
        name = mark.getCity();
        if (mark.getState() != null)
            name += ", " + mark.getState();
    } else if (mark.getState() != null) {
        name = mark.getState();
        if (mark.getCounty() != null)
            description.add(mark.getCountry());
    }

    return new PlaceImpl(name, description, mark.getPoint(), mark.getAccuracy());
}