Mercurial > dive4elements > river
annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/ModuleSelection.java @ 3537:45f2b0778a3a
Do not show labels in logo selection combo box.
flys-client/trunk@5349 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Mon, 03 Sep 2012 13:12:02 +0000 |
parents | 8c9c202292fe |
children | 360e22afb98b |
rev | line source |
---|---|
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:
diff
changeset
|
1 package de.intevation.flys.client.client.ui; |
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:
diff
changeset
|
2 |
45
f99c5f8e4672
Some GUI improvements in the Location/Distance, W/Q and Module panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
38
diff
changeset
|
3 import java.util.LinkedHashMap; |
f99c5f8e4672
Some GUI improvements in the Location/Distance, W/Q and Module panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
38
diff
changeset
|
4 |
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:
diff
changeset
|
5 import com.google.gwt.core.client.GWT; |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
6 import com.google.gwt.user.client.rpc.AsyncCallback; |
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:
diff
changeset
|
7 |
83
4784ca718476
Improved the positioning of helper widgets and some layout specific stuff.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
57
diff
changeset
|
8 import com.smartgwt.client.types.VerticalAlignment; |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
9 import com.smartgwt.client.util.SC; |
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:
diff
changeset
|
10 import com.smartgwt.client.widgets.Canvas; |
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:
diff
changeset
|
11 import com.smartgwt.client.widgets.Label; |
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:
diff
changeset
|
12 import com.smartgwt.client.widgets.form.DynamicForm; |
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:
diff
changeset
|
13 import com.smartgwt.client.widgets.form.fields.RadioGroupItem; |
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:
diff
changeset
|
14 import com.smartgwt.client.widgets.layout.HLayout; |
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:
diff
changeset
|
15 import com.smartgwt.client.widgets.layout.VLayout; |
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:
diff
changeset
|
16 |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
17 import de.intevation.flys.client.client.services.ModuleService; |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
18 import de.intevation.flys.client.client.services.ModuleServiceAsync; |
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:
diff
changeset
|
19 import de.intevation.flys.client.shared.model.Data; |
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:
diff
changeset
|
20 import de.intevation.flys.client.shared.model.DataItem; |
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:
45
diff
changeset
|
21 import de.intevation.flys.client.shared.model.DataList; |
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:
diff
changeset
|
22 import de.intevation.flys.client.shared.model.DefaultData; |
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:
diff
changeset
|
23 import de.intevation.flys.client.shared.model.DefaultDataItem; |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
24 import de.intevation.flys.client.shared.model.Module; |
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:
diff
changeset
|
25 |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
26 import de.intevation.flys.client.client.Config; |
211
b92281182c6b
Removed the FLYSMessages interface and replaced it with a FLYSConstants interface - this interface has the ability to lookup i18n strings with given keys.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
86
diff
changeset
|
27 import de.intevation.flys.client.client.FLYSConstants; |
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:
diff
changeset
|
28 |
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:
diff
changeset
|
29 /** |
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:
diff
changeset
|
30 * The ModuleSelection combines the river selection and the module selection in |
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:
diff
changeset
|
31 * one widget. It will display a vertical splitted widget - the upper part will |
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:
diff
changeset
|
32 * render checkboxes for each module, the lower one will display a combobox at |
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:
diff
changeset
|
33 * the left and a map panel on the right to choose the river. |
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:
diff
changeset
|
34 * |
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:
diff
changeset
|
35 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> |
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:
diff
changeset
|
36 */ |
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:
diff
changeset
|
37 public class ModuleSelection extends MapSelection { |
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:
diff
changeset
|
38 |
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:
diff
changeset
|
39 /** The message class that provides i18n strings.*/ |
211
b92281182c6b
Removed the FLYSMessages interface and replaced it with a FLYSConstants interface - this interface has the ability to lookup i18n strings with given keys.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
86
diff
changeset
|
40 protected FLYSConstants MESSAGES = GWT.create(FLYSConstants.class); |
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:
diff
changeset
|
41 |
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:
diff
changeset
|
42 /** The module checkboxes.*/ |
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:
diff
changeset
|
43 protected RadioGroupItem radio; |
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:
diff
changeset
|
44 |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
45 /** */ |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
46 protected Module[] modules; |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
47 |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
48 /** The ModuleService used to retrieve the available modules of a user.*/ |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
49 protected ModuleServiceAsync moduleService = GWT.create(ModuleService.class); |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
50 |
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:
diff
changeset
|
51 |
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:
diff
changeset
|
52 /** |
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:
diff
changeset
|
53 * The default constructor. |
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:
diff
changeset
|
54 */ |
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:
diff
changeset
|
55 public ModuleSelection() { |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
56 readModules(); |
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:
diff
changeset
|
57 } |
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:
diff
changeset
|
58 |
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:
diff
changeset
|
59 |
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:
diff
changeset
|
60 /** |
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:
diff
changeset
|
61 * This method returns a widget that renders the checkboxes for each module |
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:
diff
changeset
|
62 * and the MapSelection that lets the user choose the river. |
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:
diff
changeset
|
63 * |
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:
diff
changeset
|
64 * @param data The provided rivers. |
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:
diff
changeset
|
65 * |
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:
diff
changeset
|
66 * @return the module selection combined with the river selection. |
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:
diff
changeset
|
67 */ |
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:
45
diff
changeset
|
68 public Canvas create(DataList data) { |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
69 GWT.log("ModuleSelection - create()"); |
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:
diff
changeset
|
70 VLayout newLayout = new VLayout(); |
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:
diff
changeset
|
71 newLayout.setMembersMargin(10); |
282
e92f7ef455d6
Show rivers as links instead of a combobox.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
211
diff
changeset
|
72 newLayout.setAlign(VerticalAlignment.TOP); |
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:
diff
changeset
|
73 Canvas moduleSelection = createWidget(); |
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:
diff
changeset
|
74 |
282
e92f7ef455d6
Show rivers as links instead of a combobox.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
211
diff
changeset
|
75 moduleSelection.setHeight(100); |
e92f7ef455d6
Show rivers as links instead of a combobox.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
211
diff
changeset
|
76 newLayout.setHeight(70); |
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:
diff
changeset
|
77 newLayout.addMember(moduleSelection); |
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:
diff
changeset
|
78 |
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:
diff
changeset
|
79 return newLayout; |
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:
diff
changeset
|
80 } |
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:
diff
changeset
|
81 |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
82 private void readModules() { |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
83 Config config = Config.getInstance(); |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
84 String locale = config.getLocale(); |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
85 |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
86 moduleService.list(locale, new AsyncCallback<Module[]>() { |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
87 @Override |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
88 public void onFailure(Throwable caught) { |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
89 GWT.log("Could not recieve a list of modules."); |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
90 SC.warn(MSG.getString(caught.getMessage())); |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
91 } |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
92 |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
93 @Override |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
94 public void onSuccess(Module[] newmodules) { |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
95 GWT.log("Retrieved " + newmodules.length + " modules."); |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
96 modules = newmodules; |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
97 setModules(); |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
98 } |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
99 }); |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
100 } |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
101 |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
102 private void setModules() { |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
103 LinkedHashMap values = new LinkedHashMap(); |
3530
8c9c202292fe
Set the default value of the RadioGroupItem if a loaded module is selected
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3518
diff
changeset
|
104 |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
105 if (this.modules!= null) { |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
106 for(Module module : this.modules) { |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
107 values.put(module.getName(), module.getLocalizedName()); |
3530
8c9c202292fe
Set the default value of the RadioGroupItem if a loaded module is selected
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3518
diff
changeset
|
108 if (module.isSelected()) { |
8c9c202292fe
Set the default value of the RadioGroupItem if a loaded module is selected
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3518
diff
changeset
|
109 GWT.log("Module " + module.getName() + " is selected."); |
8c9c202292fe
Set the default value of the RadioGroupItem if a loaded module is selected
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3518
diff
changeset
|
110 if (radio != null) { |
8c9c202292fe
Set the default value of the RadioGroupItem if a loaded module is selected
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3518
diff
changeset
|
111 radio.setDefaultValue(module.getName()); |
8c9c202292fe
Set the default value of the RadioGroupItem if a loaded module is selected
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3518
diff
changeset
|
112 GWT.log("Setting " + module.getName() + " as selected."); |
8c9c202292fe
Set the default value of the RadioGroupItem if a loaded module is selected
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3518
diff
changeset
|
113 } |
8c9c202292fe
Set the default value of the RadioGroupItem if a loaded module is selected
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3518
diff
changeset
|
114 } |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
115 } |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
116 } |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
117 if (radio != null) { |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
118 radio.setValueMap(values); |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
119 } |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
120 } |
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:
diff
changeset
|
121 |
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:
diff
changeset
|
122 /** |
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:
diff
changeset
|
123 * Creates a widget that displays a checkbox for each module. |
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:
diff
changeset
|
124 * |
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:
diff
changeset
|
125 * @return a widget with checkboxes. |
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:
diff
changeset
|
126 */ |
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:
diff
changeset
|
127 protected Canvas createWidget() { |
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:
diff
changeset
|
128 HLayout layout = new HLayout(); |
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:
diff
changeset
|
129 |
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:
diff
changeset
|
130 Label label = new Label(MESSAGES.module_selection()); |
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:
diff
changeset
|
131 DynamicForm form = new DynamicForm(); |
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:
diff
changeset
|
132 |
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:
diff
changeset
|
133 radio = new RadioGroupItem("plugin"); |
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:
diff
changeset
|
134 |
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:
diff
changeset
|
135 label.setWidth(50); |
282
e92f7ef455d6
Show rivers as links instead of a combobox.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
211
diff
changeset
|
136 label.setHeight(25); |
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:
diff
changeset
|
137 |
45
f99c5f8e4672
Some GUI improvements in the Location/Distance, W/Q and Module panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
38
diff
changeset
|
138 |
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:
diff
changeset
|
139 radio.setShowTitle(false); |
86
eae92a05282e
Added a further plugin in the module selection and changed its alignment to vertical.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
83
diff
changeset
|
140 radio.setVertical(true); |
45
f99c5f8e4672
Some GUI improvements in the Location/Distance, W/Q and Module panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
38
diff
changeset
|
141 |
3518
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
142 setModules(); |
33ed40aa1201
User ModuleService to get all modules for a user
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
2522
diff
changeset
|
143 |
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:
diff
changeset
|
144 form.setFields(radio); |
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:
diff
changeset
|
145 |
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:
diff
changeset
|
146 layout.addMember(label); |
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:
diff
changeset
|
147 layout.addMember(form); |
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:
diff
changeset
|
148 |
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:
diff
changeset
|
149 return layout; |
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:
diff
changeset
|
150 } |
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:
diff
changeset
|
151 |
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:
diff
changeset
|
152 |
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:
diff
changeset
|
153 /** |
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:
diff
changeset
|
154 * This method prepares the data of two widgets - the module selection and |
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:
diff
changeset
|
155 * the river selection. The returning field will contain the Data that |
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:
diff
changeset
|
156 * represents the module selection at first position, the second position |
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:
diff
changeset
|
157 * stores the Data object that represents the river selection. |
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:
diff
changeset
|
158 * |
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:
diff
changeset
|
159 * @return the Data that was chosen in this widget. |
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:
diff
changeset
|
160 */ |
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:
diff
changeset
|
161 protected Data[] getData() { |
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:
diff
changeset
|
162 |
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:
diff
changeset
|
163 String module = radio.getValueAsString(); |
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:
diff
changeset
|
164 |
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:
diff
changeset
|
165 DataItem[] items = new DefaultDataItem[1]; |
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:
diff
changeset
|
166 items[0] = new DefaultDataItem(module, module, module); |
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:
diff
changeset
|
167 |
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:
45
diff
changeset
|
168 Data data = new DefaultData("module", null, null, items); |
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:
diff
changeset
|
169 |
282
e92f7ef455d6
Show rivers as links instead of a combobox.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
211
diff
changeset
|
170 return new Data[] {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:
diff
changeset
|
171 } |
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:
diff
changeset
|
172 } |
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:
diff
changeset
|
173 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |