001    package com.google.gwt.maps.client.overlays;
002    
003    import com.google.gwt.core.client.JavaScriptObject;
004    import com.google.gwt.dom.client.Element;
005    
006    /**
007     * This object contains the DOM elements in which overlays are rendered. They are listed below with 'Pane 0' at the bottom and 'Pane 6' at the top.
008     * <br><br>
009     * See <a href="https://developers.google.com/maps/documentation/javascript/reference#MapPanes">MapPanes API Doc</a> 
010     */
011    public class MapPanes extends JavaScriptObject {
012    
013      /**
014       * use newInstance();
015       */
016      protected MapPanes() {}
017      
018      /**
019       * Create new {@link MapPanes} instance
020       */
021      public static final MapPanes newInstance() {
022        return JavaScriptObject.createObject().cast();
023      }
024      
025      /**
026       * sets This pane contains the info window. It is above all map overlays. (Pane 6).
027       * @param floatPane
028       */
029      public final native void setFloatPane(Element floatPane) /*-{
030        this.floatPane = floatPane;
031      }-*/;
032      
033      /**
034       * gets This pane contains the info window. It is above all map overlays. (Pane 6).
035       */
036      public final native Element getFloatPane() /*-{
037        return this.floatPane;
038      }-*/;
039      
040      /**
041       * sets This pane contains the info window shadow. It is above the overlayImage, so that markers can be in the shadow of the info window. (Pane 4).
042       * @param floatShadow
043       */
044      public final native void setFloatShadow(Element floatShadow) /*-{
045        this.floatShadow = floatShadow;
046      }-*/;
047      
048      /**
049       * gets This pane contains the info window shadow. It is above the overlayImage, so that markers can be in the shadow of the info window. (Pane 4).
050       */
051      public final native Element getFloatShadow() /*-{
052        return this.floatShadow;
053      }-*/;
054      
055      /**
056       * sets This pane is the lowest pane and is above the tiles. It may not receive DOM events. (Pane 0).
057       * @param mapPane
058       */
059      public final native void setMapPane(Element mapPane) /*-{
060        this.mapPane = mapPane;
061      }-*/;
062      
063      /**
064       * gets This pane is the lowest pane and is above the tiles. It may not receive DOM events. (Pane 0).
065       */
066      public final native Element getMapPane() /*-{
067        return this.mapPane;
068      }-*/;
069      
070      /**
071       * sets This pane contains the marker foreground images. (Pane 3).
072       * @param overlayImage
073       */
074      public final native void setOverlayImage(Element overlayImage) /*-{
075        this.overlayImage = overlayImage;
076      }-*/;
077      
078      /**
079       * gets This pane contains the marker foreground images. (Pane 3).
080       */
081      public final native Element getOverlayImage() /*-{
082        return this.overlayImage;
083      }-*/;
084      
085      /**
086       * sets This pane contains polylines, polygons, ground overlays and tile layer overlays. It may not receive DOM events. (Pane 1).
087       * @param overlayLayer
088       */
089      public final native void setOverlayLayer(Element overlayLayer) /*-{
090        this.overlayLayer = overlayLayer;
091      }-*/;
092      
093      /**
094       * gets This pane contains polylines, polygons, ground overlays and tile layer overlays. It may not receive DOM events. (Pane 1).
095       */
096      public final native Element getOverlayLayer() /*-{
097        return this.overlayLayer;
098      }-*/;
099      
100      /**
101       * sets This pane contains elements that receive DOM mouse events, such as the transparent targets for markers. It is above the floatShadow, so that markers in the shadow of the info window can be clickable. (Pane 5).
102       * @param overlayMouseTarget
103       */
104      public final native void setOverlayMouseTarget(Element overlayMouseTarget) /*-{
105        this.overlayMouseTarget = overlayMouseTarget;
106      }-*/;
107      
108      /**
109       * gets This pane contains elements that receive DOM mouse events, such as the transparent targets for markers. It is above the floatShadow, so that markers in the shadow of the info window can be clickable. (Pane 5).
110       */
111      public final native Element getOverlayMouseTarget() /*-{
112        return this.overlayMouseTarget;
113      }-*/;
114      
115      /**
116       * sets This pane contains the marker shadows. It may not receive DOM events. (Pane 2).
117       * @param overlayShadow
118       */
119      public final native void setOverlayShadow(Element overlayShadow) /*-{
120        this.overlayShadow = overlayShadow;
121      }-*/;
122      
123      /**
124       * gets This pane contains the marker shadows. It may not receive DOM events. (Pane 2).
125       */
126      public final native Element getOverlayShadow() /*-{
127        return this.overlayShadow;
128      }-*/;
129      
130    }