Skip to content

Commit d1d5af3

Browse files
paodbjavier-godoy
authored andcommitted
feat: add custom renderer to marker clustering
Close #103
1 parent c6857af commit d1d5af3

File tree

4 files changed

+16
-4
lines changed

4 files changed

+16
-4
lines changed

src/main/java/com/flowingcode/vaadin/addons/googlemaps/GoogleMap.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
@SuppressWarnings("serial")
4444
@Tag("google-map")
4545
@JsModule("@flowingcode/google-map/google-map.js")
46-
@NpmPackage(value = "@flowingcode/google-map", version = "3.4.0")
46+
@NpmPackage(value = "@flowingcode/google-map", version = "3.5.0")
4747
@NpmPackage(value = "@googlemaps/markerclusterer", version = "2.0.8")
4848
@JsModule("./googlemaps/geolocation.js")
4949
public class GoogleMap extends Component implements HasSize {
@@ -541,4 +541,16 @@ public CompletableFuture<LatLonBounds> getBounds() {
541541
return new LatLonBounds(result);
542542
});
543543
}
544+
545+
/**
546+
* Sets the custom renderer definition to be applied to the markers clustering. The custom
547+
* renderer needs to be define as a global JavaScript object conforming the Renderer interface
548+
* from
549+
* https://github.com/googlemaps/js-markerclusterer/blob/5ac92567dd0c52a1e1b897d791463a064656830c/src/renderer.ts#L65C2-L65C78
550+
*
551+
* @param customRenderer the custom renderer definition
552+
*/
553+
public void setClusteringRenderer(String customRenderer) {
554+
this.getElement().setProperty("customRenderer", customRenderer);
555+
}
544556
}

src/main/java/com/flowingcode/vaadin/addons/googlemaps/GoogleMapMarker.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
@SuppressWarnings("serial")
4040
@Tag("google-map-marker")
4141
@JsModule("@flowingcode/google-map/google-map-marker.js")
42-
@NpmPackage(value = "@flowingcode/google-map", version = "3.4.0")
42+
@NpmPackage(value = "@flowingcode/google-map", version = "3.5.0")
4343
@NpmPackage(value = "@googlemaps/markerclusterer", version = "2.0.8")
4444
public class GoogleMapMarker extends Component {
4545

src/main/java/com/flowingcode/vaadin/addons/googlemaps/GoogleMapPoint.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
@SuppressWarnings("serial")
2929
@Tag("google-map-point")
3030
@JsModule("@flowingcode/google-map/google-map-point.js")
31-
@NpmPackage(value = "@flowingcode/google-map", version = "3.4.0")
31+
@NpmPackage(value = "@flowingcode/google-map", version = "3.5.0")
3232
@NpmPackage(value = "@googlemaps/markerclusterer", version = "2.0.8")
3333
public class GoogleMapPoint extends Component {
3434

src/main/java/com/flowingcode/vaadin/addons/googlemaps/GoogleMapPolygon.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
@Tag("google-map-poly")
4141
@JsModule("@flowingcode/google-map/google-map-poly.js")
4242
@JsModule("@flowingcode/google-map/google-map-point.js")
43-
@NpmPackage(value = "@flowingcode/google-map", version = "3.4.0")
43+
@NpmPackage(value = "@flowingcode/google-map", version = "3.5.0")
4444
@NpmPackage(value = "@googlemaps/markerclusterer", version = "2.0.8")
4545
public class GoogleMapPolygon extends Component {
4646

0 commit comments

Comments
 (0)