X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.app.geo%2Fsrc%2Forg%2Fargeo%2Fapp%2Fgeo%2Fux%2FMapPart.java;h=84f4dd541cf6b0acfed6623e6c5680eb48965ac4;hb=2e08c3d9f69332161101e1bdda35054ae953748f;hp=7926263628bcd38b102da5d20749756e02e0c1b8;hpb=37c5768d88096f4eb7be02f18770b6a40be5c110;p=gpl%2Fargeo-suite.git diff --git a/org.argeo.app.geo/src/org/argeo/app/geo/ux/MapPart.java b/org.argeo.app.geo/src/org/argeo/app/geo/ux/MapPart.java index 7926263..84f4dd5 100644 --- a/org.argeo.app.geo/src/org/argeo/app/geo/ux/MapPart.java +++ b/org.argeo.app.geo/src/org/argeo/app/geo/ux/MapPart.java @@ -1,15 +1,29 @@ package org.argeo.app.geo.ux; +/** An UX part displaying a map. */ public interface MapPart { - enum Format { + /** A supported geographical data format. */ + enum GeoFormat { GEOJSON, GPX; } - void addPoint(Double lng, Double lat); + void addPoint(double lng, double lat, String style); - void addUrlLayer(String layer, Format format); + void addUrlLayer(String url, GeoFormat format, String style); void setZoom(int zoom); - void setCenter(Double lng, Double lat); + void setCenter(double lng, double lat); + + /** Event when a feature has been single-clicked. */ + record FeatureSingleClickEvent(String path) { + }; + + /** Event when a feature has been selected. */ + record FeatureSelectedEvent(String path) { + }; + + /** Event when a feature popup is requested. */ + record FeaturePopupEvent(String path) { + }; }