Mercurial > dive4elements > river
annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/DoubleInputPanel.java @ 7602:c50dbbe17950
issue1596: Store table (cell) data twice: Once as (formatted) string
as coming from server, once transformed into float (or string).
The benefit is that now we can sort table data numerically, while keeping
the formatted and i18ned display of values.
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Wed, 27 Nov 2013 14:55:25 +0100 |
parents | ea9eef426962 |
children |
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; |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
10 |
2899
93302bd16f42
Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2898
diff
changeset
|
11 import com.google.gwt.core.client.GWT; |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
12 import com.google.gwt.i18n.client.NumberFormat; |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
4060
diff
changeset
|
13 |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
14 import com.smartgwt.client.util.SC; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
15 import com.smartgwt.client.widgets.Canvas; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
16 import com.smartgwt.client.widgets.Label; |
2899
93302bd16f42
Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2898
diff
changeset
|
17 import com.smartgwt.client.widgets.form.DynamicForm; |
93302bd16f42
Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2898
diff
changeset
|
18 import com.smartgwt.client.widgets.form.fields.TextItem; |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
19 import com.smartgwt.client.widgets.layout.HLayout; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
20 import com.smartgwt.client.widgets.layout.VLayout; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
21 |
5835
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
22 import org.dive4elements.river.client.client.FLYSConstants; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
23 import org.dive4elements.river.client.shared.model.Data; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
24 import org.dive4elements.river.client.shared.model.DataItem; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
25 import org.dive4elements.river.client.shared.model.DataList; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
26 import org.dive4elements.river.client.shared.model.DefaultData; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
27 import org.dive4elements.river.client.shared.model.DefaultDataItem; |
2899
93302bd16f42
Removed superfluous imports.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2898
diff
changeset
|
28 |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
4060
diff
changeset
|
29 import java.util.ArrayList; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
4060
diff
changeset
|
30 import java.util.List; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
4060
diff
changeset
|
31 |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
32 /** |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
33 * This UIProvider creates a panel for location or distance input. |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
34 * |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
35 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
36 */ |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
37 public class DoubleInputPanel |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
38 extends AbstractUIProvider |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
39 { |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
4060
diff
changeset
|
40 |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
4060
diff
changeset
|
41 private static final long serialVersionUID = 2006773072352563622L; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
4060
diff
changeset
|
42 |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
43 /** The message class that provides i18n strings. */ |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
44 protected FLYSConstants MSG = GWT.create(FLYSConstants.class); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
45 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
46 private TextItem inputPanel; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
47 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
48 private double value; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
49 |
4279
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
50 protected String dataName; |
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
51 |
4060
c4928af1ffab
Documentation, vimline.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3379
diff
changeset
|
52 |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
53 public DoubleInputPanel() { |
4279
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
54 dataName = "outliers"; |
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
55 } |
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
56 |
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
57 |
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
58 public DoubleInputPanel(String dataName) { |
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
59 this.dataName = dataName; |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
60 } |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
61 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
62 |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
4060
diff
changeset
|
63 @Override |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
64 public Canvas create(DataList list) { |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
65 VLayout layout = new VLayout(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
66 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
67 Canvas helper = createHelper(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
68 this.helperContainer.addMember(helper); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
69 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
70 Canvas submit = getNextButton(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
71 Canvas widget = createWidget(list); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
72 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
73 layout.addMember(widget); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
74 layout.addMember(submit); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
75 return layout; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
76 } |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
77 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
78 |
4060
c4928af1ffab
Documentation, vimline.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3379
diff
changeset
|
79 /** Create a labelled input-panel. */ |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
80 public Canvas createWidget(DataList data) { |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
81 VLayout layout = new VLayout(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
82 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
83 Label title = new Label(data.get(0).getDescription()); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
84 title.setHeight("25px"); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
85 |
3369
20688790f0c0
Read default value of Data item and set textfield of DoubleInputPanel if a default value is existing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2899
diff
changeset
|
86 DataItem defaultItem = data.get(0).getDefault(); |
20688790f0c0
Read default value of Data item and set textfield of DoubleInputPanel if a default value is existing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2899
diff
changeset
|
87 |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
88 DynamicForm form = new DynamicForm(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
89 inputPanel = new TextItem(); |
4279
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
90 inputPanel.setTitle(dataName); |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
91 inputPanel.setShowTitle(false); |
3369
20688790f0c0
Read default value of Data item and set textfield of DoubleInputPanel if a default value is existing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2899
diff
changeset
|
92 |
20688790f0c0
Read default value of Data item and set textfield of DoubleInputPanel if a default value is existing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2899
diff
changeset
|
93 if (defaultItem != null) { |
20688790f0c0
Read default value of Data item and set textfield of DoubleInputPanel if a default value is existing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2899
diff
changeset
|
94 inputPanel.setValue(defaultItem.getStringValue()); |
20688790f0c0
Read default value of Data item and set textfield of DoubleInputPanel if a default value is existing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2899
diff
changeset
|
95 } |
20688790f0c0
Read default value of Data item and set textfield of DoubleInputPanel if a default value is existing.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2899
diff
changeset
|
96 |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
97 form.setFields(inputPanel); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
98 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
99 layout.addMember(title); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
100 layout.addMember(form); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
101 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
102 return layout; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
103 } |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
104 |
4279
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
105 |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
106 protected Canvas createHelper() { |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
107 return new VLayout(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
108 } |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
109 |
4060
c4928af1ffab
Documentation, vimline.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3379
diff
changeset
|
110 |
c4928af1ffab
Documentation, vimline.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3379
diff
changeset
|
111 /** Create canvas to show previously entered value. */ |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
112 @Override |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
113 public Canvas createOld(DataList dataList) { |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
114 List<Data> items = dataList.getAll(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
115 |
4279
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
116 Data d = getData(items, dataName); |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
117 DataItem[] item = d.getItems(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
118 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
119 String v = item[0].getLabel(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
120 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
121 Label old = new Label(v); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
122 old.setWidth(130); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
123 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
124 HLayout layout = new HLayout(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
125 layout.setWidth("400px"); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
126 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
127 Label label = new Label(dataList.getLabel()); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
128 label.setWidth("200px"); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
129 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
130 Canvas back = getBackButton(dataList.getState()); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
131 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
132 layout.addMember(label); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
133 layout.addMember(old); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
134 layout.addMember(back); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
135 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
136 return layout; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
137 } |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
138 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
139 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
140 /** |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
141 * This method returns the selected data. |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
142 * |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
143 * @return the selected/inserted data. |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
144 */ |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
4060
diff
changeset
|
145 @Override |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
146 public Data[] getData() { |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
147 List<Data> data = new ArrayList<Data>(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
148 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
149 boolean valid = saveDataValues(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
150 if(valid) { |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
151 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
152 String vs = Double.valueOf(this.value).toString(); |
4279
8cec61ac5160
Refactored DoubleInputPanel to allow input to data different than "outliers".
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4131
diff
changeset
|
153 DataItem item = new DefaultDataItem(dataName, dataName, vs); |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
154 data.add(new DefaultData( |
4736
b195fede1c3b
Remove trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4279
diff
changeset
|
155 dataName, |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
156 null, |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
157 null, |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
158 new DataItem[] { item })); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
159 } |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
160 |
3379
0de61fc9d281
Removed some superfluous casts.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3369
diff
changeset
|
161 return data.toArray(new Data[data.size()]); |
2898
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
162 } |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
163 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
164 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
165 protected boolean saveDataValues() { |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
166 String st = inputPanel.getValueAsString(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
167 if (st == null) { |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
168 SC.warn("fehler... TODO"); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
169 return false; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
170 } |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
171 |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
172 try { |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
173 NumberFormat nf = NumberFormat.getDecimalFormat(); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
174 double d = nf.parse(st); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
175 this.value = d; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
176 } |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
177 catch(NumberFormatException nfe) { |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
178 SC.warn("fehler... nfe... TODO"); |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
179 return false; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
180 } |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
181 return true; |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
182 } |
242b5c230707
Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
183 } |
4060
c4928af1ffab
Documentation, vimline.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3379
diff
changeset
|
184 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |