private void showFeatureInfo(Map<String, List<org.geomajas.layer.feature.Feature>> featureMap) { if (featureMap.size() > 0) { if (featureMap.size() == 1 && featureMap.values().iterator().next().size() == 1) { Layer<?> layer = (mapWidget.getMapModel().getLayer(featureMap.keySet().iterator().next())); if (null != layer) { org.geomajas.layer.feature.Feature featDTO = featureMap.values().iterator().next().get(0); Feature feature; if (layer instanceof VectorLayer) { feature = new Feature(featDTO, (VectorLayer) layer); } else { feature = new Feature(featDTO, null); } Window window = FeatureDetailWidgetFactory.createFeatureDetailWindow(feature, layer, false); window.setPageTop(mapWidget.getAbsoluteTop() + 25); window.setPageLeft(mapWidget.getAbsoluteLeft() + 25); window.setKeepInParentRect(true); window.draw(); } else { Notify.error(MESSAGES.multiLayerFeatureInfoLayerNotFound()); } } else { Window window = new MultiLayerFeatureInfoWindow(mapWidget, featureMap, featuresListLabels); window.setPageTop(mapWidget.getAbsoluteTop() + 10); window.setPageLeft(mapWidget.getAbsoluteLeft() + 50); window.draw(); } } else { Notify.info(MESSAGES.multiLayerFeatureInfoNoResult()); } }
public static void showFeatureDetailWindow(final MapWidget mapWidget, final Feature feature) { Window window = FeatureDetailWidgetFactory.createFeatureDetailWindow(feature, false); window.setPageTop(mapWidget.getAbsoluteTop() + 10); window.setPageLeft(mapWidget.getAbsoluteLeft() + 10); window.draw(); }
public void onClick(Feature feature, Layer layer) { Window window = FeatureDetailWidgetFactory.createFeatureDetailWindow(feature, layer, false); window.setPageTop(mapWidget.getAbsoluteTop() + 25); window.setPageLeft(mapWidget.getAbsoluteLeft() + 25); window.setKeepInParentRect(true); window.draw(); }