X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;ds=sidebyside;f=org.argeo.app.geo%2Fsrc%2Forg%2Fargeo%2Fapp%2Fgeo%2Fux%2FMapPart.java;h=11ee0d11875345f1b716acb53df0e9ba9e3be39c;hb=21433ef7b049abb44bbd3c815b6724a15912accf;hp=d9536a339b81e47d45bb0060af1f5552b8293489;hpb=78449dce988dbc690234d0508c6fd609feabe45a;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 d9536a3..11ee0d1 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 @@ -2,15 +2,27 @@ 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); 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) { + }; }