package hep.aida.ref.plotter.style.editor; import com.l2fprod.common.beans.editor.StringPropertyEditor; public class StringStylePropertyEditor extends StringPropertyEditor { protected Class valueType; protected StylePropertyState oldValue; protected StylePropertyState currentValue; public StringStylePropertyEditor() { this(null); } public StringStylePropertyEditor(Class valueType) { super(); this.valueType = valueType; currentValue = new StylePropertyState(); } public Object getValue() { String value = (String) super.getValue(); if (value != null && value.trim().equals("")) value = null; //System.out.println("StringStylePropertyEditor.getValue :: value: "+value); currentValue.currentValue = value; return new StylePropertyState(currentValue); } public void setValue(Object value) { String valueString = null; if (value instanceof StylePropertyState) valueString = ((StylePropertyState) value).toString(true); else if (value != null) valueString = value.toString(); //System.out.println("StringStylePropertyEditor.setValue :: equals="+currentValue.equals(value)+", newValue: "+valueString); if (currentValue.equals(value)) return; oldValue = new StylePropertyState(currentValue); if (value == null) currentValue.clear(); else currentValue = (StylePropertyState) value; super.setValue(currentValue.currentValue); } }