annotate 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
rev   line source
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
2 * Software engineering by
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
3 * Björnsen Beratende Ingenieure GmbH
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
5 *
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
6 * This file is Free Software under the GNU AGPL (>=v3)
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
8 * documentation coming with Dive4Elements River for details.
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
9 */
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
10 package org.dive4elements.river.artifacts.states;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
11
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
12 import java.util.List;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
13
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
14 import org.dive4elements.artifacts.Artifact;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
15 import org.dive4elements.artifacts.CallContext;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
16 import org.dive4elements.artifacts.CallMeta;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
17 import org.dive4elements.artifacts.common.utils.XMLUtils;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
18 import org.dive4elements.river.artifacts.resources.Resources;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
19 import org.w3c.dom.Element;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
20
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
21 /**
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
22 * @author Domenico Nardi Tironi
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
23 *
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
24 */
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
25 public abstract class RadioSelect extends DefaultState {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
26
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
27 private static final long serialVersionUID = 1L;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
28 private final List<String> entries;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
29
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
30 public RadioSelect() {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
31 super();
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
32 this.entries = makeEntries();
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
33 }
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
34
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
35 protected abstract List<String> makeEntries();
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
36
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
37 @Override
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
38 protected final String getUIProvider() {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
39 return "radio_panel";
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
40 }
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
41
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
42 @Override
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
43 protected Element[] createItems(final XMLUtils.ElementCreator ec, final Artifact artifact, final String name, final CallContext context) {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
44 final CallMeta meta = context.getMeta();
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
45 final Element[] elements = new Element[this.entries.size()];
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
46 int i = 0;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
47 for (final String item : this.entries) {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
48 elements[i] = createItem(ec, new String[] { Resources.getMsg(meta, item, item), item });
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
49 i++;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
50 }
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
51 return elements;
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
52 }
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
53
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents:
diff changeset
54 }

http://dive4elements.wald.intevation.org