annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/MapSelection.java @ 53:3d5d7788d471

The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer. flys-client/trunk@1509 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Thu, 17 Mar 2011 18:34:20 +0000
parents a2923d63f530
children 4784ca718476
rev   line source
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.client.client.ui;
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
2
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
3 import com.google.gwt.core.client.GWT;
39
4187a797fc3d Implemented the step forward mechanism in the CollectionView and added the river map to the initial widget.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 30
diff changeset
4 import com.google.gwt.resources.client.ImageResource;
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
5
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
6 import com.smartgwt.client.types.VerticalAlignment;
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
7 import com.smartgwt.client.widgets.Canvas;
39
4187a797fc3d Implemented the step forward mechanism in the CollectionView and added the river map to the initial widget.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 30
diff changeset
8 import com.smartgwt.client.widgets.Img;
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
9 import com.smartgwt.client.widgets.layout.HLayout;
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 49
diff changeset
11 import de.intevation.flys.client.shared.model.DataList;
39
4187a797fc3d Implemented the step forward mechanism in the CollectionView and added the river map to the initial widget.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 30
diff changeset
12 import de.intevation.flys.client.client.FLYSImages;
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
15 /**
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
16 * This UIProvider displays the DataItems contained in the Data object in a
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17 * combo box as SelectProvider does. Furthermore, there is a map displayed that
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
18 * lets the user choose a river by selecting it on the map.
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
19 *
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
20 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
21 */
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22 public class MapSelection extends SelectProvider {
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
23
39
4187a797fc3d Implemented the step forward mechanism in the CollectionView and added the river map to the initial widget.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 30
diff changeset
24 /** The interface that provides the image resources. */
4187a797fc3d Implemented the step forward mechanism in the CollectionView and added the river map to the initial widget.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 30
diff changeset
25 private FLYSImages IMAGES = GWT.create(FLYSImages.class);
4187a797fc3d Implemented the step forward mechanism in the CollectionView and added the river map to the initial widget.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 30
diff changeset
26
4187a797fc3d Implemented the step forward mechanism in the CollectionView and added the river map to the initial widget.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 30
diff changeset
27
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
28 public MapSelection() {
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
29 }
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
30
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
31
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32 /**
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33 * This method currently returns a
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34 * {@link com.smartgwt.client.widgets.form.DynamicForm} that contains all
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
35 * data items in a combobox stored in <i>data</i>.<br>
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
36 *
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
37 * <b>TODO: The map panel for the river selection needs to be
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
38 * implemented!</b>
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
39 *
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 49
diff changeset
40 * @param data The {@link DataList} object.
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
41 *
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
42 * @return a combobox.
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
43 */
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 49
diff changeset
44 protected Canvas createWidget(DataList data) {
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
45 GWT.log("MapSelection - create()");
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
46
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47 HLayout h = new HLayout();
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
48 h.setAlign(VerticalAlignment.TOP);
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
49
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
50 Canvas form = super.createWidget(data);
30
5709bd8f4d7c Added a new widget that combines the module and the river selection. Users can now choose the desired plugin and river in one step.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 20
diff changeset
51 form.setWidth(250);
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
52 form.setLayoutAlign(VerticalAlignment.TOP);
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
53
39
4187a797fc3d Implemented the step forward mechanism in the CollectionView and added the river map to the initial widget.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 30
diff changeset
54 ImageResource mapRes = IMAGES.riverMap();
4187a797fc3d Implemented the step forward mechanism in the CollectionView and added the river map to the initial widget.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 30
diff changeset
55 Img map = new Img(mapRes.getURL(), 400, 452);
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
56
39
4187a797fc3d Implemented the step forward mechanism in the CollectionView and added the river map to the initial widget.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 30
diff changeset
57 // TODO implement event handling in the river map
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
58
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
59 h.addMember(form);
39
4187a797fc3d Implemented the step forward mechanism in the CollectionView and added the river map to the initial widget.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 30
diff changeset
60 h.addMember(map);
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
61
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
62 return h;
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63 }
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64 }
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
65 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org