use of edu.stanford.bmir.protege.web.shared.form.data.FormDataValue in project webprotege by protegeproject.
the class CompositeFieldEditor method getValue.
@Override
public Optional<FormDataValue> getValue() {
GWT.log("[CompositeFieldEditor] Getting values");
Map<String, FormDataValue> childData = new HashMap<>();
for (FormElementId childId : childEditors.keySet()) {
GWT.log("[CompositeFieldEditor] " + childId);
ValueEditor<FormDataValue> childEditor = childEditors.get(childId);
if (childEditor != null) {
Optional<FormDataValue> childValue = childEditor.getValue();
GWT.log("[CompositeFieldEditor] Value: " + childValue);
if (childValue.isPresent()) {
childData.put(childId.getId(), childValue.get());
}
}
}
GWT.log("[CompositeFieldEditor] All values: " + childData);
if (childData.isEmpty()) {
return Optional.empty();
}
FormDataObject theValue = new FormDataObject(childData);
GWT.log("[CompositeFieldEditor] The value: " + theValue);
return Optional.of(theValue);
}
use of edu.stanford.bmir.protege.web.shared.form.data.FormDataValue in project webprotege by protegeproject.
the class FormPresenter method setFormData.
private void setFormData(@Nonnull FormData formData) {
formView.getElementViews().forEach(view -> {
Optional<FormElementId> theId = view.getId();
if (theId.isPresent()) {
FormElementId id = theId.get();
Optional<FormDataValue> formElementData = formData.getFormElementData(id);
if (formElementData.isPresent()) {
view.getEditor().setValue(formElementData.get());
} else {
view.getEditor().clearValue();
}
updateRequiredValuePresent(view);
} else {
view.getEditor().clearValue();
}
});
}
use of edu.stanford.bmir.protege.web.shared.form.data.FormDataValue in project webprotege by protegeproject.
the class FormPresenter method createFormAndSetFormData.
/**
* Creates the form from scratch and fills in the specified form data.
*
* @param formDescriptor The descriptor that describes the form.
* @param formData The form data to be filled into the form.
*/
private void createFormAndSetFormData(@Nonnull FormDescriptor formDescriptor, @Nonnull FormData formData) {
formView.clear();
for (FormElementDescriptor elementDescriptor : formDescriptor.getElements()) {
Optional<FormDataValue> dataValue = formData.getFormElementData(elementDescriptor.getId());
createFormEditor(elementDescriptor, dataValue);
}
}
use of edu.stanford.bmir.protege.web.shared.form.data.FormDataValue in project webprotege by protegeproject.
the class FormDataValueConverter method encodeObject.
@Override
public Object encodeObject(FormDataValue value, MappedField optionalExtraInfo) {
if (value instanceof FormDataObject) {
Document document = new Document();
FormDataObject object = (FormDataObject) value;
object.getMap().forEach((key, val) -> document.put(key, encodeObject(val, optionalExtraInfo)));
return document;
} else if (value instanceof FormDataList) {
List<Object> result = new ArrayList<>();
FormDataList list = (FormDataList) value;
list.getList().forEach(e -> result.add(encodeObject(e, optionalExtraInfo)));
return result;
} else if (value instanceof FormDataPrimitive) {
FormDataPrimitive primitive = (FormDataPrimitive) value;
if (primitive.isNumber()) {
return primitive.getValueAsDouble();
} else if (primitive.isString()) {
return primitive.getValueAsString();
} else if (primitive.isBoolean()) {
return primitive.getValueAsBoolean();
} else if (primitive instanceof FormDataPrimitive.LiteralPrimitive) {
OWLLiteral literal = primitive.asLiteral().get();
Document document = new Document();
document.put("literal", literal.getLiteral());
if (literal.isRDFPlainLiteral()) {
document.put("lang", literal.getLang());
} else {
document.put("datatype", literal.getDatatype());
}
return document;
} else if (primitive instanceof FormDataPrimitive.IRIPrimitive) {
return new Document("iri", primitive.asIRI().get().toString());
} else if (primitive instanceof FormDataPrimitive.OWLEntityPrimitive) {
OWLEntity entity = (OWLEntity) primitive.getValue();
return entityConverter.encodeObject(entity, optionalExtraInfo);
}
} else {
throw new RuntimeException("Unknown type of object " + value);
}
return null;
}
use of edu.stanford.bmir.protege.web.shared.form.data.FormDataValue in project webprotege by protegeproject.
the class ChoiceFieldCheckBoxEditor method setValue.
@Override
public void setValue(FormDataValue value) {
clearValue();
for (FormDataValue data : value.asList()) {
for (CheckBox checkBox : checkBoxes.keySet()) {
if (checkBoxes.get(checkBox).getValue().equals(data)) {
checkBox.setValue(true);
}
}
}
selectDefaultChoices();
}
Aggregations