Mercurial > dive4elements > river
comparison flys-client/src/main/java/de/intevation/flys/client/client/ui/DatacageTwinPanel.java @ 867:6a2ed979dfcf
Added new UIProvider "DatacageTwinPanel", pass user via UIProviderFactory.
flys-client/trunk@2674 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Thu, 08 Sep 2011 11:12:21 +0000 |
parents | |
children | 39a39e9be5af |
comparison
equal
deleted
inserted
replaced
866:593e6c49c6ee | 867:6a2ed979dfcf |
---|---|
1 package de.intevation.flys.client.client.ui; | |
2 | |
3 import com.google.gwt.core.client.GWT; | |
4 | |
5 import com.smartgwt.client.widgets.Canvas; | |
6 import com.smartgwt.client.widgets.Label; | |
7 import com.smartgwt.client.widgets.layout.HLayout; | |
8 import com.smartgwt.client.widgets.layout.VLayout; | |
9 | |
10 import de.intevation.flys.client.shared.model.Data; | |
11 import de.intevation.flys.client.shared.model.DataItem; | |
12 import de.intevation.flys.client.shared.model.DefaultData; | |
13 import de.intevation.flys.client.shared.model.DefaultDataItem; | |
14 import de.intevation.flys.client.shared.model.DataList; | |
15 import de.intevation.flys.client.shared.model.User; | |
16 | |
17 import de.intevation.flys.client.client.FLYSConstants; | |
18 | |
19 // TODO Probably better to branch off AbstractUIProvider. | |
20 public class DatacageTwinPanel extends TextProvider { | |
21 | |
22 protected static FLYSConstants MSG = GWT.create(FLYSConstants.class); | |
23 | |
24 protected String dataName; | |
25 | |
26 protected User user; | |
27 | |
28 | |
29 public DatacageTwinPanel(User user) { | |
30 super(); | |
31 this.user = user; | |
32 } | |
33 | |
34 | |
35 @Override | |
36 public Canvas create(DataList dataList) { | |
37 GWT.log("createData()"); | |
38 Data data = dataList.get(0); | |
39 this.dataName = data.getLabel(); | |
40 | |
41 Canvas label = new Label(data.getDescription()); | |
42 Canvas widget = createWidget(); | |
43 Canvas submit = getNextButton(); | |
44 | |
45 VLayout layout = new VLayout(); | |
46 label.setHeight(50); | |
47 DatacageWidget baseDataCage = new DatacageWidget(this.artifact, user); | |
48 DatacageWidget modDataCage = new DatacageWidget(this.artifact, user); | |
49 baseDataCage.setHeight(250); | |
50 modDataCage.setHeight(250); | |
51 layout.addMember(baseDataCage); | |
52 layout.addMember(modDataCage); | |
53 | |
54 /*layout.addMember(label);*/ | |
55 layout.addMember(widget); | |
56 layout.addMember(submit); | |
57 layout.setMembersMargin(10); | |
58 this.helperContainer.addMember(layout); | |
59 | |
60 // return layout; | |
61 return new VLayout(); | |
62 } | |
63 | |
64 | |
65 public Canvas createWidget() { | |
66 HLayout layout = new HLayout(); | |
67 layout.setMembersMargin(10); | |
68 | |
69 layout.addMember(createForm()); | |
70 layout.addMember(new DatacageWidget()); | |
71 // TODO: fetch current user! | |
72 // TODO: fetch collection view! | |
73 /*layout.addMember( | |
74 new DatacageButton( | |
75 MSG.databasket(), artifact, null, null)); | |
76 */ | |
77 | |
78 return layout; | |
79 } | |
80 | |
81 | |
82 @Override | |
83 protected Data[] getData() { | |
84 String value = "TODO:FIND VALUE"; | |
85 DataItem item = new DefaultDataItem(dataName, dataName, value); | |
86 return new Data[] { new DefaultData( | |
87 dataName, null, null, new DataItem[] { item }) }; | |
88 } | |
89 } | |
90 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |