final FeedbackPanel feedback = new FeedbackPanel("feedback");
add(feedback);
feedback.setOutputMarkupId(true);
GMap map = new GMap("topPanel");
GCircle circle = new GCircle(new GLatLng(37.35, -121.9), 10000, "#000000", 4, 0.7f, "#E9601A", 0.7f);
circle.setEditable(true);
circle.setDraggable(true);
GEventHandler eventHandler = new GEventHandler() {
@Override
public void onEvent(AjaxRequestTarget target) {
WebRequest request = (WebRequest) getRequest();
StringValue radius = request.getRequestParameters().getParameterValue("overlay.radius");
StringValue center = request.getRequestParameters().getParameterValue("overlay.latLng");
feedback.success("Radius (in meters): " + radius);
feedback.success("Coordinates: " + center);
target.add(feedback);
}
};
circle.addListener(GEvent.radius_changed, eventHandler);
circle.addListener(GEvent.center_changed, eventHandler);
map.addOverlay(circle);
map.setZoom(9);
add(map);
}