annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/DatacageButton.java @ 4198:1cdbd8a0c994

Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation. The new tables define listener interfaces (clicked lower or upper icon) to listen to user clicks. In addition to this, there is an enum ClickMode with NONE, SINGLE and RANGE options, which allows to specifiy, which icons are displayed in the tables. NONE means no icon for user clicks, SINGLE has 1 icon, RANGE 2 icons for lower and upper.
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Mon, 22 Oct 2012 13:31:25 +0200
parents 51ed89b754ae
children c4973fa23674
rev   line source
787
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.client.client.ui;
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
2
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
3 import com.smartgwt.client.widgets.Button;
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
4 import com.smartgwt.client.widgets.events.ClickEvent;
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
5 import com.smartgwt.client.widgets.events.ClickHandler;
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
6 import com.smartgwt.client.widgets.events.CloseClickHandler;
1619
f8c03d3af300 Reactivated the Enterprise Blue theme. Fixes some icon and image issues in IE8.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 848
diff changeset
7 import com.smartgwt.client.widgets.events.CloseClickEvent;
787
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
8
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
9 import de.intevation.flys.client.shared.model.Artifact;
811
8fa303586f14 Pass user id to the meta data service.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 787
diff changeset
10 import de.intevation.flys.client.shared.model.User;
787
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
11
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
12
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13 public class DatacageButton extends Button implements ClickHandler {
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
15 protected Artifact artifact;
811
8fa303586f14 Pass user id to the meta data service.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 787
diff changeset
16 protected User user;
848
9ecd58f619a4 Moved datacage into a separated widget.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 811
diff changeset
17 protected CollectionView view;
787
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
18
848
9ecd58f619a4 Moved datacage into a separated widget.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 811
diff changeset
19 public DatacageButton(
2905
51ed89b754ae FLYS client: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1619
diff changeset
20 String title,
51ed89b754ae FLYS client: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1619
diff changeset
21 Artifact artifact,
848
9ecd58f619a4 Moved datacage into a separated widget.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 811
diff changeset
22 User user,
9ecd58f619a4 Moved datacage into a separated widget.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 811
diff changeset
23 CollectionView view
9ecd58f619a4 Moved datacage into a separated widget.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 811
diff changeset
24 ) {
787
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
25 super(title);
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
26
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
27 this.artifact = artifact;
811
8fa303586f14 Pass user id to the meta data service.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 787
diff changeset
28 this.user = user;
848
9ecd58f619a4 Moved datacage into a separated widget.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 811
diff changeset
29 this.view = view;
787
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
30
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
31 addClickHandler(this);
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32 }
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
35 public void onClick(ClickEvent event) {
848
9ecd58f619a4 Moved datacage into a separated widget.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 811
diff changeset
36 // TODO: fetch outs!
9ecd58f619a4 Moved datacage into a separated widget.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 811
diff changeset
37 String outs = "";
9ecd58f619a4 Moved datacage into a separated widget.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 811
diff changeset
38
9ecd58f619a4 Moved datacage into a separated widget.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 811
diff changeset
39 final DatacageWindow dc = new DatacageWindow(
9ecd58f619a4 Moved datacage into a separated widget.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 811
diff changeset
40 artifact, user, outs, view);
787
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
41 dc.addCloseClickHandler(new CloseClickHandler() {
1619
f8c03d3af300 Reactivated the Enterprise Blue theme. Fixes some icon and image issues in IE8.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 848
diff changeset
42 public void onCloseClick(CloseClickEvent event) {
787
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
43 dc.destroy();
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
44 }
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
45 });
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
46 dc.show();
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
47 }
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
48 }
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
49 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org