Example usage for com.google.gwt.maps.client.events.idle IdleMapHandler IdleMapHandler

List of usage examples for com.google.gwt.maps.client.events.idle IdleMapHandler IdleMapHandler

Introduction

In this page you can find the example usage for com.google.gwt.maps.client.events.idle IdleMapHandler IdleMapHandler.

Prototype

IdleMapHandler

Source Link

Usage

From source file:gov.wa.wsdot.mobile.client.activities.ferries.vesselwatch.VesselWatchMapViewGwtImpl.java

License:Open Source License

public VesselWatchMapViewGwtImpl() {

    initWidget(uiBinder.createAndBindUi(this));

    accessibilityPrepare();//from w  ww .j av a  2 s . c  om

    if (MGWT.getOsDetection().isAndroid()) {
        leftFlexSpacer.setVisible(false);
    }

    if (localStorage != null) {
        storageMap = new StorageMap(localStorage);
        if (!storageMap.containsKey("KEY_SHOW_CAMERAS")) {
            localStorage.setItem("KEY_SHOW_CAMERAS", "true"); // Set initial default value
        }

        // Set initial default location and zoom to Seattle area.
        localStorage.setItem("KEY_MAP_LAT", "47.565125");
        localStorage.setItem("KEY_MAP_LON", "-122.480508");
        localStorage.setItem("KEY_MAP_ZOOM", "11");
    }

    final TrafficLayer trafficLayer = TrafficLayer.newInstance();

    LatLng center = LatLng.newInstance(Double.valueOf(localStorage.getItem("KEY_MAP_LAT")),
            Double.valueOf(localStorage.getItem("KEY_MAP_LON")));

    MapOptions opts = MapOptions.newInstance();
    opts.setMapTypeId(MapTypeId.ROADMAP);
    opts.setCenter(center);
    opts.setZoom(Integer.valueOf(localStorage.getItem("KEY_MAP_ZOOM"), 10));
    opts.setPanControl(false);
    opts.setZoomControl(false);
    opts.setMapTypeControl(false);
    opts.setScaleControl(false);
    opts.setStreetViewControl(false);
    opts.setOverviewMapControl(false);

    // Custom map style to remove all "Points of Interest" labels from map
    MapTypeStyle style1 = MapTypeStyle.newInstance();
    style1.setFeatureType(MapTypeStyleFeatureType.POI);
    style1.setElementType(MapTypeStyleElementType.LABELS);
    style1.setStylers(new MapTypeStyler[] { MapTypeStyler.newVisibilityStyler("off") });
    MapTypeStyle[] styles = { style1 };

    opts.setMapTypeStyles(styles);

    mapWidget = new MyMapWidget(opts);
    trafficLayer.setMap(mapWidget);
    flowPanel.add(mapWidget);

    mapWidget.setSize(Window.getClientWidth() + "px",
            (Window.getClientHeight() - ParserUtils.windowUI()) + "px");

    Window.addResizeHandler(new ResizeHandler() {
        @Override
        public void onResize(ResizeEvent event) {
            MapHandlerRegistration.trigger(mapWidget, MapEventType.RESIZE);

        }
    });

    mapWidget.addResizeHandler(new ResizeMapHandler() {
        @Override
        public void onEvent(ResizeMapEvent event) {
            mapWidget.setSize(Window.getClientWidth() + "px",
                    (Window.getClientHeight() - ParserUtils.windowUI()) + "px");
        }
    });

    mapWidget.addIdleHandler(new IdleMapHandler() {

        @Override
        public void onEvent(IdleMapEvent event) {
            localStorage.setItem("KEY_MAP_LAT", String.valueOf(mapWidget.getCenter().getLatitude()));
            localStorage.setItem("KEY_MAP_LON", String.valueOf(mapWidget.getCenter().getLongitude()));
            localStorage.setItem("KEY_MAP_ZOOM", String.valueOf(mapWidget.getZoom()));

            if (presenter != null) {
                presenter.onMapIsIdle();
            }
        }
    });

}

