001 package com.google.gwt.maps.client.overlays;
002
003 import com.google.gwt.core.client.JavaScriptObject;
004 import com.google.gwt.maps.client.MapImpl;
005 import com.google.gwt.maps.client.MapWidget;
006 import com.google.gwt.maps.client.base.LatLng;
007 import com.google.gwt.maps.client.streetview.StreetViewPanoramaImpl;
008 import com.google.gwt.maps.client.streetview.StreetViewPanoramaWidget;
009
010 /**
011 * create Marker Options
012 * <br><br>
013 * See <a href="https://developers.google.com/maps/documentation/javascript/reference#MarkerOptions">MarkerOptions API Doc</a>
014 */
015 public class MarkerOptions extends JavaScriptObject {
016
017 /**
018 * create Marker Options
019 * use newInstance();
020 */
021 protected MarkerOptions() {}
022
023 /**
024 * create Marker Options
025 */
026 public final static MarkerOptions newInstance() {
027 return JavaScriptObject.createObject().cast();
028 }
029
030 /**
031 * sets Which animation to play when marker is added to a map.
032 * @param animation
033 */
034 public final native void setAnimation(Animation animation) /*-{
035 this.animation = animation;
036 }-*/;
037
038 /**
039 * gets Which animation to play when marker is added to a map.
040 */
041 public final native Animation getAnimation() /*-{
042 return this.animation;
043 }-*/;
044
045 /**
046 * sets If true, the marker receives mouse and touch events. Default value is true.
047 * @param clickable
048 */
049 public final native void setClickable(boolean clickable) /*-{
050 this.clickable = clickable;
051 }-*/;
052
053 /**
054 * gets If true, the marker receives mouse and touch events. Default value is true.
055 */
056 public final native boolean getClickable() /*-{
057 return this.clickable;
058 }-*/;
059
060 /**
061 * sets Mouse cursor to show on hover
062 * @param cursor
063 */
064 public final native void setCursor(String cursor) /*-{
065 this.cursor = cursor;
066 }-*/;
067
068 /**
069 * gets Mouse cursor to show on hover
070 */
071 public final native String getCursor() /*-{
072 return this.cursor;
073 }-*/;
074
075 /**
076 * sets If true, the marker can be dragged. Default value is false.
077 * @param draggable
078 */
079 public final native void setDraggable(boolean draggable) /*-{
080 this.draggable = draggable;
081 }-*/;
082
083 /**
084 * gets If true, the marker can be dragged. Default value is false.
085 */
086 public final native boolean getDraggable() /*-{
087 return this.draggable;
088 }-*/;
089
090 /**
091 * sets If true, the marker shadow will not be displayed.
092 * @param flat
093 */
094 public final native void setFlat(boolean flat) /*-{
095 this.flat = flat;
096 }-*/;
097
098 /**
099 * gets If true, the marker shadow will not be displayed.
100 */
101 public final native boolean getFlat() /*-{
102 return this.flat;
103 }-*/;
104
105 /**
106 * sets Icon for the foreground
107 * @param icon
108 */
109 public final native void setIcon(String icon) /*-{
110 this.icon = icon;
111 }-*/;
112
113 /**
114 * gets Icon for the foreground
115 */
116 public final native String getIcon_String() /*-{
117 return this.icon;
118 }-*/;
119
120 /**
121 * sets Map on which to display Marker.
122 * @param icon
123 */
124 public final native void setIcon(MarkerImage icon) /*-{
125 this.icon = icon;
126 }-*/;
127
128 /**
129 * gets Map on which to display Marker.
130 */
131 public final native MarkerImage getIcon_MarkerImage() /*-{
132 return this.icon;
133 }-*/;
134
135 /**
136 * sets Map on which to display Polyline.
137 * @param mapWidget
138 */
139 public final void setMap(MapWidget mapWidget) {
140 setMapImpl(mapWidget.getJso());
141 }
142
143 private final native void setMapImpl(MapImpl map) /*-{
144 this.map = map;
145 }-*/;
146
147 /**
148 * gets Map on which to display Polyline.
149 */
150 public final MapWidget getMapWidget() {
151 return MapWidget.newInstance(getMapImpl());
152 }
153
154 private final native MapImpl getMapImpl() /*-{
155 return this.map;
156 }-*/;
157
158 public final void setMap(StreetViewPanoramaWidget streetViewPanoramaWidget) {
159 setMapImpl(streetViewPanoramaWidget.getJso());
160 }
161
162 private final native void setMapImpl(StreetViewPanoramaImpl map) /*-{
163 this.map = map;
164 }-*/;
165
166 /**
167 * gets Map on which to display Marker.
168 */
169 public final StreetViewPanoramaWidget getMapStreetViewPanoramaWidget() {
170 return StreetViewPanoramaWidget.newInstance(getMapImpl_Street());
171 }
172
173 private final native StreetViewPanoramaImpl getMapImpl_Street() /*-{
174 return this.map;
175 }-*/;
176
177 /**
178 * sets Optimization renders many markers as a single static element. Optimized rendering is enabled by default. Disable optimized rendering for animated GIFs or PNGs, or when each marker must be rendered as a separate DOM element (advanced usage only).
179 * @param optimized
180 */
181 public final native void setOptimized(boolean optimized) /*-{
182 this.optimized = optimized;
183 }-*/;
184
185 /**
186 * gets Optimization renders many markers as a single static element. Optimized rendering is enabled by default. Disable optimized rendering for animated GIFs or PNGs, or when each marker must be rendered as a separate DOM element (advanced usage only).
187 */
188 public final native boolean getOptimized() /*-{
189 return this.optimized;
190 }-*/;
191
192 /**
193 * sets Marker position. Required.
194 * @param position
195 */
196 public final native void setPosition(LatLng position) /*-{
197 this.position = position;
198 }-*/;
199
200 /**
201 * gets Marker position. Required.
202 */
203 public final native LatLng getPosition() /*-{
204 return this.position;
205 }-*/;
206
207 /**
208 * sets If false, disables raising and lowering the marker on drag. This option is true by default.
209 * @param raiseOnDrag
210 */
211 public final native void setRaiseOnDrag(boolean raiseOnDrag) /*-{
212 this.raiseOnDrag = raiseOnDrag;
213 }-*/;
214
215 /**
216 * gets If false, disables raising and lowering the marker on drag. This option is true by default.
217 */
218 public final native boolean getRaiseOnDrag() /*-{
219 return this.raiseOnDrag;
220 }-*/;
221
222 /**
223 * sets Shadow image
224 * @param shadow
225 */
226 public final native void setShadow(String shadow) /*-{
227 this.shadow = shadow;
228 }-*/;
229
230 /**
231 * gets Shadow image
232 */
233 public final native String getShadow_String() /*-{
234 return this.shadow;
235 }-*/;
236
237 /**
238 * sets Shadow image
239 * @param shadow
240 */
241 public final native void setShadow(MarkerImage shadow) /*-{
242 this.shadow = shadow;
243 }-*/;
244
245 /**
246 * gets Shadow image
247 */
248 public final native MarkerImage getShadow_MarkerImage() /*-{
249 return this.shadow;
250 }-*/;
251
252 /**
253 * sets Image map region definition used for drag/click.
254 * @param shape
255 */
256 public final native void setShape(MarkerShape shape) /*-{
257 this.shape = shape;
258 }-*/;
259
260 /**
261 * gets Image map region definition used for drag/click.
262 */
263 public final native MarkerShape getShape() /*-{
264 return this.shape;
265 }-*/;
266
267 /**
268 * sets Rollover text
269 * @param title
270 */
271 public final native void setTitle(String title) /*-{
272 this.title = title;
273 }-*/;
274
275 /**
276 * gets Rollover text
277 */
278 public final native String getTitle() /*-{
279 return this.title;
280 }-*/;
281
282 /**
283 * sets If true, the marker is visible
284 * @param visible
285 */
286 public final native void setVisible(boolean visible) /*-{
287 this.visible = visible;
288 }-*/;
289
290 /**
291 * gets If true, the marker is visible
292 */
293 public final native boolean getVisible() /*-{
294 return this.visible;
295 }-*/;
296
297 /**
298 * sets All markers are displayed on the map in order of their zIndex, with higher values displaying in front of markers with lower values. By default, markers are displayed according to their vertical position on screen, with lower markers appearing in front of markers further up the screen.
299 * @param zIndex
300 */
301 public final native void setZindex(int zIndex) /*-{
302 this.zIndex = zIndex;
303 }-*/;
304
305 /**
306 * gets All markers are displayed on the map in order of their zIndex, with higher values displaying in front of markers with lower values. By default, markers are displayed according to their vertical position on screen, with lower markers appearing in front of markers further up the screen.
307 */
308 public final native int getZindex() /*-{
309 return this.zIndex;
310 }-*/;
311
312 }
313
314
315
316
317
318