use of org.discotools.gwt.leaflet.client.marker.Marker in project activityinfo by bedatadriven.
the class LeafletMarkerFactory method createPieMapMarker.
public static Marker createPieMapMarker(PieMapMarker marker) {
StringBuilder sb = new StringBuilder();
sb.append("/icon?t=piechart&r=").append(marker.getRadius());
for (SliceValue slice : marker.getSlices()) {
sb.append("&value=").append(slice.getValue());
sb.append("&color=").append(slice.getColor());
}
String iconUrl = sb.toString();
int size = marker.getRadius() * 2;
IconOptions iconOptions = new IconOptions();
iconOptions.setIconUrl(iconUrl);
iconOptions.setIconAnchor(new Point(marker.getRadius(), marker.getRadius()));
iconOptions.setIconSize(new Point(size, size));
Options markerOptions = new MarkerOptions();
markerOptions.setProperty("icon", new Icon(iconOptions));
setModel(markerOptions.getJSObject(), marker);
return new Marker(toLatLng(marker), markerOptions);
}
use of org.discotools.gwt.leaflet.client.marker.Marker in project activityinfo by bedatadriven.
the class LocationMap method updateSearchMarkers.
private void updateSearchMarkers() {
markerLayer.clearLayers();
List<LocationDTO> locations = Lists.reverse(searchPresenter.getStore().getModels());
LatLngBounds bounds = new LatLngBounds();
boolean empty = true;
for (LocationDTO location : locations) {
if (location.hasCoordinates()) {
LatLng latLng = new LatLng(location.getLatitude(), location.getLongitude());
Marker marker = createMarker(latLng, location.getMarker());
markerLayer.addLayer(marker);
bounds.extend(latLng);
bindClickEvent(location, marker);
empty = false;
}
}
//
// if (searchPresenter.get !empty) {
// updateMap(bounds);
// }
}
use of org.discotools.gwt.leaflet.client.marker.Marker in project activityinfo by bedatadriven.
the class LocationMap method createNewLocationMarker.
private void createNewLocationMarker() {
DivIcon icon = createIcon("");
Options markerOptions = new Options();
markerOptions.setProperty("icon", icon);
markerOptions.setProperty("draggable", true);
newLocationMarker = new Marker(newLatLng(newLocationPresenter.getLatLng()), markerOptions);
EventHandlerManager.addEventHandler(newLocationMarker, org.discotools.gwt.leaflet.client.events.handler.EventHandler.Events.dragend, new EventHandler<Event>() {
@Override
public void handle(Event event) {
newLocationPresenter.setLatLng(new AiLatLng(newLocationMarker.getLatLng().lat(), newLocationMarker.getLatLng().lng()));
}
});
map.addLayer(newLocationMarker);
}
use of org.discotools.gwt.leaflet.client.marker.Marker in project activityinfo by bedatadriven.
the class LocationMap method createMarker.
private Marker createMarker(LatLng latLng, String label) {
DivIcon icon = createIcon(label);
Options markerOptions = new Options();
markerOptions.setProperty("icon", icon);
Marker marker = new Marker(latLng, markerOptions);
return marker;
}
use of org.discotools.gwt.leaflet.client.marker.Marker in project activityinfo by bedatadriven.
the class LeafletMarkerFactory method create.
public static Marker create(MapMarker mapMarker, final EventHandler... markerEventHandlers) {
final Marker marker;
if (mapMarker instanceof IconMapMarker) {
marker = createIconMapMarker((IconMapMarker) mapMarker);
} else if (mapMarker instanceof PieMapMarker) {
marker = createPieMapMarker((PieMapMarker) mapMarker);
} else if (mapMarker instanceof BubbleMapMarker) {
marker = createBubbleMapMarker((BubbleMapMarker) mapMarker);
} else {
final Options options = new Options();
setModel(options.getJSObject(), mapMarker);
marker = new Marker(toLatLng(mapMarker), options);
}
if (markerEventHandlers != null) {
for (EventHandler handler : markerEventHandlers) {
EventHandlerManager.addEventHandler(marker, EventHandler.Events.click, handler);
}
}
return marker;
}
Aggregations