private void writeXML(Document doc, PreviewPreset preset) { Element presetE = doc.createElement("previewpreset"); presetE.setAttribute("name", preset.getName()); presetE.setAttribute("version", "0.8.1"); for (Entry<String, Object> entry : preset.getProperties().entrySet()) { String propertyName = entry.getKey(); try { Object propertyValue = entry.getValue(); if (propertyValue != null) { String serialized = PreviewProperties.getValueAsText(propertyValue); if (serialized != null) { Element propertyE = doc.createElement("previewproperty"); propertyE.setAttribute("name", propertyName); propertyE.setAttribute("class", propertyValue.getClass().getName()); propertyE.setTextContent(serialized); presetE.appendChild(propertyE); } } } catch (Exception ex) { Exceptions.printStackTrace(ex); } } doc.appendChild(presetE); }
return new PreviewPreset(presetName, propertiesMap);
/** * Sets all preset's property values to this properties. * @param previewPreset the preset to get values from */ public void applyPreset(PreviewPreset previewPreset) { for (Entry<String, Object> entry : previewPreset.getProperties().entrySet()) { PreviewProperty prop = getProperty(entry.getKey()); if (prop != null) { prop.setValue(entry.getValue()); } else { simpleValues.put(entry.getKey(), entry.getValue()); } } }
@Override public void savePreset(String name) { if (model != null) { PreviewModel previewModel = previewController.getModel(); Map<String, Object> map = new HashMap<>(); for (PreviewProperty p : previewModel.getProperties().getProperties()) { map.put(p.getName(), p.getValue()); } for (Entry<String, Object> p : previewModel.getProperties().getSimpleValues()) { map.put(p.getKey(), p.getValue()); } PreviewPreset preset = new PreviewPreset(name, map); presetUtils.savePreset(preset); model.setCurrentPreset(preset); } }