annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/DatacagePairWidget.java @ 2905:51ed89b754ae

FLYS client: Removed trailing whitespace. flys-client/trunk@4671 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Fri, 15 Jun 2012 09:35:37 +0000
parents 01b18db3b288
children a4b2220e59a6
rev   line source
899
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.client.client.ui;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
2
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
3 import com.google.gwt.core.client.GWT;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
4
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
5 import com.smartgwt.client.widgets.Button;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
6
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
7 import com.smartgwt.client.widgets.layout.VLayout;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
8 import com.smartgwt.client.widgets.layout.HLayout;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
9
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
10 import com.smartgwt.client.widgets.events.ClickHandler;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
11 import com.smartgwt.client.widgets.events.ClickEvent;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
12
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
13 import com.smartgwt.client.widgets.grid.ListGrid;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
14
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
15 import de.intevation.flys.client.shared.model.Artifact;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
16 import de.intevation.flys.client.shared.model.User;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
17 import de.intevation.flys.client.shared.model.ToLoad;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
18
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
19 import de.intevation.flys.client.client.FLYSConstants;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
20
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
21
914
39a39e9be5af Made DatacageTwinPanel somewhat usable.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 899
diff changeset
22 /**
39a39e9be5af Made DatacageTwinPanel somewhat usable.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 899
diff changeset
23 * Widget showing two Datacages and a plus-button.
39a39e9be5af Made DatacageTwinPanel somewhat usable.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 899
diff changeset
24 * Insert a record into a listgrid when plus-button clicked.
39a39e9be5af Made DatacageTwinPanel somewhat usable.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 899
diff changeset
25 */
899
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
26 public class DatacagePairWidget
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
27 extends VLayout
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
28 {
1284
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
29 protected FLYSConstants messages =
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
30 GWT.create(FLYSConstants.class);
2905
51ed89b754ae FLYS client: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1352
diff changeset
31
1284
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
32 /** The "remote" ListGrid to insert data to when add-button is clicked. */
2905
51ed89b754ae FLYS client: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1352
diff changeset
33 protected ListGrid grid;
51ed89b754ae FLYS client: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1352
diff changeset
34
1284
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
35 /** First (upper) DataCage Grid. */
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
36 protected DatacageWidget firstDatacageWidget;
2905
51ed89b754ae FLYS client: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1352
diff changeset
37
1284
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
38 /** Second (lower) DataCage Grid. */
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
39 protected DatacageWidget secondDatacageWidget;
1298
b0ed67cb5197 Minor refactoring, improved displayed Strings in W-Diff branch.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1295
diff changeset
40
2905
51ed89b754ae FLYS client: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1352
diff changeset
41
1284
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
42 /**
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
43 *
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
44 * @param artifact Artifact to query datacage with.
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
45 * @param user User to query datacage with.
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
46 * @param outs outs to query datacage with.
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
47 * @param grid Grid into which to insert selection of pairs.
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
48 */
cdb1505a32f1 Fix messed up indentation.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1283
diff changeset
49 public DatacagePairWidget(Artifact artifact,
1283
e8bb11976c70 Neaten certain GUI aspects with W-Diff waterlevel-pair selection.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1261
diff changeset
50 User user,
e8bb11976c70 Neaten certain GUI aspects with W-Diff waterlevel-pair selection.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1261
diff changeset
51 String outs,
e8bb11976c70 Neaten certain GUI aspects with W-Diff waterlevel-pair selection.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1261
diff changeset
52 ListGrid grid) {
899
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
53 this.grid = grid;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
54
1283
e8bb11976c70 Neaten certain GUI aspects with W-Diff waterlevel-pair selection.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1261
diff changeset
55 HLayout hLayout = new HLayout();
1349
46a4b74d87bf Allow (yet limited) usage of zus and flood-protection data in wdiffs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1301
diff changeset
56 firstDatacageWidget = new DatacageWidget(
46a4b74d87bf Allow (yet limited) usage of zus and flood-protection data in wdiffs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1301
diff changeset
57 artifact,
46a4b74d87bf Allow (yet limited) usage of zus and flood-protection data in wdiffs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1301
diff changeset
58 user,
2905
51ed89b754ae FLYS client: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1352
diff changeset
59 outs,
1349
46a4b74d87bf Allow (yet limited) usage of zus and flood-protection data in wdiffs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1301
diff changeset
60 "load-system:true",
46a4b74d87bf Allow (yet limited) usage of zus and flood-protection data in wdiffs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1301
diff changeset
61 false);
46a4b74d87bf Allow (yet limited) usage of zus and flood-protection data in wdiffs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1301
diff changeset
62 secondDatacageWidget = new DatacageWidget(
46a4b74d87bf Allow (yet limited) usage of zus and flood-protection data in wdiffs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1301
diff changeset
63 artifact,
46a4b74d87bf Allow (yet limited) usage of zus and flood-protection data in wdiffs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1301
diff changeset
64 user,
46a4b74d87bf Allow (yet limited) usage of zus and flood-protection data in wdiffs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1301
diff changeset
65 outs,
46a4b74d87bf Allow (yet limited) usage of zus and flood-protection data in wdiffs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1301
diff changeset
66 "load-system:true",
46a4b74d87bf Allow (yet limited) usage of zus and flood-protection data in wdiffs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1301
diff changeset
67 false);
1283
e8bb11976c70 Neaten certain GUI aspects with W-Diff waterlevel-pair selection.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1261
diff changeset
68 firstDatacageWidget.setIsMutliSelectable(false);
e8bb11976c70 Neaten certain GUI aspects with W-Diff waterlevel-pair selection.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1261
diff changeset
69 secondDatacageWidget.setIsMutliSelectable(false);
899
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
70
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
71 hLayout.addMember(firstDatacageWidget);
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
72 hLayout.addMember(secondDatacageWidget);
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
73
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
74 // TODO: i18n + icon
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
75 Button plusBtn = new Button("+");
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
76 plusBtn.addClickHandler(new ClickHandler() {
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
77 @Override
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
78 public void onClick(ClickEvent event) {
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
79 plusClicked();
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
80 }
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
81 });
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
82
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
83 addMember(hLayout);
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
84 addMember(plusBtn);
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
85 }
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
86
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
87
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
88 /**
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
89 * Callback for add-button.
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
90 * Fires to load for every selected element and handler.
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
91 */
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
92 public void plusClicked() {
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
93 ToLoad toLoad1 = firstDatacageWidget.getSelection();
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
94 ToLoad toLoad2 = secondDatacageWidget.getSelection();
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
95
914
39a39e9be5af Made DatacageTwinPanel somewhat usable.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 899
diff changeset
96 // TODO further sanitize (toRecommendations.length)
899
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
97 if (toLoad1 == null || toLoad2 == null) {
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
98 return;
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
99 }
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
100
914
39a39e9be5af Made DatacageTwinPanel somewhat usable.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 899
diff changeset
101 grid.addData(new RecommendationPairRecord(
39a39e9be5af Made DatacageTwinPanel somewhat usable.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 899
diff changeset
102 toLoad1.toRecommendations().get(0),
39a39e9be5af Made DatacageTwinPanel somewhat usable.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 899
diff changeset
103 toLoad2.toRecommendations().get(0)));
899
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
104 }
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
105 }
6e678b5d08a4 New widget for future use.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
106 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org