* @return The parsed, storable property value.
* @throws PropertyException For an invalid property value.
*/
private PropertyValue createPropertyValue(final FObj fobj,
final String value) throws PropertyException {
final PropertyValue pv = standardParse(fobj, value);
if (pv.canEvalKeyword()) {
return pv;
}
if (pv.canEvalPercentage()) {
switch (getPropertyType()) {
case SPACE_START:
case SPACE_END: {
return pv;
}
}
}
if (pv.canEvalLength()) {
return new DtSpace(pv, pv, pv, FoValue.DISCARD,
new DtInteger(0));
}
throw unexpectedValue(value, fobj);
}