Mercurial > dive4elements > river
annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/chart/NaviChartOutputTab.java @ 7597:fca46ce8e4f5
(issue1225) Implement Magic labels.
There is now a new value in the chartsettings "Suggested Label" which
is hidden in the property editor. A suggested label is the label that
combines the label's of all processors that wrote data to an axis.
This suggested label is set as the label when the user has not
overwritten the label.
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Mon, 25 Nov 2013 14:58:14 +0100 |
parents | bcaf66443b93 |
children | 5e38e2924c07 |
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:
5965
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:
5965
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; |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
10 |
2935
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
11 import java.util.Map; |
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
12 import java.util.HashMap; |
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
13 |
2911
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
14 import com.google.gwt.core.client.GWT; |
3362
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
15 import com.google.gwt.i18n.client.NumberFormat; |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
16 |
2911
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
17 import com.smartgwt.client.types.Alignment; |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
18 |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
19 import com.smartgwt.client.widgets.Button; |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
20 import com.smartgwt.client.widgets.Canvas; |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
21 |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
22 import com.smartgwt.client.widgets.events.ClickEvent; |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
23 import com.smartgwt.client.widgets.events.ClickHandler; |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
24 |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
25 import com.smartgwt.client.widgets.form.DynamicForm; |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
26 |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
27 import com.smartgwt.client.widgets.form.fields.TextItem; |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
28 |
2918
d92770527b0f
Changed handler for km navigation in fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2911
diff
changeset
|
29 import com.smartgwt.client.widgets.form.fields.events.KeyPressEvent; |
d92770527b0f
Changed handler for km navigation in fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2911
diff
changeset
|
30 import com.smartgwt.client.widgets.form.fields.events.KeyPressHandler; |
2911
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
31 |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
32 import com.smartgwt.client.widgets.layout.HLayout; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
33 import com.smartgwt.client.widgets.layout.VLayout; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
34 |
2911
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
35 import com.smartgwt.client.widgets.tab.events.TabSelectedEvent; |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
36 import com.smartgwt.client.widgets.tab.events.TabSelectedHandler; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
37 |
5835
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
38 import org.dive4elements.river.client.client.Config; |
2911
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
39 |
5835
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
40 import org.dive4elements.river.client.client.ui.CollectionView; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
41 |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
42 import org.dive4elements.river.client.shared.model.Artifact; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
43 import org.dive4elements.river.client.shared.model.Collection; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
44 import org.dive4elements.river.client.shared.model.FixAnalysisArtifact; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
45 import org.dive4elements.river.client.shared.model.FixFilter; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
46 import org.dive4elements.river.client.shared.model.OutputMode; |
2911
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
47 |
37dce0f2f63b
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2906
diff
changeset
|
48 import java.util.Date; |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
49 |
4310
a17d0afd0db9
NaviChartOutputTab: Whitespace and vimline added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3499
diff
changeset
|
50 |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
51 /** |
4320
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
52 * Tab representing and showing one Chart-output with a "navi" thing. |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
53 * |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
54 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
55 */ |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
56 public class NaviChartOutputTab |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
57 extends ChartOutputTab |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
58 implements TabSelectedHandler |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
59 { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
60 protected TextItem currentkm; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
61 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
62 public NaviChartOutputTab( |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
63 String title, |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
64 Collection collection, |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
65 OutputMode mode, |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
66 CollectionView collectionView |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
67 ){ |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
68 super(title, collection, mode, collectionView); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
69 right.removeChild(chart); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
70 right.addChild(createNaviChart()); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
71 collectionView.registerTabHandler(this); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
72 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
73 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
74 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
75 protected Canvas createNaviChart() { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
76 final Artifact art = collectionView.getArtifact(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
77 VLayout root = new VLayout(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
78 root.setWidth100(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
79 root.setHeight100(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
80 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
81 HLayout layout = new HLayout(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
82 layout.setAlign(Alignment.CENTER); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
83 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
84 DynamicForm form = new DynamicForm(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
85 Button lower = new Button("<<"); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
86 lower.setWidth(30); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
87 Button upper = new Button(">>"); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
88 upper.setWidth(30); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
89 currentkm = new TextItem(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
90 currentkm.setWidth(60); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
91 currentkm.setShowTitle(false); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
92 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
93 form.setFields(currentkm); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
94 form.setWidth(60); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
95 |
4320
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
96 double fromKm; |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
97 double toKm; |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
98 |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
99 if (art instanceof FixAnalysisArtifact) { |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
100 FixAnalysisArtifact fix = (FixAnalysisArtifact) art; |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
101 FixFilter fixFilter = fix.getFilter(); |
4866
acfd48384835
Changed data field names in fix analsis to ld_from, ld_to, ld step.
Raimund Renkert <rrenkert@intevation.de>
parents:
4322
diff
changeset
|
102 String s = fix.getArtifactDescription().getDataValueAsString("ld_step"); |
4320
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
103 try { |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
104 double ds = Double.parseDouble(s); |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
105 collectionView.setSteps(ds); |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
106 } |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
107 catch(NumberFormatException nfe) { |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
108 collectionView.setSteps(100d); |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
109 } |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
110 fromKm = fixFilter.getFromKm(); |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
111 toKm = fixFilter.getToKm(); |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
112 } |
4320
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
113 else { |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
114 // Probably WINFOArtifact kind of artifact. |
4322
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
115 String ld_step = |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
116 art.getArtifactDescription().getDataValueAsString("ld_step"); |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
117 try { |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
118 collectionView.setSteps(Double.valueOf(ld_step)); |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
119 } |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
120 catch (Exception e) { |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
121 GWT.log("No ld_steps data or not parsable."); |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
122 return root; |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
123 } |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
124 |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
125 double[] kmRange = art.getArtifactDescription().getKMRange(); |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
126 if (kmRange == null || kmRange.length == 2) { |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
127 fromKm = kmRange[0]; |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
128 toKm = kmRange[1]; |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
129 } |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
130 else { |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
131 GWT.log("No KM range in description found."); |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
132 return root; |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
133 } |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
134 } |
4320
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
135 |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
136 collectionView.setMinKm(fromKm); |
c3ac330d9be4
NaviChartOutputTab: Slight refactoring to work not only with FixAnalysisArtifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4319
diff
changeset
|
137 collectionView.setMaxKm(toKm); |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
138 |
4319
8d3523bbb088
NaviChartOutputTab: Use final var instead of alloc-on-the-fly in each callback.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4310
diff
changeset
|
139 final NumberFormat nf = NumberFormat.getDecimalFormat(); |
6017
bcaf66443b93
issue1261: when tab is created, jump navi to 'default'-km. This overcomes
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
140 |
bcaf66443b93
issue1261: when tab is created, jump navi to 'default'-km. This overcomes
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
141 // Always jump to the from km when initialized. |
bcaf66443b93
issue1261: when tab is created, jump navi to 'default'-km. This overcomes
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
142 try { |
bcaf66443b93
issue1261: when tab is created, jump navi to 'default'-km. This overcomes
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
143 double d = Double.valueOf(fromKm); |
bcaf66443b93
issue1261: when tab is created, jump navi to 'default'-km. This overcomes
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
144 currentkm.setValue(nf.format(d)); |
bcaf66443b93
issue1261: when tab is created, jump navi to 'default'-km. This overcomes
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
145 } catch (NumberFormatException e) { |
bcaf66443b93
issue1261: when tab is created, jump navi to 'default'-km. This overcomes
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
146 currentkm.setValue(fromKm); |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
147 } |
6017
bcaf66443b93
issue1261: when tab is created, jump navi to 'default'-km. This overcomes
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5993
diff
changeset
|
148 collectionView.setCurrentKm(fromKm); |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
149 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
150 lower.addClickHandler(new ClickHandler() { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
151 public void onClick(ClickEvent ce) { |
2936
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
152 tbarPanel.deselectControls(); |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
153 updateChartDown(); |
3362
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
154 try { |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
155 double d = Double.valueOf(collectionView.getCurrentKm()); |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
156 currentkm.setValue(nf.format(d)); |
5965
e9e298724f03
issue1311: Update links on toolbar when km changed.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5964
diff
changeset
|
157 tbarPanel.onZoom(null); |
3362
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
158 } catch (NumberFormatException e) { |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
159 currentkm.setValue(collectionView.getCurrentKm()); |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
160 } |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
161 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
162 }); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
163 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
164 upper.addClickHandler(new ClickHandler() { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
165 public void onClick(ClickEvent ce) { |
2936
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
166 tbarPanel.deselectControls(); |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
167 updateChartUp(); |
3362
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
168 try { |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
169 double d = Double.valueOf(collectionView.getCurrentKm()); |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
170 currentkm.setValue(nf.format(d)); |
5965
e9e298724f03
issue1311: Update links on toolbar when km changed.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5964
diff
changeset
|
171 tbarPanel.onZoom(null); |
3362
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
172 } catch (NumberFormatException e) { |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
173 currentkm.setValue(collectionView.getCurrentKm()); |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
174 } |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
175 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
176 }); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
177 |
2918
d92770527b0f
Changed handler for km navigation in fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2911
diff
changeset
|
178 currentkm.addKeyPressHandler(new KeyPressHandler() { |
d92770527b0f
Changed handler for km navigation in fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2911
diff
changeset
|
179 public void onKeyPress(KeyPressEvent kpe) { |
d92770527b0f
Changed handler for km navigation in fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2911
diff
changeset
|
180 if (!kpe.getKeyName().equals("Enter")) { |
d92770527b0f
Changed handler for km navigation in fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2911
diff
changeset
|
181 return; |
d92770527b0f
Changed handler for km navigation in fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2911
diff
changeset
|
182 } |
3362
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
183 if(kpe.getItem().getValue() != null) { |
2936
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
184 tbarPanel.deselectControls(); |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
185 try { |
2918
d92770527b0f
Changed handler for km navigation in fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2911
diff
changeset
|
186 String s = kpe.getItem().getValue().toString(); |
3362
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
187 double d; |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
188 try { |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
189 d = nf.parse(s); |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
190 currentkm.setValue(nf.format(d)); |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
191 } catch (NumberFormatException e) { |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
192 d = -1d; |
bea50e45f0d3
FixA: Input fields for chart navigation now use the correct i18n number formats.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2936
diff
changeset
|
193 } |
2918
d92770527b0f
Changed handler for km navigation in fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2911
diff
changeset
|
194 if (d <= collectionView.getMaxKm() && |
d92770527b0f
Changed handler for km navigation in fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2911
diff
changeset
|
195 d >= collectionView.getMinKm()) { |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
196 collectionView.setCurrentKm(d); |
3499
17c66d38f095
FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3368
diff
changeset
|
197 tbarPanel.updateLinks(); |
5965
e9e298724f03
issue1311: Update links on toolbar when km changed.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5964
diff
changeset
|
198 tbarPanel.onZoom(null); |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
199 if (right != null) { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
200 updateChartPanel(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
201 updateChartInfo(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
202 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
203 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
204 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
205 catch(NumberFormatException nfe) { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
206 // Do nothing. |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
207 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
208 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
209 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
210 }); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
211 layout.addMember(lower); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
212 layout.addMember(form); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
213 layout.addMember(upper); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
214 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
215 root.addMember(chart); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
216 root.addMember(layout); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
217 return root; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
218 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
219 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
220 |
5963
dbbe3085384e
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5861
diff
changeset
|
221 /** |
dbbe3085384e
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5861
diff
changeset
|
222 * Callback when km-up-button is clicked. |
dbbe3085384e
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5861
diff
changeset
|
223 * Increases collectionViews KM and refreshes view. |
dbbe3085384e
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5861
diff
changeset
|
224 */ |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
225 protected void updateChartUp() { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
226 double currentKm = collectionView.getCurrentKm(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
227 if (currentKm < collectionView.getMaxKm()) { |
4321
e7f7be368cf3
NaviChartOutputTab: Doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4320
diff
changeset
|
228 // Why this math? |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
229 double newVal = currentKm * 100; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
230 newVal += (collectionView.getSteps() / 10); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
231 collectionView.setCurrentKm((double)Math.round(newVal) / 100); |
3499
17c66d38f095
FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3368
diff
changeset
|
232 tbarPanel.updateLinks(); |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
233 updateChartPanel(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
234 updateChartInfo(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
235 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
236 } |
4321
e7f7be368cf3
NaviChartOutputTab: Doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4320
diff
changeset
|
237 |
5963
dbbe3085384e
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5861
diff
changeset
|
238 /** |
dbbe3085384e
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5861
diff
changeset
|
239 * Callback when km-down-button is clicked. |
dbbe3085384e
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5861
diff
changeset
|
240 * Decreases collectionViews KM and refreshes view. |
dbbe3085384e
Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5861
diff
changeset
|
241 */ |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
242 protected void updateChartDown() { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
243 double currentKm = collectionView.getCurrentKm(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
244 if (currentKm > collectionView.getMinKm()) { |
4321
e7f7be368cf3
NaviChartOutputTab: Doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4320
diff
changeset
|
245 // Why this math? |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
246 double newVal = currentKm * 100; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
247 newVal -= (collectionView.getSteps() / 10); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
248 collectionView.setCurrentKm((double)Math.round(newVal) / 100); |
3499
17c66d38f095
FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3368
diff
changeset
|
249 tbarPanel.updateLinks(); |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
250 updateChartPanel(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
251 updateChartInfo(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
252 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
253 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
254 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
255 |
2936
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
256 /** |
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
257 * Returns the existing chart panel. |
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
258 * |
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
259 * @return the existing chart panel. |
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
260 */ |
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
261 @Override |
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
262 public Canvas getChartPanel() { |
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
263 return chart; |
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
264 } |
a805118fffa6
Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2935
diff
changeset
|
265 |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
266 /** |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
267 * Builds the URL that points to the chart image. |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
268 * |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
269 * @param width The width of the requested chart. |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
270 * @param height The height of the requested chart. |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
271 * @param xr Optional x range (used for zooming). |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
272 * @param yr Optional y range (used for zooming). |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
273 * |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
274 * @return the URL to the chart image. |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
275 */ |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
276 @Override |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
277 protected String getImgUrl(int width, int height) { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
278 Config config = Config.getInstance(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
279 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
280 String imgUrl = GWT.getModuleBaseURL(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
281 imgUrl += "chart"; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
282 imgUrl += "?uuid=" + collection.identifier(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
283 imgUrl += "&type=" + mode.getName(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
284 imgUrl += "&locale=" + config.getLocale(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
285 imgUrl += "×tamp=" + new Date().getTime(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
286 imgUrl += "&width=" + Integer.toString(width); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
287 imgUrl += "&height=" + Integer.toString(height - 40); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
288 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
289 Number[] zoom = getZoomValues(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
290 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
291 if (zoom != null) { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
292 if (zoom[0].intValue() != 0 || zoom[1].intValue() != 1) { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
293 // a zoom range of 0-1 means displaying the whole range. In such |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
294 // case we don't need to zoom. |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
295 imgUrl += "&minx=" + zoom[0]; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
296 imgUrl += "&maxx=" + zoom[1]; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
297 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
298 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
299 if (zoom[2].intValue() != 0 || zoom[3].intValue() != 1) { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
300 // a zoom range of 0-1 means displaying the whole range. In such |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
301 // case we don't need to zoom. |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
302 imgUrl += "&miny=" + zoom[2]; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
303 imgUrl += "&maxy=" + zoom[3]; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
304 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
305 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
306 |
4322
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
307 if (collectionView.getArtifact() instanceof FixAnalysisArtifact) { |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
308 if (collectionView.getCurrentKm() == -1) { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
309 FixAnalysisArtifact fix = |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
310 (FixAnalysisArtifact) collectionView.getArtifact(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
311 collectionView.setCurrentKm(fix.getFilter().getFromKm()); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
312 } |
4322
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
313 } |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
314 else if (collectionView.getCurrentKm() == -1) { |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
315 collectionView.setCurrentKm(collectionView.getArtifact().getArtifactDescription().getKMRange()[0]); |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
316 } |
f36550788add
NaviChartOutputTab: Get relevant data also from not-fixationanalysis-artifacts.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4321
diff
changeset
|
317 if (collectionView.getCurrentKm() != -1) { |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
318 imgUrl += "¤tKm=" + collectionView.getCurrentKm(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
319 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
320 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
321 return imgUrl; |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
322 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
323 |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
324 public void onTabSelected(TabSelectedEvent tse) { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
325 if (this.equals(tse.getTab())) { |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
326 updateChartPanel(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
327 updateChartInfo(); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
328 currentkm.setValue(collectionView.getCurrentKm()); |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
329 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
330 } |
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
331 |
2935
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
332 @Override |
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
333 public Map<String, String> getChartAttributes() { |
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
334 Map<String, String> attr = new HashMap<String, String>(); |
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
335 |
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
336 attr = super.getChartAttributes(); |
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
337 attr.put("km", String.valueOf(collectionView.getCurrentKm())); |
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
338 |
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
339 return attr; |
6cf983dd4f8a
Add km to chart info request parameters to get valid chart infos.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
2918
diff
changeset
|
340 } |
5964
aaa5e5ac5b02
NaviChartOutputTab: In prep for issue1311, override getExportUrl to include km.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5963
diff
changeset
|
341 |
aaa5e5ac5b02
NaviChartOutputTab: In prep for issue1311, override getExportUrl to include km.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5963
diff
changeset
|
342 /** In contrast to supers implementation, include the currently selected |
aaa5e5ac5b02
NaviChartOutputTab: In prep for issue1311, override getExportUrl to include km.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5963
diff
changeset
|
343 * km in the url. */ |
aaa5e5ac5b02
NaviChartOutputTab: In prep for issue1311, override getExportUrl to include km.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5963
diff
changeset
|
344 @Override |
aaa5e5ac5b02
NaviChartOutputTab: In prep for issue1311, override getExportUrl to include km.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5963
diff
changeset
|
345 public String getExportUrl(int width, int height, String format) { |
aaa5e5ac5b02
NaviChartOutputTab: In prep for issue1311, override getExportUrl to include km.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5963
diff
changeset
|
346 String url = super.getExportUrl(width, height, format); |
aaa5e5ac5b02
NaviChartOutputTab: In prep for issue1311, override getExportUrl to include km.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5963
diff
changeset
|
347 if (collectionView.getCurrentKm() != -1) { |
aaa5e5ac5b02
NaviChartOutputTab: In prep for issue1311, override getExportUrl to include km.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5963
diff
changeset
|
348 url += "¤tKm=" + collectionView.getCurrentKm(); |
aaa5e5ac5b02
NaviChartOutputTab: In prep for issue1311, override getExportUrl to include km.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5963
diff
changeset
|
349 } |
aaa5e5ac5b02
NaviChartOutputTab: In prep for issue1311, override getExportUrl to include km.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5963
diff
changeset
|
350 return url; |
aaa5e5ac5b02
NaviChartOutputTab: In prep for issue1311, override getExportUrl to include km.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5963
diff
changeset
|
351 } |
2906
1780841d79af
Added navigation to fix analysis charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
352 } |
4310
a17d0afd0db9
NaviChartOutputTab: Whitespace and vimline added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3499
diff
changeset
|
353 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |