Mercurial > dive4elements > river
comparison flys-client/src/main/java/de/intevation/flys/client/client/ui/WQAdaptedInputPanel.java @ 519:77234b1d009c
ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
flys-client/trunk@1998 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Tue, 24 May 2011 16:22:34 +0000 |
parents | e4f0bef52689 |
children | 5274b9317e40 |
comparison
equal
deleted
inserted
replaced
518:bac8e6ea277d | 519:77234b1d009c |
---|---|
181 layout.addMember(list); | 181 layout.addMember(list); |
182 | 182 |
183 layout.setHeight(25 + listHeight); | 183 layout.setHeight(25 + listHeight); |
184 layout.setWidth(350); | 184 layout.setWidth(350); |
185 | 185 |
186 initUserDefaults(dataList); | |
187 | |
186 return layout; | 188 return layout; |
189 } | |
190 | |
191 | |
192 protected void initUserDefaults(DataList dataList) { | |
193 | |
194 initUserWQValues(dataList); | |
195 initUserWQMode(dataList); | |
196 } | |
197 | |
198 | |
199 protected void initUserWQMode(DataList dataList) { | |
200 List<Data> allData = dataList.getAll(); | |
201 | |
202 Data dDef = getData(allData, "wq_mode"); | |
203 DataItem def = dDef != null ? dDef.getDefault() : null; | |
204 String value = def != null ? def.getStringValue() : null; | |
205 | |
206 if (value != null && value.equals(FIELD_WQ_Q)) { | |
207 modes.setValue(FIELD_WQ_MODE, FIELD_WQ_Q); | |
208 } | |
209 else { | |
210 modes.setValue(FIELD_WQ_MODE, FIELD_WQ_W); | |
211 } | |
212 } | |
213 | |
214 | |
215 protected void initUserWQValues(DataList dataList) { | |
216 List<Data> allData = dataList.getAll(); | |
217 | |
218 Data dDef = getData(allData, "wq_values"); | |
219 DataItem def = dDef != null ? dDef.getDefault() : null; | |
220 String value = def != null ? def.getStringValue() : null; | |
221 | |
222 if (value == null || value.length() == 0) { | |
223 return; | |
224 } | |
225 | |
226 String[] lines = value.split(GAUGE_SEPARATOR); | |
227 | |
228 if (lines == null || lines.length == 0) { | |
229 return; | |
230 } | |
231 | |
232 for (String line: lines) { | |
233 String[] cols = line.split(GAUGE_PART_SEPARATOR); | |
234 String title = createLineTitle(line); | |
235 | |
236 if (cols == null || cols.length < 3) { | |
237 continue; | |
238 } | |
239 | |
240 String[] strValues = cols[2].split(VALUE_SEPARATOR); | |
241 double[] values = new double[strValues.length]; | |
242 | |
243 int idx = 0; | |
244 | |
245 for (String strValue: strValues) { | |
246 try { | |
247 values[idx++] = Double.valueOf(strValue); | |
248 } | |
249 catch (NumberFormatException nfe) { | |
250 // do nothing | |
251 } | |
252 } | |
253 | |
254 String key = cols[0] + GAUGE_PART_SEPARATOR + cols[1]; | |
255 DoubleArrayPanel dap = wqranges.get(key); | |
256 dap.setValues(values); | |
257 } | |
187 } | 258 } |
188 | 259 |
189 | 260 |
190 protected Canvas createList(DataList dataList) { | 261 protected Canvas createList(DataList dataList) { |
191 VLayout layout = new VLayout(); | 262 VLayout layout = new VLayout(); |
197 | 268 |
198 DoubleArrayPanel dap = new DoubleArrayPanel( | 269 DoubleArrayPanel dap = new DoubleArrayPanel( |
199 createLineTitle(title), null, this, TitleOrientation.LEFT); | 270 createLineTitle(title), null, this, TitleOrientation.LEFT); |
200 | 271 |
201 wqranges.put(title, dap); | 272 wqranges.put(title, dap); |
202 | |
203 layout.addMember(dap); | 273 layout.addMember(dap); |
204 } | 274 } |
205 | 275 |
206 layout.setHeight(items.length * ROW_HEIGHT); | 276 layout.setHeight(items.length * ROW_HEIGHT); |
207 | 277 |