use of org.olat.modules.forms.model.xml.Slider in project OpenOLAT by OpenOLAT.
the class EvaluationFormController method forgeRubric.
private EvaluationFormElementWrapper forgeRubric(Rubric element) {
EvaluationFormElementWrapper wrapper = new EvaluationFormElementWrapper(element);
List<Slider> sliders = element.getSliders();
List<SliderWrapper> sliderWrappers = new ArrayList<>(sliders.size());
for (Slider slider : sliders) {
String responseIdentifier = slider.getId();
EvaluationFormResponse response = identifierToResponses.get(responseIdentifier);
SliderType type = element.getSliderType();
SliderWrapper sliderWrapper = null;
if (type == SliderType.discrete) {
sliderWrapper = forgeDiscreteRadioButtons(slider, element, response);
} else if (type == SliderType.discrete_slider) {
sliderWrapper = forgeDiscreteSlider(slider, element, response);
} else if (type == SliderType.continuous) {
sliderWrapper = forgeContinuousSlider(slider, element, response);
}
if (sliderWrapper != null) {
sliderWrappers.add(sliderWrapper);
}
}
wrapper.setSliders(sliderWrappers);
return wrapper;
}
use of org.olat.modules.forms.model.xml.Slider in project OpenOLAT by OpenOLAT.
the class RubricController method updateForm.
protected void updateForm() {
EvaluationFormElementWrapper wrapper = new EvaluationFormElementWrapper(rubric);
List<Slider> sliders = rubric.getSliders();
List<SliderWrapper> sliderWrappers = new ArrayList<>(sliders.size());
for (Slider slider : sliders) {
SliderType type = rubric.getSliderType();
SliderWrapper sliderWrapper = null;
if (type == SliderType.discrete) {
sliderWrapper = forgeDiscreteRadioButtons(slider, rubric);
} else if (type == SliderType.discrete_slider) {
sliderWrapper = forgeDiscreteSlider(slider, rubric);
} else if (type == SliderType.continuous) {
sliderWrapper = forgeContinuousSlider(slider, rubric);
}
if (sliderWrapper != null) {
sliderWrappers.add(sliderWrapper);
}
}
wrapper.setSliders(sliderWrappers);
flc.contextPut("element", wrapper);
}
use of org.olat.modules.forms.model.xml.Slider in project OpenOLAT by OpenOLAT.
the class EvaluationFormElementWrapper method isRightLabels.
public boolean isRightLabels() {
if (element instanceof Rubric) {
Rubric rubric = (Rubric) element;
List<Slider> rubricSliders = rubric.getSliders();
if (rubricSliders != null && rubricSliders.size() > 0) {
for (Slider slider : rubricSliders) {
if (slider != null && StringHelper.containsNonWhitespace(slider.getEndLabel())) {
return true;
}
}
}
}
return false;
}
use of org.olat.modules.forms.model.xml.Slider in project OpenOLAT by OpenOLAT.
the class EvaluationFormElementWrapper method isLeftLabels.
public boolean isLeftLabels() {
if (element instanceof Rubric) {
Rubric rubric = (Rubric) element;
List<Slider> rubricSliders = rubric.getSliders();
if (rubricSliders != null && rubricSliders.size() > 0) {
for (Slider slider : rubricSliders) {
if (slider != null && StringHelper.containsNonWhitespace(slider.getStartLabel())) {
return true;
}
}
}
}
return false;
}
use of org.olat.modules.forms.model.xml.Slider in project OpenOLAT by OpenOLAT.
the class RubricEditorController method initForm.
@Override
protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
rubricCtrl = new RubricController(ureq, getWindowControl(), rubric, mainForm);
listenTo(rubricCtrl);
formLayout.add("rubric", rubricCtrl.getInitialFormItem());
settingsLayout = FormLayoutContainer.createDefaultFormLayout("settings", getTranslator());
settingsLayout.setRootForm(mainForm);
formLayout.add("settings", settingsLayout);
String[] sliderTypeValues = new String[] { translate("slider.discrete"), translate("slider.discrete.slider"), translate("slider.continuous") };
typeEl = uifactory.addDropdownSingleselect("slider.type." + count.incrementAndGet(), "slider.type", settingsLayout, sliderTypeKeys, sliderTypeValues, null);
typeEl.addActionListener(FormEvent.ONCHANGE);
typeEl.setEnabled(!restrictedEdit);
boolean typeSelected = false;
if (rubric != null && rubric.getSliderType() != null) {
for (String sliderTypeKey : sliderTypeKeys) {
if (sliderTypeKey.equals(rubric.getSliderType().name())) {
typeEl.select(sliderTypeKey, true);
typeSelected = true;
}
}
}
if (!typeSelected) {
typeEl.select(sliderTypeKeys[0], true);
}
stepsEl = uifactory.addDropdownSingleselect("slider.steps." + count.incrementAndGet(), "slider.steps", settingsLayout, sliderStepKeys, sliderStepKeys, null);
stepsEl.addActionListener(FormEvent.ONCHANGE);
stepsEl.setEnabled(!restrictedEdit);
boolean stepSelected = false;
if (rubric != null && rubric.getSteps() > 0) {
String steps = Integer.toString(rubric.getSteps());
for (String sliderStepKey : sliderStepKeys) {
if (sliderStepKey.equals(steps)) {
stepsEl.select(sliderStepKey, true);
stepSelected = true;
}
}
}
if (!stepSelected) {
stepsEl.select(sliderStepKeys[4], true);
}
updateTypeSettings();
updateSteps();
for (Slider slider : rubric.getSliders()) {
SliderRow row = forgeSliderRow(slider);
sliders.add(row);
}
if (formLayout instanceof FormLayoutContainer) {
FormLayoutContainer layoutCont = (FormLayoutContainer) formLayout;
layoutCont.contextPut("sliders", sliders);
}
long postfix = CodeHelper.getRAMUniqueID();
saveButton = uifactory.addFormLink("save_" + postfix, "save", null, formLayout, Link.BUTTON);
if (!restrictedEdit) {
addSliderButton = uifactory.addFormLink("add.slider." + postfix, "add.slider", null, formLayout, Link.BUTTON);
addSliderButton.setIconLeftCSS("o_icon o_icon-lg o_icon_add");
}
if (formLayout instanceof FormLayoutContainer) {
FormLayoutContainer layoutCont = (FormLayoutContainer) formLayout;
layoutCont.contextPut("postfix", Long.toString(postfix));
}
}
Aggregations