private void setCurrentFeature(final Feature feature) { this.feature = feature; if (feature != null) { final Geometry geom = (Geometry) FeatureExt.getDefaultGeometryAttributeValue(feature); decoration.setGeometries(Collections.singleton(helper.toObjectiveCRS(geom))); dialogDecoration.clipboardPanel.setGeometry(geom); dialogDecoration.clipboardPanel.setCrs(FeatureExt.getCRS(feature.getType())); } else { dialogDecoration.clipboardPanel.setGeometry(null); } }
@Override public WebMapTileClient create(Map<String, ? extends Serializable> params) throws DataStoreException { try { return create(FeatureExt.toParameter(params, getParametersDescriptor())); } catch (InvalidParameterValueException ex) { throw new DataStoreException(ex); } }
@Override public void mouseClicked(final MouseEvent e) { final int button = e.getButton(); if (button == MouseEvent.BUTTON1) { if (feature == null) { setCurrentFeature(helper.grabFeature(e.getX(), e.getY(), false)); } } else if (button == MouseEvent.BUTTON3 && feature != null) { final Geometry oldgeom = (Geometry) FeatureExt.getDefaultGeometryAttributeValue(feature); final Geometry newGeom = dialogDecoration.clipboardPanel.getGeometry(); if (!oldgeom.equals(newGeom)) { helper.sourceModifyFeature(feature, newGeom, false); } reset(); } }