X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=gis%2Fplugins%2Forg.argeo.gis.ui.rap.openlayers%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fgis%2Fui%2Frap%2Fopenlayers%2FOpenLayersMapControlCreator.java;h=1610110e60e205ccb31bfe1a82991cb168e61638;hb=af5f77f80fbf95da1f48d57e440c9e2cdca3c3a2;hp=c38a7f5b9d7f4396b339ff94dba22dcf22624eba;hpb=477f38e7085ce32c6f09e062cac90f7ba8769698;p=lgpl%2Fargeo-commons.git diff --git a/gis/plugins/org.argeo.gis.ui.rap.openlayers/src/main/java/org/argeo/gis/ui/rap/openlayers/OpenLayersMapControlCreator.java b/gis/plugins/org.argeo.gis.ui.rap.openlayers/src/main/java/org/argeo/gis/ui/rap/openlayers/OpenLayersMapControlCreator.java index c38a7f5b9..1610110e6 100644 --- a/gis/plugins/org.argeo.gis.ui.rap.openlayers/src/main/java/org/argeo/gis/ui/rap/openlayers/OpenLayersMapControlCreator.java +++ b/gis/plugins/org.argeo.gis.ui.rap.openlayers/src/main/java/org/argeo/gis/ui/rap/openlayers/OpenLayersMapControlCreator.java @@ -1,67 +1,22 @@ package org.argeo.gis.ui.rap.openlayers; -import org.argeo.gis.ui.MapContextProvider; +import javax.jcr.Node; + +import org.argeo.geotools.jcr.GeoJcrMapper; import org.argeo.gis.ui.MapControlCreator; -import org.argeo.gis.ui.rap.openlayers.custom.BingLayer; -import org.argeo.gis.ui.rap.openlayers.custom.GoogleLayer; -import org.eclipse.swt.SWT; -import org.eclipse.swt.layout.GridData; +import org.argeo.gis.ui.MapViewer; import org.eclipse.swt.widgets.Composite; -import org.polymap.openlayers.rap.widget.OpenLayersWidget; -import org.polymap.openlayers.rap.widget.base_types.OpenLayersMap; -import org.polymap.openlayers.rap.widget.base_types.Projection; -import org.polymap.openlayers.rap.widget.controls.KeyboardDefaultsControl; -import org.polymap.openlayers.rap.widget.controls.LayerSwitcherControl; -import org.polymap.openlayers.rap.widget.controls.MouseDefaultsControl; -import org.polymap.openlayers.rap.widget.controls.NavigationControl; -import org.polymap.openlayers.rap.widget.controls.OverviewMapControl; -import org.polymap.openlayers.rap.widget.controls.PanZoomBarControl; -import org.polymap.openlayers.rap.widget.controls.ScaleControl; -import org.polymap.openlayers.rap.widget.layers.OSMLayer; -import org.polymap.openlayers.rap.widget.layers.WMSLayer; public class OpenLayersMapControlCreator implements MapControlCreator { - public Composite createMapControl(Composite parent, - MapContextProvider mapContextProvider) { - - // OpenLayersWidget openLayersWidget = new OpenLayersWidget(parent, - // SWT.MULTI | SWT.WRAP, "/js_lib/OpenLayers/OpenLayers.js"); - OpenLayersWidget openLayersWidget = new OpenLayersWidget(parent, - SWT.MULTI | SWT.WRAP); - openLayersWidget.setLayoutData(new GridData(GridData.FILL_BOTH)); - - OpenLayersMap map = openLayersWidget.getMap(); - map.setProjection(new Projection("EPSG:900913")); - map.setDisplayProjection(new Projection("EPSG:4326")); - map.setUnits("m"); - - map.addControl(new LayerSwitcherControl()); - NavigationControl navigationControl = new NavigationControl(); - navigationControl.setObjAttr("handleRightClicks", true); - navigationControl.setObjAttr("zoomBoxEnabled", true); - map.addControl(navigationControl); - map.addControl(new KeyboardDefaultsControl()); - map.addControl(new PanZoomBarControl()); - map.addControl(new ScaleControl()); - - // WMSLayer baseLayer = new WMSLayer("argeo_dev", - // "https://dev.argeo.org/geoserver/wms?", - // "naturalearth:10m_admin_0_countries"); - - OSMLayer osmLayer = new OSMLayer("OSM", - "http://tile.openstreetmap.org/${z}/${x}/${y}.png", 19); - map.addLayer(osmLayer); - - map.addControl(new OverviewMapControl()); - - // map.addLayer(new BingLayer("Bing Aerial", BingLayer.AERIAL)); + private GeoJcrMapper geoJcrMapper; + + public MapViewer createMapControl(Node context,Composite parent) { + return new OpenLayersMapViewer(context,geoJcrMapper,parent); + } - MapContextAdapter mapContextAdapter = new MapContextAdapter( - mapContextProvider.getMapContext(), map); - // FIXME: find a better way to register it - openLayersWidget.setData(mapContextAdapter); - // openLayersWidget.addMouseListener(mapContextAdapter); - return openLayersWidget; + public void setGeoJcrMapper(GeoJcrMapper geoJcrMapper) { + this.geoJcrMapper = geoJcrMapper; } + }