public VALUE getDerivedValue() throws StatusException {
   return validator.getValidatedField(preference.get());
 }
 public VALUE getDerivedValue(IProject project) throws StatusException {
   String stringValue = preference.getProjectPreference().getEffectiveValue(project);
   return validator.getValidatedField(stringValue);
 }
 @Override
 protected void setPrefValue(IEclipsePreferences preferences, String value) {
   String savedValue = value == null ? "" : ":" + value;
   super.setPrefValue(preferences, savedValue);
 }