Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package wicket.contrib.gmap.api;
  
  import  org.apache.wicket.Component;
  import  org.apache.wicket.ajax.AjaxRequestTarget;
  import  org.apache.wicket.markup.html.WebMarkupContainer;
  import  org.apache.wicket.markup.repeater.RepeatingView;
  import  org.apache.wicket.request.Request;
  import  org.apache.wicket.request.cycle.RequestCycle;
  
Represents an Google Maps API's GInfoWindow.
 
 public class GInfoWindow extends WebMarkupContainer
 {
Default serialVersionUID.
 
 	private static final long serialVersionUID = 1L;
 
 	private GInfoWindowTab[] tabs;
 
 	private GLatLng latLng;
 
 	private GMarker marker;
 
 	private RepeatingView content = new RepeatingView("content");
 
 	public GInfoWindow()
 	{
 		super("infoWindow");
 
 		add();
 	}

Update state from a request to an AJAX target.
 
 	public void update(AjaxRequestTarget target)
 	{
 		Request request = RequestCycle.get().getRequest();
 
 		if (request.getRequestParameters().getParameterValue("infoWindow.hidden").toBoolean())
 		{
 			// Attention: don't use close() as this might result in an
 			// endless AJAX request loop
 			 = null;
 			 = null;
 		}
 	}
 
 	public final String getJSinit()
 	{
 		if ( != null)
 		{
 			return getJSopen();
 		}
 
 		if ( != null)
 		{
 			return getJSopen();
 		}
 
 		return "";
 	}
 
 	private void setTabs(GInfoWindowTab[] tabs)
 	{
 		.removeAll();
 
 		this. = tabs;
 		for (GInfoWindowTab tab : tabs)
 		{
 			.add(tab.getContent());
 		}
 	}

Open an info window.

Parameters:
content content to open in info window
Returns:
This
 
 	public GInfoWindow open(GLatLng latLng, Component content)
 	{
 		return open(latLngnew GInfoWindowTab(content));
 	}

Open an info window.

Parameters:
content content to open in info window
Returns:
This
	public GInfoWindow open(GMarker marker, Component content)
	{
		return open(markernew GInfoWindowTab(content));
	}
	public GInfoWindow open(GLatLng latLngGInfoWindowTab... tabs)
	{
		setTabs(tabs);
		this. = latLng;
		 = null;
		AjaxRequestTarget target = getRequestCycle().find(AjaxRequestTarget.class);
		if (target != null)
		{
			target.appendJavaScript(getJSopen(latLngtabs));
			target.add(this);
		}
		return this;
	}
	public GInfoWindow open(GMarker markerGInfoWindowTab... tabs)
	{
		setTabs(tabs);
		 = null;
		this. = marker;
		AjaxRequestTarget target = getRequestCycle().find(AjaxRequestTarget.class);
		if (target != null)
		{
			target.appendJavaScript(getJSopen(markertabs));
			target.add(this);
		}
		return this;
	}
	public boolean isOpen()
	{
		return ( != null ||  != null);
	}
	public void close()
	{
		 = null;
		 = null;
		AjaxRequestTarget target = getRequestCycle().find(AjaxRequestTarget.class);
		if (target != null)
		{
			target.appendJavaScript(getJSclose());
			target.add(this);
		}
	}
	private String getJSopen(GLatLng latLngGInfoWindowTab[] tabs)
	{
		StringBuffer buffer = new StringBuffer();
		buffer.append("openInfoWindowTabs(");
		buffer.append(latLng.getJSconstructor());
		buffer.append(",[");
		boolean first = true;
		for (GInfoWindowTab tab : tabs)
		{
			if (!first)
			{
				buffer.append(",");
			}
			buffer.append(tab.getJSconstructor());
			first = false;
		}
		buffer.append("])");
		return getGMap2().getJSinvoke(buffer.toString());
	}
	private String getJSopen(GMarker markerGInfoWindowTab[] tabs)
	{
		StringBuffer buffer = new StringBuffer();
		buffer.append("openMarkerInfoWindowTabs('");
		buffer.append(marker.getId());
		buffer.append("',[");
		boolean first = true;
		for (GInfoWindowTab tab : tabs)
		{
			if (!first)
			{
				buffer.append(",");
			}
			buffer.append(tab.getJSconstructor());
			first = false;
		}
		buffer.append("])");
		return getGMap2().getJSinvoke(buffer.toString());
	}
	private String getJSclose()
	{
		return getGMap2().getJSinvoke("closeInfoWindow()");
	}
	private GMap2 getGMap2()
	{
		return findParent(GMap2.class);
	}
New to GrepCode? Check out our FAQ X