X-Git-Url: https://git.argeo.org/?p=gpl%2Fargeo-suite.git;a=blobdiff_plain;f=org.argeo.geo.ui%2Fsrc%2Forg%2Fargeo%2Fsupport%2Fopenlayers%2FOverviewMap.java;fp=org.argeo.geo.ui%2Fsrc%2Forg%2Fargeo%2Fsupport%2Fopenlayers%2FOverviewMap.java;h=0000000000000000000000000000000000000000;hp=b2fd01ed0839967a80713ad3cc43e9f11c504e61;hb=6e56ffa34cb02ab04d028423aea342e3dfed4358;hpb=c285180bece610b2c2921d44fe14b6dde2123efa diff --git a/org.argeo.geo.ui/src/org/argeo/support/openlayers/OverviewMap.java b/org.argeo.geo.ui/src/org/argeo/support/openlayers/OverviewMap.java deleted file mode 100644 index b2fd01e..0000000 --- a/org.argeo.geo.ui/src/org/argeo/support/openlayers/OverviewMap.java +++ /dev/null @@ -1,66 +0,0 @@ -package org.argeo.support.openlayers; - -import java.util.List; - -import javax.jcr.Node; -import javax.jcr.RepositoryException; -import javax.jcr.observation.Event; -import javax.jcr.observation.EventIterator; -import javax.jcr.observation.EventListener; -import javax.jcr.query.Query; - -import org.argeo.cms.ui.CmsUiProvider; -import org.argeo.cms.ui.util.CmsUiUtils; -import org.argeo.entity.EntityType; -import org.argeo.jcr.JcrException; -import org.argeo.jcr.JcrUtils; -import org.eclipse.swt.SWT; -import org.eclipse.swt.layout.GridLayout; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Control; - -/** Displays an overview map. */ -public class OverviewMap implements CmsUiProvider { - - @Override - public Control createUi(Composite parent, Node context) throws RepositoryException { - parent.setLayout(new GridLayout()); - refreshUi(parent, context); - - try { - String[] nodeTypes = { EntityType.geopoint.get() }; - context.getSession().getWorkspace().getObservationManager().addEventListener(new EventListener() { - - @Override - public void onEvent(EventIterator events) { - if (!parent.isDisposed()) - parent.getDisplay().asyncExec(() -> { - try { - refreshUi(parent, context); - } catch (RepositoryException e) { - throw new JcrException(e); - } - }); - } - }, Event.PROPERTY_CHANGED | Event.NODE_ADDED | Event.NODE_REMOVED | Event.PROPERTY_ADDED, "/", true, null, - nodeTypes, false); - } catch (RepositoryException e) { - throw new IllegalStateException("Cannot add JCR observer", e); - } - - return parent; - } - - protected void refreshUi(Composite parent, Node context) throws RepositoryException { - CmsUiUtils.clear(parent); - Query query = context.getSession().getWorkspace().getQueryManager() - .createQuery("SELECT * FROM [" + EntityType.geopoint.get() + "]", Query.JCR_SQL2); - List geoPoints = JcrUtils.nodeIteratorToList(query.execute().getNodes()); - OpenLayersMap map = new OpenLayersMap(parent, SWT.NONE, getClass().getResource("map-osm.html")); - map.setLayoutData(CmsUiUtils.fillAll()); - - // apafMap.setZoom(7); - // apafMap.setCenter(-2.472, 8.010); - map.addPoints(geoPoints); - } -}