annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/RadioPanel.java @ 9066:b5d7a9d79837

uinfo.inundation_duration ui
author gernotbelger
date Fri, 11 May 2018 17:04:35 +0200
parents b6919e3c2d86
children 2ec912345359
rev   line source
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5993
ea9eef426962 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5861
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5993
ea9eef426962 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5861
diff changeset
6 * documentation coming with Dive4Elements River for details.
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
9 package org.dive4elements.river.client.client.ui;
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
10
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
11 import java.util.LinkedHashMap;
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
12
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
13 import org.dive4elements.river.client.shared.model.Data;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
14 import org.dive4elements.river.client.shared.model.DataItem;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
15 import org.dive4elements.river.client.shared.model.DataList;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
16 import org.dive4elements.river.client.shared.model.DefaultData;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
17 import org.dive4elements.river.client.shared.model.DefaultDataItem;
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
18
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
19 import com.google.gwt.core.client.GWT;
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
20 import com.smartgwt.client.widgets.Canvas;
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
21 import com.smartgwt.client.widgets.Label;
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
22 import com.smartgwt.client.widgets.form.DynamicForm;
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
23 import com.smartgwt.client.widgets.form.fields.RadioGroupItem;
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
24 import com.smartgwt.client.widgets.layout.HLayout;
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
25 import com.smartgwt.client.widgets.layout.VLayout;
4184
03de5c424f95 Fix warnings and minor TODOs in flys-client.
Christian Lins <christian.lins@intevation.de>
parents: 3547
diff changeset
26
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
27 public class RadioPanel extends AbstractUIProvider {
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
28
4184
03de5c424f95 Fix warnings and minor TODOs in flys-client.
Christian Lins <christian.lins@intevation.de>
parents: 3547
diff changeset
29 private static final long serialVersionUID = 3357071563224461043L;
03de5c424f95 Fix warnings and minor TODOs in flys-client.
Christian Lins <christian.lins@intevation.de>
parents: 3547
diff changeset
30
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
31 protected String dataName;
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
32 protected DynamicForm form;
3547
8a16ff3b9a7f Removed trailing whitespace
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3535
diff changeset
33
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
34 @Override
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
35 public Canvas createOld(final DataList dataList) {
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
36 final Data data = dataList.get(0);
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
37 final DataItem[] items = data.getItems();
9066
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9063
diff changeset
38 // hat Einfluss auf Layout in der Übersicht (oben) nach Setzen des Wertes für den State
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
39 final HLayout layout = new HLayout();
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
40 final Label label = new Label(dataList.getLabel());
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
41 final Label value = new Label(items[0].getLabel());
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
42 layout.setWidth(400);
9066
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9063
diff changeset
43 label.setWidth(200); // nicht ändern; scheint wohl ne Konstante zu sein!
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9063
diff changeset
44 value.setWidth(180); // änderbar
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9063
diff changeset
45 layout.setHeight(35);
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
46
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
47 layout.addMember(label);
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
48 layout.addMember(value);
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
49 layout.addMember(getBackButton(dataList.getState()));
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
50
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
51 return layout;
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
52 }
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
53
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
54 @Override
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
55 public Canvas create(final DataList dataList) {
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
56 final Data data = dataList.get(0);
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
57 final DataItem[] items = data.getItems();
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
58
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
59 this.dataName = data.getLabel();
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
60
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
61 final VLayout layout = new VLayout();
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
62 final Label label = new Label(data.getDescription());
9066
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9063
diff changeset
63 label.setWrap(false);
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
64 final RadioGroupItem rgi = new RadioGroupItem("selection");
9066
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9063
diff changeset
65 rgi.setWrapTitle(false);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9063
diff changeset
66 rgi.setWrap(false);
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
67 rgi.setShowTitle(false);
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
68 GWT.log("items: " + items.length);
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
69 final LinkedHashMap<String, String> elems = new LinkedHashMap<String, String>();
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
70 for (final DataItem item : items) {
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
71 GWT.log(item.getStringValue() + "; " + item.getLabel());
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
72 elems.put(item.getStringValue(), item.getLabel());
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
73 }
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
74 rgi.setValueMap(elems);
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
75 rgi.setDefaultValue(items[0].getStringValue());
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
76
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
77 this.form = new DynamicForm();
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
78 this.form.setFields(rgi);
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
79 layout.setMembersMargin(10);
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
80 layout.setHeight(35);
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
81 label.setHeight(35);
9066
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9063
diff changeset
82 layout.setWidth(300);
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9063
diff changeset
83 label.setWidth(300);
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
84
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
85 layout.addMember(label);
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
86 layout.addMember(this.form);
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
87 layout.addMember(getNextButton());
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
88 layout.setMembersMargin(10);
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
89
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
90 // initDefaultValues(dataList);
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
91
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
92 return layout;
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
93 }
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
94
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
95 @Override
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
96 protected Data[] getData() {
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
97 final String value = this.form.getValueAsString("selection");
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
98 final DataItem item = new DefaultDataItem(this.dataName, this.dataName, value);
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
99 return new Data[] { new DefaultData(this.dataName, null, null, new DataItem[] { item }) };
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
100 }
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
101
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 8856
diff changeset
102 protected String getTitle(final DataItem item) {
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
103 return item.getLabel();
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
104 }
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
105 }

http://dive4elements.wald.intevation.org