Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/states/RadioSelect.java @ 9053:ad2ae847e10e
- RadioButton-Auswahl generisch
- Überflutungsdauern (inudation of infrastructures) Ablauf states
author | gernotbelger |
---|---|
date | Fri, 04 May 2018 13:17:57 +0200 |
parents | |
children | 2f5052835b76 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/states/RadioSelect.java Fri May 04 13:17:57 2018 +0200 @@ -0,0 +1,54 @@ +/** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde + * Software engineering by + * Björnsen Beratende Ingenieure GmbH + * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt + * + * This file is Free Software under the GNU AGPL (>=v3) + * and comes with ABSOLUTELY NO WARRANTY! Check out the + * documentation coming with Dive4Elements River for details. + */ +package org.dive4elements.river.artifacts.states; + +import java.util.List; + +import org.dive4elements.artifacts.Artifact; +import org.dive4elements.artifacts.CallContext; +import org.dive4elements.artifacts.CallMeta; +import org.dive4elements.artifacts.common.utils.XMLUtils; +import org.dive4elements.river.artifacts.resources.Resources; +import org.w3c.dom.Element; + +/** + * @author Domenico Nardi Tironi + * + */ +public abstract class RadioSelect extends DefaultState { + + private static final long serialVersionUID = 1L; + private final List<String> entries; + + public RadioSelect() { + super(); + this.entries = makeEntries(); + } + + protected abstract List<String> makeEntries(); + + @Override + protected final String getUIProvider() { + return "radio_panel"; + } + + @Override + protected Element[] createItems(final XMLUtils.ElementCreator ec, final Artifact artifact, final String name, final CallContext context) { + final CallMeta meta = context.getMeta(); + final Element[] elements = new Element[this.entries.size()]; + int i = 0; + for (final String item : this.entries) { + elements[i] = createItem(ec, new String[] { Resources.getMsg(meta, item, item), item }); + i++; + } + return elements; + } + +}