@Override public List<RuleInfo> getRules() { List<RuleInfo> rules = new ArrayList<RuleInfo>(); for (FeatureTypeStyleInfo sfi : layerInfo.getNamedStyleInfo().getUserStyle().getFeatureTypeStyleList()) { rules.addAll(sfi.getRuleList()); } return rules; }
private AbstractReadOnlyAttributeInfo getAttributeByName(String name) { if (name != null) { for (AbstractAttributeInfo attributeInfo : layer.getLayerInfo().getFeatureInfo().getAttributes()) { if (attributeInfo instanceof AbstractReadOnlyAttributeInfo && attributeInfo.getName().equals(name)) { return (AbstractReadOnlyAttributeInfo) attributeInfo; } } } return null; }
/** * Applies the changes to the given layerinfo (if dirty). */ public void apply(final ClientVectorLayerInfo cli) { if (styleDataChanged) { NamedStyleInfo nsi = cli.getNamedStyleInfo(); if (nsi == null) { nsi = new NamedStyleInfo(); cli.setNamedStyleInfo(nsi); } nsi.setUserStyle(styleData); nsi.setName(styleName); nsi.setSldStyleName(styleName); } }
public void addVectorLayer(ClientVectorLayerInfo info) { String label = info.getLabel(); List<FeatureStyleInfo> defs = info.getNamedStyleInfo().getFeatureStyles(); for (FeatureStyleInfo styleDefinition : defs) { String text = ""; if (defs.size() > 1) { text = label + "(" + styleDefinition.getName() + ")"; } else { text = label; } LegendItemComponentImpl item = new LegendItemComponentImpl(styleDefinition, text, info.getLayerType(), getFont()); addComponent(item); } }
vectorRasterizingInfo.setShowing(layer.isShowing()); ClientVectorLayerInfo layerInfo = (ClientVectorLayerInfo) vectorLayer.getLayerInfo(); vectorRasterizingInfo.setStyle(layerInfo.getNamedStyleInfo()); if (!vectorLayer.getSelectedFeatures().isEmpty()) { Collection<Feature> selectedFeatures = vectorLayer.getSelectedFeatures(); ClientMapInfo mapInfo = mapPresenter.getConfiguration().getHintValue(GeomajasServerExtension.MAPINFO); FeatureStyleInfo selectStyle; switch (layerInfo.getLayerType()) { case GEOMETRY: case LINESTRING: break; default: throw new IllegalArgumentException("Unknown layer type " + layerInfo.getLayerType()); RuleInfo selectionRule = StyleUtil.createRule(layerInfo.getLayerType(), selectStyle); vectorRasterizingInfo.setSelectionRule(selectionRule); layerInfo.getWidgetInfo().put(VectorLayerRasterizingInfo.WIDGET_KEY, vectorRasterizingInfo); return layerInfo;
ClientVectorLayerInfo cvli = new ClientVectorLayerInfo(); cvli.setId(clientLayerName); cvli.setServerLayerId(serverLayerName); cvli.setFeatureInfo(fi); cvli.setUserData(new DeskmanagerClientLayerInfo()); cvli.setNamedStyleInfo(vli.getNamedStyleInfos().get(0)); cvli.setMaxExtent(maxExtent); cvli.setMaximumScale(maxScale); cvli.setMinimumScale(minScale); cvli.setCreatable(false); cvli.setDeletable(false); cvli.setUpdatable(false); cvli.setVisible(true); cvli.setLabel(getTypeLabel(sft.getTypeName()));
VectorLayer vectorLayer = (VectorLayer) layer; ClientVectorLayerInfo layerInfo = vectorLayer.getLayerInfo(); String label = layerInfo.getLabel(); FeatureTypeStyleInfo fts = layerInfo.getNamedStyleInfo().getUserStyle(). getFeatureTypeStyleList().get(0); for (RuleInfo rule : fts.getRuleList()) { title = layerInfo.getNamedStyleInfo().getName(); graphic.setLabel(title); graphic.setRuleInfo(rule); graphic.setLayerId(layerInfo.getServerLayerId()); item.addChild(graphic); item.addChild(getLegendLabel(legend, title));
public void setData(DynamicVectorLayerConfiguration layerConfig) { this.layerConfig = layerConfig; FeatureInfo fi = layerConfig.getClientVectorLayerInfo().getFeatureInfo(); String labelFieldName = layerConfig.getClientVectorLayerInfo().getNamedStyleInfo().getLabelStyle() .getLabelAttributeName(); PrimitiveAttributeInfo idField = fi.getIdentifier(); for (AttributeInfo ai : fi.getAttributes()) { if (ai instanceof PrimitiveAttributeInfo) { ListGridRecord lgr = new ListGridRecord(); PrimitiveAttributeInfo pai = (PrimitiveAttributeInfo) ai; lgr.setAttribute(FLD_NAME, pai.getName()); lgr.setAttribute(FLD_TYPE, pai.getType().toString()); lgr.setAttribute(FLD_IDENTIFYING, pai.isIdentifying()); lgr.setAttribute(FLD_IDFIELD, (pai.equals(idField))); lgr.setAttribute(FLD_LABELFIELD, pai.getName().equals(labelFieldName)); lgr.setAttribute(FLD_LABEL, pai.getLabel()); lgr.setAttribute(FLD_OBJECT, pai); grid.addData(lgr); if (pai.getName().equals(labelFieldName)) { currentLabelField = lgr; } if (pai.equals(idField)) { currentIdField = lgr; } if (!pai.isHidden()) { grid.selectRecord(lgr); } } // else unsupported } }
VectorServerLayer vectorLayer = (VectorServerLayer) layer; ClientVectorLayerInfo layerInfo = (ClientVectorLayerInfo) vectorLayer.getLayerInfo(); FeatureTypeStyleInfo fts = layerInfo.getNamedStyleInfo().getUserStyle().getFeatureTypeStyleList() .get(0); for (RuleInfo rule : fts.getRuleList()) { title = layerInfo.getNamedStyleInfo().getName(); graphic.setLabel(title); graphic.setRuleInfo(rule); graphic.setLayerId(layerInfo.getServerLayerId()); item.addChild(graphic); item.addChild(getLegendLabel(legend, title));
if (isVectorLayer) { ClientVectorLayerInfo cvli = (ClientVectorLayerInfo) serverCli; cvli.setFeatureInfo(((VectorLayerInfo) cvli.getLayerInfo()).getFeatureInfo()); NamedStyleInfo nsi = ((ClientVectorLayerInfo) targetCli).getNamedStyleInfo(); log.debug("Registering style for layer: " + targetCli.getLabel()); nsi.setName(styleService.registerStyle(targetCli.getServerLayerId(), nsi));
ClientVectorLayerInfo cvli = new ClientVectorLayerInfo(); cvli.setId(clientLayerName); cvli.setServerLayerId(serverLayerName); cvli.setFeatureInfo(fi); cvli.setUserData(new DeskmanagerClientLayerInfo()); cvli.setNamedStyleInfo(vli.getNamedStyleInfos().get(0)); cvli.setMaxExtent(maxExtent); cvli.setMaximumScale(maxScale); cvli.setMinimumScale(minScale); cvli.setCreatable(false); cvli.setDeletable(false); cvli.setUpdatable(false); cvli.setVisible(true); cvli.setLabel(getTypeLabel(sft.getTypeName()));
VectorLayer vectorLayer = (VectorLayer) layer; ClientVectorLayerInfo layerInfo = vectorLayer.getLayerInfo(); String label = layerInfo.getLabel(); FeatureTypeStyleInfo fts = layerInfo.getNamedStyleInfo().getUserStyle(). getFeatureTypeStyleList().get(0); for (RuleInfo rule : fts.getRuleList()) { title = layerInfo.getNamedStyleInfo().getName(); graphic.setLabel(title); graphic.setRuleInfo(rule); graphic.setLayerId(layerInfo.getServerLayerId()); item.addChild(graphic); item.addChild(getLegendLabel(legend, title));
vectorRasterizingInfo.setShowing(layer.isShowing()); ClientVectorLayerInfo layerInfo = (ClientVectorLayerInfo) vectorLayer.getLayerInfo(); vectorRasterizingInfo.setStyle(layerInfo.getNamedStyleInfo()); if (!vectorLayer.getSelectedFeatures().isEmpty()) { Collection<Feature> selectedFeatures = vectorLayer.getSelectedFeatures(); switch (layerInfo.getLayerType()) { case GEOMETRY: case LINESTRING: throw new IllegalArgumentException("Unknown layer type " + layerInfo.getLayerType()); RuleInfo selectionRule = StyleUtil.createRule(layerInfo.getLayerType(), selectStyle); vectorRasterizingInfo.setSelectionRule(selectionRule); layerInfo.getWidgetInfo().put(VectorLayerRasterizingInfo.WIDGET_KEY, vectorRasterizingInfo); return layerInfo;
public DynamicVectorLayerConfiguration getData() { if (currentIdField == null || currentLabelField == null) { return null; } FeatureInfo fi = layerConfig.getClientVectorLayerInfo().getFeatureInfo(); fi.setIdentifier((PrimitiveAttributeInfo) currentIdField.getAttributeAsObject(FLD_OBJECT)); layerConfig.getClientVectorLayerInfo().getNamedStyleInfo().getLabelStyle() .setLabelAttributeName(currentLabelField.getAttributeAsString(FLD_NAME)); for (ListGridRecord r : grid.getRecords()) { PrimitiveAttributeInfo pai = (PrimitiveAttributeInfo) r.getAttributeAsObject(FLD_OBJECT); pai.setLabel(r.getAttributeAsString(FLD_LABEL)); pai.setIdentifying(r.getAttributeAsBoolean(FLD_IDENTIFYING)); pai.setHidden(!grid.isSelected(r)); pai.setType(PrimitiveType.fromValue(r.getAttributeAsString(FLD_TYPE))); } return layerConfig; }
ClientVectorLayerInfo layerInfo = vectorLayer.getLayerInfo(); FeatureTypeStyleInfo fts = layerInfo.getNamedStyleInfo().getUserStyle().getFeatureTypeStyleList() .get(0); for (RuleInfo rule : fts.getRuleList()) { title = layerInfo.getNamedStyleInfo().getName(); graphic.setLabel(title); graphic.setRuleInfo(rule); graphic.setLayerId(layerInfo.getServerLayerId()); item.addChild(graphic); item.addChild(getLegendLabel(legend, title));
if (isVectorLayer) { ClientVectorLayerInfo cvli = (ClientVectorLayerInfo) serverCli; cvli.setFeatureInfo(((VectorLayerInfo) cvli.getLayerInfo()).getFeatureInfo()); NamedStyleInfo nsi = ((ClientVectorLayerInfo) targetCli).getNamedStyleInfo(); LOG.debug("Registering style for layer: " + targetCli.getLabel()); nsi.setName(styleService.registerStyle(targetCli.getServerLayerId(), nsi));
public static Map<String, Object> getProperties(ClientVectorLayerInfo cvli) { return getProperties(cvli.getNamedStyleInfo().getUserStyle()); }
@Override public void updateStyle(NamedStyleInfo nsi) { getLayerInfo().setNamedStyleInfo(nsi); GwtCommand commandRequest = new GwtCommand(RegisterNamedStyleInfoRequest.COMMAND); RegisterNamedStyleInfoRequest request = new RegisterNamedStyleInfoRequest(); request.setLayerId(getServerLayerId()); request.setNamedStyleInfo(getLayerInfo().getNamedStyleInfo()); commandRequest.setCommandRequest(request); GwtCommandDispatcher.getInstance().execute(commandRequest, new AbstractCommandCallback<RegisterNamedStyleInfoResponse>() { @Override public void execute(RegisterNamedStyleInfoResponse response) { getLayerInfo().getNamedStyleInfo().setName(response.getStyleName()); eventBus.fireEvent(new LayerStyleChangedEvent(VectorServerLayerImpl.this)); } }); }
private SearchCriterion[] buildCriteria() { List<SearchCriterion> critters = new ArrayList<SearchCriterion>(); String idField = layer.getLayerInfo().getFeatureInfo().getIdentifier().getName(); if (features != null) { for (Feature feat : features) { critters.add(new SearchCriterion(idField, "=", feat.getId())); } } return critters.toArray(new SearchCriterion[critters.size()]); } }
public void applyChanges(DynamicVectorLayerConfiguration layerConfig) { Map<String, Object> props = new HashMap<String, Object>(); props.put(SldUtils.FILLCOLOR, picker.getValueAsString()); props.put(SldUtils.STROKECOLOR, picker.getValueAsString()); props.put(SldUtils.FILLOPACITY, 0.5f); props.put(SldUtils.STROKEOPACITY, 1f); props.put(SldUtils.STYLENAME, "".equals(label.getValueAsString()) ? "default" : label.getValueAsString()); props.put(SldUtils.LABELFEATURENAME, layerConfig.getClientVectorLayerInfo().getNamedStyleInfo().getLabelStyle() .getLabelAttributeName()); layerConfig.getClientVectorLayerInfo().getNamedStyleInfo() .setUserStyle(SldUtils.createSimpleSldStyle(layerConfig, props)); // layerConfig.getClientVectorLayerInfo().getNamedStyleInfo().getFeatureStyles().clear(); // don't use these! }