001 package com.google.gwt.maps.client.panoramiolib; 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 007 /** 008 * This object defines the properties that can be set on a PanoramioLayer object. 009 * <br><br> 010 * See <a href="https://developers.google.com/maps/documentation/javascript/reference#PanoramioLayerOptions">PanoramioLayerOptions API Doc</a> 011 */ 012 public class PanoramioLayerOptions extends JavaScriptObject { 013 014 /** 015 * This object defines the properties that can be set on a PanoramioLayer object. 016 */ 017 public final static PanoramioLayerOptions newInstance() { 018 return JavaScriptObject.createObject().cast(); 019 } 020 021 /** 022 * use newInstance(); 023 */ 024 protected PanoramioLayerOptions() {} 025 026 /** 027 * If true, the layer receives mouse events. Default value is true. 028 */ 029 public final native boolean getClickable() /*-{ 030 return this.clickable; 031 }-*/; 032 033 /** 034 * The map on which to display the layer. 035 */ 036 public final MapWidget getMap() { 037 return MapWidget.newInstance(getMapImpl()); 038 } 039 040 private final native MapImpl getMapImpl() /*-{ 041 return this.map; 042 }-*/; 043 044 /** 045 * Suppress the rendering of info windows when layer features are clicked. 046 */ 047 public final native boolean getSuppressInfoWindows() /*-{ 048 return this.suppressInfoWindows; 049 }-*/; 050 051 /** 052 * A panoramio tag used to filter the photos which are displayed. Only photos which have been tagged with the supplied string will be shown. 053 */ 054 public final native String getTag() /*-{ 055 return this.tag; 056 }-*/; 057 058 /** 059 * A Panoramio user ID. If provided, only photos by this user will be displayed on the map. If both a tag and user ID are provided, the tag will take precedence. 060 */ 061 public final native String getUserId() /*-{ 062 return this.userId; 063 }-*/; 064 065 /** 066 * If true, the layer receives mouse events. Default value is true. 067 * @param clickable 068 */ 069 public final native void setClickable(boolean clickable) /*-{ 070 this.clickable = clickable; 071 }-*/; 072 073 /** 074 * The map on which to display the layer. 075 * @param mapWidget 076 */ 077 public final void setMap(MapWidget mapWidget) { 078 setMapImpl(mapWidget.getJso()); 079 } 080 081 private final native void setMapImpl(MapImpl map) /*-{ 082 this.map = map; 083 }-*/; 084 085 /** 086 * Suppress the rendering of info windows when layer features are clicked. 087 * @param suppressInfoWindows 088 */ 089 public final native void setSuppressInfoWindows(boolean suppressInfoWindows) /*-{ 090 this.suppressInfoWindows = suppressInfoWindows; 091 }-*/; 092 093 /** 094 * A panoramio tag used to filter the photos which are displayed. Only photos which have been tagged with the supplied string will be shown. 095 * @param tag 096 */ 097 public final native void setTag(String tag) /*-{ 098 this.tag = tag; 099 }-*/; 100 101 /** 102 * A Panoramio user ID. If provided, only photos by this user will be displayed on the map. If both a tag and user ID are provided, the tag will take precedence. 103 * @param userId 104 */ 105 public final native void setUserId(String userId) /*-{ 106 this.userId = userId; 107 }-*/; 108 109 }