From source file:gov.wa.wsdot.mobile.client.activities.trafficmap.TrafficMapViewGwtImpl.java

License:Open Source License

public TrafficMapViewGwtImpl() {

    initWidget(uiBinder.createAndBindUi(this));

    accessibilityPrepare();//from   w ww .  j ava 2  s.c  om

    if (MGWT.getOsDetection().isAndroid()) {
        leftFlexSpacer.setVisible(false);
    }

    if (localStorage != null) {
        storageMap = new StorageMap(localStorage);
        if (!storageMap.containsKey("KEY_SHOW_CAMERAS")) {
            localStorage.setItem("KEY_SHOW_CAMERAS", "true"); // Set initial default value
        }
        if (!storageMap.containsKey("KEY_SHOW_RESTAREAS")) {
            localStorage.setItem("KEY_SHOW_RESTAREAS", "false"); // Set initial default value
        }

        // Set initial default location and zoom to Seattle area.
        if (!storageMap.containsKey("KEY_MAP_LAT")) {
            localStorage.setItem("KEY_MAP_LAT", "47.5990");
        }
        if (!storageMap.containsKey("KEY_MAP_LON")) {
            localStorage.setItem("KEY_MAP_LON", "-122.3350");
        }
        if (!storageMap.containsKey("KEY_MAP_ZOOM")) {
            localStorage.setItem("KEY_MAP_ZOOM", "12");
        }
    }

    final TrafficLayer trafficLayer = TrafficLayer.newInstance();

    LatLng center = LatLng.newInstance(Double.valueOf(localStorage.getItem("KEY_MAP_LAT")),
            Double.valueOf(localStorage.getItem("KEY_MAP_LON")));

    MapOptions opts = MapOptions.newInstance();
    opts.setMapTypeId(MapTypeId.ROADMAP);
    opts.setCenter(center);
    opts.setZoom(Integer.valueOf(localStorage.getItem("KEY_MAP_ZOOM"), 10));
    opts.setPanControl(false);
    opts.setZoomControl(false);
    opts.setMapTypeControl(false);
    opts.setScaleControl(false);
    opts.setStreetViewControl(false);
    opts.setOverviewMapControl(false);

    // Custom map style to remove all "Points of Interest" labels from map
    MapTypeStyle style1 = MapTypeStyle.newInstance();
    style1.setFeatureType(MapTypeStyleFeatureType.POI);
    style1.setElementType(MapTypeStyleElementType.LABELS);
    style1.setStylers(new MapTypeStyler[] { MapTypeStyler.newVisibilityStyler("off") });
    MapTypeStyle[] styles = { style1 };

    opts.setMapTypeStyles(styles);

    mapWidget = new MyMapWidget(opts);
    trafficLayer.setMap(mapWidget);
    flowPanel.add(mapWidget);

    mapWidget.setSize(Window.getClientWidth() + "px",
            (Window.getClientHeight() - ParserUtils.windowUI()) + "px");

    Window.addResizeHandler(new ResizeHandler() {
        @Override
        public void onResize(ResizeEvent event) {
            MapHandlerRegistration.trigger(mapWidget, MapEventType.RESIZE);

        }
    });

    mapWidget.addResizeHandler(new ResizeMapHandler() {
        @Override
        public void onEvent(ResizeMapEvent event) {
            mapWidget.setSize(Window.getClientWidth() + "px",
                    (Window.getClientHeight() - ParserUtils.windowUI()) + "px");
        }
    });

    mapWidget.addIdleHandler(new IdleMapHandler() {

        @Override
        public void onEvent(IdleMapEvent event) {
            localStorage.setItem("KEY_MAP_LAT", String.valueOf(mapWidget.getCenter().getLatitude()));
            localStorage.setItem("KEY_MAP_LON", String.valueOf(mapWidget.getCenter().getLongitude()));
            localStorage.setItem("KEY_MAP_ZOOM", String.valueOf(mapWidget.getZoom()));

            if (presenter != null) {
                presenter.onMapIsIdle();
            }
        }
    });
}