comparison flys-client/src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java @ 236:d12078053b59

Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q). flys-client/trunk@1792 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 02 May 2011 14:54:11 +0000
parents 27f5afc4dbde
children 4a684d29404f
comparison
equal deleted inserted replaced
235:d3f8d6966c20 236:d12078053b59
139 139
140 140
141 public Canvas createOld(DataList dataList) { 141 public Canvas createOld(DataList dataList) {
142 List<Data> items = dataList.getAll(); 142 List<Data> items = dataList.getAll();
143 143
144 Data dMode = getData(items, "wq_mode"); 144 Data dMode = getData(items, "wq_mode");
145 Data dFrom = getData(items, "wq_from"); 145 Data dSelection = getData(items, "wq_selection");
146 Data dTo = getData(items, "wq_to"); 146 Data dSingle = getData(items, "wq_single");
147 Data dStep = getData(items, "wq_step"); 147 Data dFrom = getData(items, "wq_from");
148 Data dTo = getData(items, "wq_to");
149 Data dStep = getData(items, "wq_step");
148 150
149 DataItem[] mode = dMode.getItems(); 151 DataItem[] mode = dMode.getItems();
150 DataItem[] from = dFrom.getItems(); 152 String strMode = mode[0].getStringValue();
151 DataItem[] to = dTo.getItems(); 153 boolean wMode = strMode.equals(FIELD_WQ_W);
152 DataItem[] step = dStep.getItems();
153 154
154 HLayout layout = new HLayout(); 155 HLayout layout = new HLayout();
155 layout.setWidth("400px"); 156 layout.setWidth("400px");
156 157
157 Label label = new Label(dataList.getLabel()); 158 Label label = new Label(dataList.getLabel());
158 label.setWidth("200px"); 159 label.setWidth("200px");
159 160
160 String text = mode[0].getStringValue().equals(FIELD_WQ_W) 161 String text = null;
161 ? createWString(from[0], to[0], step[0]) 162
162 : createQString(from[0], to[0], step[0]); 163 DataItem[] selItem = dSelection.getItems();
164 String sel = selItem != null
165 ? selItem[0].getStringValue()
166 : "";
167
168 if (sel.equals("single")) {
169 DataItem[] single = dSingle.getItems();
170
171 text = wMode
172 ? createWString(single[0])
173 : createQString(single[0]);
174 }
175 else {
176 DataItem[] from = dFrom.getItems();
177 DataItem[] to = dTo.getItems();
178 DataItem[] step = dStep.getItems();
179
180 text = wMode
181 ? createWString(from[0], to[0], step[0])
182 : createQString(from[0], to[0], step[0]);
183 }
163 184
164 Label selected = new Label(text); 185 Label selected = new Label(text);
165 selected.setWidth("130px"); 186 selected.setWidth("130px");
166 187
167 Canvas back = getBackButton(dataList.getState()); 188 Canvas back = getBackButton(dataList.getState());
221 242
222 return sb.toString(); 243 return sb.toString();
223 } 244 }
224 245
225 246
247 protected String createWString(DataItem single) {
248 return single.getLabel();
249 }
250
251
226 protected String createQString(DataItem from, DataItem to, DataItem step) { 252 protected String createQString(DataItem from, DataItem to, DataItem step) {
227 StringBuilder sb = new StringBuilder(); 253 StringBuilder sb = new StringBuilder();
228 sb.append(from.getLabel()); 254 sb.append(from.getLabel());
229 sb.append(" " + MSG.unitQFrom() + " "); 255 sb.append(" " + MSG.unitQFrom() + " ");
230 sb.append(to.getLabel()); 256 sb.append(to.getLabel());
231 sb.append(" " + MSG.unitQTo() + " "); 257 sb.append(" " + MSG.unitQTo() + " ");
232 sb.append(step.getLabel()); 258 sb.append(step.getLabel());
233 sb.append(" " + MSG.unitQStep()); 259 sb.append(" " + MSG.unitQStep());
234 260
235 return sb.toString(); 261 return sb.toString();
262 }
263
264
265 protected String createQString(DataItem single) {
266 return single.getLabel();
236 } 267 }
237 268
238 269
239 /** 270 /**
240 * This method greps the Data with name <i>name</i> from the list and 271 * This method greps the Data with name <i>name</i> from the list and
367 } 398 }
368 else { 399 else {
369 saveSingleQValues(form); 400 saveSingleQValues(form);
370 } 401 }
371 } 402 }
403
404 return new Data[] {
405 getDataMode(),
406 getDataSelectionMode(),
407 getDataSingle() };
372 } 408 }
373 else { 409 else {
374 Canvas member = container.getMember(0); 410 Canvas member = container.getMember(0);
375 if (member instanceof DoubleRangePanel) { 411 if (member instanceof DoubleRangePanel) {
376 DoubleRangePanel form = (DoubleRangePanel) member; 412 DoubleRangePanel form = (DoubleRangePanel) member;
380 } 416 }
381 else { 417 else {
382 saveRangeQValues(form); 418 saveRangeQValues(form);
383 } 419 }
384 } 420 }
385 } 421
386 422 return new Data[] {
387 return new Data[] { 423 getDataMode(),
388 getDataMode(), 424 getDataSelectionMode(),
389 getDataFrom(), 425 getDataFrom(),
390 getDataTo(), 426 getDataTo(),
391 getDataStep() }; 427 getDataStep() };
428 }
392 } 429 }
393 430
394 431
395 /** 432 /**
396 * Returns the Data object for the 'mode' attribute. 433 * Returns the Data object for the 'mode' attribute.
404 "wq_mode", null, null, new DataItem[] { item }); 441 "wq_mode", null, null, new DataItem[] { item });
405 } 442 }
406 443
407 444
408 /** 445 /**
446 * Returns the Data object for the 'mode' attribute.
447 *
448 * @return the Data object for the 'mode' attribute.
449 */
450 protected Data getDataSelectionMode() {
451 String wqSelection = modes.getValueAsString(FIELD_MODE);
452 DataItem item = new DefaultDataItem(
453 "wq_selection", "wq_selection", wqSelection);
454
455 return new DefaultData(
456 "wq_selection", null, null, new DataItem[] { item });
457 }
458
459
460 /**
461 * Returns the data object for the 'single' attribute.
462 *
463 * @return the Data object for the 'single' attribute.
464 */
465 protected Data getDataSingle() {
466 double[] values = getFinalSingle();
467 StringBuilder sb = new StringBuilder();
468 for (double value: values) {
469 sb.append(Double.toString(value));
470 sb.append(" ");
471 }
472
473 DataItem item = new DefaultDataItem(
474 "wq_single", "wq_single", sb.toString());
475
476 return new DefaultData(
477 "wq_single", null, null, new DataItem[] { item });
478 }
479
480
481 /**
409 * Returns the Data object for the 'from' attribute. 482 * Returns the Data object for the 'from' attribute.
410 * 483 *
411 * @return the Data object for the 'from' attribute. 484 * @return the Data object for the 'from' attribute.
412 */ 485 */
413 protected Data getDataFrom() { 486 protected Data getDataFrom() {
442 return new DefaultData( 515 return new DefaultData(
443 "wq_step", null, null, new DataItem[] { item }); 516 "wq_step", null, null, new DataItem[] { item });
444 } 517 }
445 518
446 519
520 protected double[] getFinalSingle() {
521 boolean wMode = isWMode();
522
523 return wMode ? getSingleW() : getSingleQ();
524 }
525
526
447 /** 527 /**
448 * Returns the value of 'from' depending on the selected input mode. 528 * Returns the value of 'from' depending on the selected input mode.
449 * 529 *
450 * @return the value of 'from' depending on the selected input mode. 530 * @return the value of 'from' depending on the selected input mode.
451 */ 531 */

http://dive4elements.wald.intevation.org