Mercurial > dive4elements > river
annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/chart/PointRecord.java @ 8792:e062d3afd682 3.2.0
Add missing newlines at end of file.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Thu, 10 Dec 2015 14:41:31 +0100 |
parents | ea9eef426962 |
children |
rev | line source |
---|---|
5861
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde |
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
2 * Software engineering by Intevation GmbH |
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
3 * |
5993
ea9eef426962
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5861
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
5861
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
5993
ea9eef426962
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5861
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
5861
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
7 */ |
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
8 |
5835
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
9 package org.dive4elements.river.client.client.ui.chart; |
3983
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
10 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
11 import com.google.gwt.json.client.JSONArray; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
12 import com.google.gwt.json.client.JSONBoolean; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
13 import com.google.gwt.json.client.JSONNumber; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
14 import com.google.gwt.json.client.JSONString; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
15 import com.google.gwt.json.client.JSONValue; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
16 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
17 import com.smartgwt.client.widgets.grid.ListGridRecord; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
18 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
19 /** Simple record to store points. */ |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
20 public class PointRecord extends ListGridRecord { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
21 protected static final String ATTRIBUTE_X = "X"; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
22 protected static final String ATTRIBUTE_Y = "Y"; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
23 protected static final String ATTRIBUTE_NAME = "name"; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
24 protected static final String ATTRIBUTE_ACTIVE = "active"; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
25 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
26 /** From a JSON-encoded point, create a PointRecord. */ |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
27 public static PointRecord fromJSON(JSONArray jsonArray) { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
28 JSONValue x = jsonArray.get(0); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
29 JSONNumber y = (JSONNumber) jsonArray.get(1); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
30 JSONString s = (JSONString) jsonArray.get(2); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
31 JSONBoolean b = (JSONBoolean)jsonArray.get(3); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
32 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
33 if(x instanceof JSONNumber) { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
34 return new PointRecord( |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
35 b.booleanValue(), ((JSONNumber)x).doubleValue(), |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
36 y.doubleValue(), s.stringValue()); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
37 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
38 else { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
39 return new PointRecord( |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
40 b.booleanValue(), ((JSONString)x).stringValue(), |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
41 y.doubleValue(), s.stringValue()); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
42 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
43 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
44 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
45 protected boolean isTimeseriesPoint = false; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
46 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
47 public PointRecord(boolean isActive, double x, double y, String name) { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
48 setActive(isActive); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
49 setName(name); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
50 setX(x); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
51 setY(y); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
52 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
53 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
54 /** |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
55 * Constructor taking the x axis value as String representing a Date value. |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
56 * @param isActive |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
57 * @param x |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
58 * @param y |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
59 * @param name |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
60 */ |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
61 public PointRecord(boolean isActive, String x, double y, String name) { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
62 setActive(isActive); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
63 setName(name); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
64 setX(x); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
65 setY(y); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
66 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
67 this.isTimeseriesPoint = true; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
68 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
69 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
70 public void setActive(boolean isActive) { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
71 setAttribute(ATTRIBUTE_ACTIVE, isActive); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
72 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
73 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
74 public boolean isActive() { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
75 return getAttributeAsBoolean(ATTRIBUTE_ACTIVE); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
76 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
77 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
78 public boolean isTimeseriesPoint() { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
79 return this.isTimeseriesPoint; |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
80 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
81 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
82 public void setName(String name) { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
83 setAttribute(ATTRIBUTE_NAME, name); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
84 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
85 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
86 public String getName() { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
87 return getAttributeAsString(ATTRIBUTE_NAME); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
88 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
89 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
90 public void setX(double x) { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
91 setAttribute(ATTRIBUTE_X, x); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
92 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
93 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
94 public void setX(String date) { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
95 setAttribute(ATTRIBUTE_X, date); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
96 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
97 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
98 public void setY(double y) { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
99 setAttribute(ATTRIBUTE_Y, y); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
100 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
101 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
102 public double getX() { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
103 return getAttributeAsDouble(ATTRIBUTE_X); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
104 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
105 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
106 public String getXAsDate() { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
107 return getAttributeAsString(ATTRIBUTE_X); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
108 } |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
109 |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
110 public double getY() { |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
111 return getAttributeAsDouble(ATTRIBUTE_Y); |
65e369ac4f99
ManualPointsEditor supports Date x axis values.
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
112 } |
8792
e062d3afd682
Add missing newlines at end of file.
Tom Gottfried <tom@intevation.de>
parents:
5993
diff
changeset
|
113 } |