use of org.eclipse.scout.rt.client.ui.wizard.IWizardStep in project scout.rt by eclipse.
the class JsonWizardProgressField method initJsonProperties.
@Override
protected void initJsonProperties(WIZARD_PROGRESS_FIELD model) {
super.initJsonProperties(model);
putJsonProperty(new JsonProperty<WIZARD_PROGRESS_FIELD>(IWizardProgressField.PROP_STEPS, model) {
@Override
protected List<IWizardStep<? extends IForm>> modelValue() {
return getModel().getSteps();
}
@Override
public Object prepareValueForToJson(Object value) {
@SuppressWarnings("unchecked") List<IWizardStep<? extends IForm>> wizardSteps = (List<IWizardStep<? extends IForm>>) value;
JSONArray jsonSteps = new JSONArray();
if (wizardSteps != null) {
for (IWizardStep<? extends IForm> wizardStep : wizardSteps) {
if (wizardStep.isVisible()) {
jsonSteps.put(wizardStepToJson(wizardStep));
}
}
}
return jsonSteps;
}
});
putJsonProperty(new JsonProperty<WIZARD_PROGRESS_FIELD>(IWizardProgressField.PROP_ACTIVE_STEP, model) {
@Override
protected IWizardStep<? extends IForm> modelValue() {
return getModel().getActiveStep();
}
@Override
public Object prepareValueForToJson(Object value) {
@SuppressWarnings("unchecked") IWizardStep<? extends IForm> activeWizardStep = (IWizardStep<? extends IForm>) value;
return getStepIndex(activeWizardStep);
}
@Override
public String jsonPropertyName() {
return PROP_ACTIVE_STEP_INDEX;
}
});
}
Aggregations