annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/chart/ChartToolbar.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 2098ac94bebc
children 424c3d84e119
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;
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
11 import com.google.gwt.core.client.GWT;
4013
0be65bc65cee Set overflow behaviour of Toolbars to HIDDEN to avoid auto scrollbars.
Christian Lins <christian.lins@intevation.de>
parents: 3547
diff changeset
12
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13 import com.smartgwt.client.widgets.Button;
1344
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
14 import com.smartgwt.client.widgets.Canvas;
543
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
15 import com.smartgwt.client.widgets.ImgButton;
534
e08777967bad Added a first implementation of a MousePositionPanel - work is not finished yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 533
diff changeset
16 import com.smartgwt.client.widgets.Label;
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17 import com.smartgwt.client.widgets.events.ClickEvent;
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
18 import com.smartgwt.client.widgets.events.ClickHandler;
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
19
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
20 import org.dive4elements.river.client.client.Config;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
21 import org.dive4elements.river.client.client.FLYSConstants;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
22 import org.dive4elements.river.client.client.event.ZoomEvent;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
23 import org.dive4elements.river.client.client.event.ZoomHandler;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
24 import org.dive4elements.river.client.client.ui.ImgLink;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
25 import org.dive4elements.river.client.client.ui.Toolbar;
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
26
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
27
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
28 /**
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
29 * Toolbar with buttons/icons to open datacage, switch to zoom mode, zoom out
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
30 * etc.
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
31 *
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33 */
2391
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
34 public class ChartToolbar extends Toolbar implements ZoomHandler {
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
35
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
36 protected static FLYSConstants MSG = GWT.create(FLYSConstants.class);
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
37
3347
6d749af6a9c2 Issue #726 work.
Christian Lins <christian.lins@intevation.de>
parents: 2983
diff changeset
38 public static final int PANEL_HEIGHT = 35;
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
39
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
40 protected Button manageThemes;
534
e08777967bad Added a first implementation of a MousePositionPanel - work is not finished yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 533
diff changeset
41 protected Button datacage;
2391
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
42 protected ImgLink downloadPNG;
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
43 protected ImgLink downloadPDF;
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
44 protected ImgLink downloadSVG;
1587
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
45 protected Canvas downloadCSV;
534
e08777967bad Added a first implementation of a MousePositionPanel - work is not finished yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 533
diff changeset
46 protected MousePositionPanel position;
540
a866cdf1ca40 Implemented a zoombox control and added it to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 539
diff changeset
47 protected ZoomboxControl zoombox;
543
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
48 protected ImgButton zoomToMaxExtent;
1281
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
49 protected ImgButton historyBack;
544
0f4095a522ab Added a zoom-out control to the chart toolbar which zooms 10% of the current ranges out.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 543
diff changeset
50 protected ImgButton zoomOut;
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
51 protected ImgButton chartProperties;
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
52 protected Button addPoints;
2925
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
53 protected Button addWSP;
3499
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
54 protected ImgLink exportAT;
552
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
55 protected PanControl panControl;
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
56
534
e08777967bad Added a first implementation of a MousePositionPanel - work is not finished yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 533
diff changeset
57
1545
2f0150f21e77 Added basic UI to enter manual points.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1541
diff changeset
58 /** @param chartTab Output-Tab on which this toolbar is located. */
2f0150f21e77 Added basic UI to enter manual points.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1541
diff changeset
59 public ChartToolbar(ChartOutputTab chartTab) {
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1350
diff changeset
60 super(chartTab);
3370
08b2472111aa New implementation of OverviewOutputTab which has a minimalistic chart toolbar and no chart theme panel. The overview image is fetched as single image from server.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3347
diff changeset
61 initTools();
08b2472111aa New implementation of OverviewOutputTab which has a minimalistic chart toolbar and no chart theme panel. The overview image is fetched as single image from server.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3347
diff changeset
62 }
3371
b6575b8c8db0 Removed superfluous imports and trailinh whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3370
diff changeset
63
b6575b8c8db0 Removed superfluous imports and trailinh whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3370
diff changeset
64
3370
08b2472111aa New implementation of OverviewOutputTab which has a minimalistic chart toolbar and no chart theme panel. The overview image is fetched as single image from server.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3347
diff changeset
65 protected void initTools() {
08b2472111aa New implementation of OverviewOutputTab which has a minimalistic chart toolbar and no chart theme panel. The overview image is fetched as single image from server.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3347
diff changeset
66 ChartOutputTab chartTab = getChartOutputTab();
3371
b6575b8c8db0 Removed superfluous imports and trailinh whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3370
diff changeset
67
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
68 manageThemes = new Button(MSG.manageThemes());
543
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
69 datacage = new Button(MSG.databasket());
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
70 position = new MousePositionPanel(chartTab);
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
71 zoombox = new ZoomboxControl(chartTab, MSG.zoom_in());
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
72 zoomToMaxExtent = new ImgButton();
544
0f4095a522ab Added a zoom-out control to the chart toolbar which zooms 10% of the current ranges out.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 543
diff changeset
73 zoomOut = new ImgButton();
1281
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
74 historyBack = new ImgButton();
552
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
75 panControl = new PanControl(chartTab, MSG.pan());
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
76 chartProperties = new ImgButton();
1558
eff394f9714a Fix i18n issues.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1551
diff changeset
77 addPoints = new Button(MSG.points());
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
78
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
79 if (chartTab.getMode().getName().equals("cross_section")) {
2926
59491a730461 New i18n for WSP editor.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2925
diff changeset
80 addWSP = new Button(MSG.addWSPButton());
2927
f978058dc835 Nicen Manual WSP editor.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2926
diff changeset
81 addWSP.setTooltip(MSG.addWSPTooltip());
2925
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
82 final ChartOutputTab finalChartTab = chartTab;
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
83 addWSP.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
84 @Override
2925
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
85 public void onClick(ClickEvent ce) {
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
86 new ManualWSPEditor(finalChartTab.getView().getCollection(),
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
87 finalChartTab, finalChartTab.getMode().getName()).show();
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
88 }});
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
89 }
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
90
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
91 addPoints.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
92 @Override
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
93 public void onClick(ClickEvent event) {
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
94 openPointWindow();
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
95 }
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
96 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
97 addPoints.setTooltip(MSG.addPointsTooltip());
538
75df57220104 Adapted the MousePositionPanel to use the Transform2D object for computing the chart coordinates from image coordinates.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 534
diff changeset
98
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
99 manageThemes.addClickHandler(new ClickHandler() {
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
100
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
101 @Override
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
102 public void onClick(ClickEvent event) {
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
103 getChartOutputTab().toggleThemePanel();
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
104 }
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
105 });
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
106
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
107 datacage.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
108 @Override
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
109 public void onClick(ClickEvent event) {
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
110 GWT.log("Clicked 'datacage' button.");
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1350
diff changeset
111 openDatacageWindow((ChartOutputTab) getOutputTab());
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
112 }
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
113 });
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
114
543
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
115 String baseUrl = GWT.getHostPageBaseURL();
3499
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
116 String moduleUrl = GWT.getModuleBaseURL();
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
117 Config config = Config.getInstance();
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
118
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
119 if (chartTab.getMode().getName().equals("fix_wq_curve")) {
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
120 exportAT = new ImgLink(
6222
595f673f8a45 Fix AT export icon and file name after a km change
Andre Heinecke <aheinecke@intevation.de>
parents: 5993
diff changeset
121 baseUrl + MSG.downloadAT(),
3499
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
122 moduleUrl + "export" +
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
123 "?uuid=" + chartTab.getCollection().identifier() +
5055
3b974a24a8e1 Fixed AT-Export in 'ausgel. WSPL'.
Raimund Renkert <rrenkert@intevation.de>
parents: 4013
diff changeset
124 "&name=" + chartTab.getMode().getName() +
3499
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
125 "&mode=" + chartTab.getMode().getName() + "_at_export" +
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
126 "&type=at" +
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
127 "&server=" + config.getServerUrl() +
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
128 "&locale=" + config.getLocale() +
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
129 "&km=" + chartTab.getCollectionView().getCurrentKm(),
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
130 20,
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
131 20
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
132 );
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
133 exportAT.setTooltip(MSG.exportATTooltip());
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
134 }
1344
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
135
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
136 downloadPNG = new ImgLink(
1399
748e7c828d03 Issue312.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1364
diff changeset
137 baseUrl + MSG.downloadPNG(),
1484
cb5ab84505b7 Set the chart export size to -1, so that the FLYS server is able to distinguish between an export and the query to display a chart.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1429
diff changeset
138 chartTab.getExportUrl(-1, -1, "png"),
1344
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
139 20,
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
140 20);
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
141 downloadPNG.setTooltip(MSG.downloadPNGTooltip());
1344
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
142
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
143 downloadPDF = new ImgLink(
1399
748e7c828d03 Issue312.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1364
diff changeset
144 baseUrl + MSG.downloadPDF(),
1344
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
145 chartTab.getExportUrl(1280, 1024, "pdf"),
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
146 20,
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
147 20);
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
148 downloadPDF.setTooltip(MSG.downloadPDFTooltip());
1344
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
149
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
150 downloadSVG = new ImgLink(
1399
748e7c828d03 Issue312.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1364
diff changeset
151 baseUrl + MSG.downloadSVG(),
1344
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
152 chartTab.getExportUrl(1280, 1024, "svg"),
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
153 20,
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
154 20);
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
155 downloadSVG.setTooltip(MSG.downloadSVGTooltip());
1344
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
156
1587
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
157 downloadCSV = new ImgLink(
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
158 baseUrl + MSG.downloadCSV(),
7138
2098ac94bebc issue971: For diagram csv export request windows-1252 encoded output.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 6222
diff changeset
159 chartTab.getExportUrl(-1, -1, "csv", "windows-1252"),
1587
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
160 20,
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
161 20);
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
162 downloadCSV.setTooltip(MSG.downloadCSVTooltip());
1587
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
163
543
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
164 zoomToMaxExtent.setSrc(baseUrl + MSG.zoom_all());
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
165 adjustImageButton(zoomToMaxExtent);
543
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
166 zoomToMaxExtent.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
167 @Override
543
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
168 public void onClick(ClickEvent event) {
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
169 getChartOutputTab().resetRanges();
2910
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
170 // Relink the export buttons.
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
171 onZoom(null);
543
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
172 }
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
173 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
174 zoomToMaxExtent.setTooltip(MSG.zoomToMaxExtentTooltip());
543
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
175
544
0f4095a522ab Added a zoom-out control to the chart toolbar which zooms 10% of the current ranges out.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 543
diff changeset
176 zoomOut.setSrc(baseUrl + MSG.zoom_out());
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
177 adjustImageButton(zoomOut);
544
0f4095a522ab Added a zoom-out control to the chart toolbar which zooms 10% of the current ranges out.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 543
diff changeset
178 zoomOut.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
179 @Override
544
0f4095a522ab Added a zoom-out control to the chart toolbar which zooms 10% of the current ranges out.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 543
diff changeset
180 public void onClick(ClickEvent event) {
1281
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
181 getChartOutputTab().zoomOut(10);
2910
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
182 // Relink the export buttons.
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
183 onZoom(null);
1281
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
184 }
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
185 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
186 zoomOut.setTooltip(MSG.zoomOutTooltip());
1281
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
187
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
188 historyBack.setSrc(baseUrl + MSG.zoom_back());
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
189 adjustImageButton(historyBack);
1281
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
190 historyBack.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
191 @Override
1281
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
192 public void onClick(ClickEvent event) {
1280
66192d170c79 Bugfix: #179 and #198 Zoom-out will no longer work with a factor but with stacked chart extents.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 911
diff changeset
193 getChartOutputTab().zoomOut();
2910
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
194 // Relink the export buttons.
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
195 onZoom(null);
544
0f4095a522ab Added a zoom-out control to the chart toolbar which zooms 10% of the current ranges out.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 543
diff changeset
196 }
0f4095a522ab Added a zoom-out control to the chart toolbar which zooms 10% of the current ranges out.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 543
diff changeset
197 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
198 historyBack.setTooltip(MSG.historyBackTooltip());
544
0f4095a522ab Added a zoom-out control to the chart toolbar which zooms 10% of the current ranges out.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 543
diff changeset
199
541
ed29599e06e5 Added the ChartOutputTab as ZoomHandler for the ZoomboxControl - no zooming is done yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 540
diff changeset
200 zoombox.addZoomHandler(chartTab);
2391
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
201 zoombox.addZoomHandler(this);
552
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
202 zoombox.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
203 @Override
552
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
204 public void onClick(ClickEvent event) {
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
205 panControl.deselect();
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
206 }
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
207 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
208 zoombox.setTooltip(MSG.zoomboxTooltip());
552
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
209
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
210 panControl.addPanHandler(chartTab);
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
211 panControl.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
212 @Override
552
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
213 public void onClick(ClickEvent event) {
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
214 zoombox.deselect();
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
215 }
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
216 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
217 panControl.setTooltip(MSG.panControlTooltip());
541
ed29599e06e5 Added the ChartOutputTab as ZoomHandler for the ZoomboxControl - no zooming is done yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 540
diff changeset
218
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
219 chartProperties.setSrc(baseUrl + MSG.properties_ico());
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
220 adjustImageButton(chartProperties);
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
221 chartProperties.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
222 @Override
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
223 public void onClick(ClickEvent event) {
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
224 openPropertiesEditor();
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
225 }
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
226 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
227 chartProperties.setTooltip(MSG.chartPropertiesTooltip());
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
228
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
229 initLayout();
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
230 }
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
231
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
232 /** Set width, height and other properties of an imagebutton. */
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
233 public void adjustImageButton(ImgButton imgButton) {
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
234 imgButton.setWidth(20);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
235 imgButton.setHeight(20);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
236 imgButton.setShowDown(false);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
237 imgButton.setShowRollOver(false);
2471
a1ff911e8365 Replaced FLYS specific icon set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2452
diff changeset
238 imgButton.setShowRollOverIcon(false);
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
239 imgButton.setShowDisabled(false);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
240 imgButton.setShowDisabledIcon(true);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
241 imgButton.setShowDownIcon(false);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
242 imgButton.setShowFocusedIcon(false);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
243 }
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
244
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
245
3370
08b2472111aa New implementation of OverviewOutputTab which has a minimalistic chart toolbar and no chart theme panel. The overview image is fetched as single image from server.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3347
diff changeset
246 protected ChartOutputTab getChartOutputTab() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
247 return (ChartOutputTab)getOutputTab();
543
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
248 }
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
249
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
250
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
251 protected void initLayout() {
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
252 setWidth100();
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
253 setHeight(PANEL_HEIGHT);
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
254 setMembersMargin(10);
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
255 setPadding(5);
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
256 setBorder("1px solid black");
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
257
534
e08777967bad Added a first implementation of a MousePositionPanel - work is not finished yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 533
diff changeset
258 Label spacer = new Label();
539
fea93eebd2fa Improved the layout of the mouse position panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 538
diff changeset
259 spacer.setWidth("*");
534
e08777967bad Added a first implementation of a MousePositionPanel - work is not finished yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 533
diff changeset
260 datacage.setWidth("95px");
538
75df57220104 Adapted the MousePositionPanel to use the Transform2D object for computing the chart coordinates from image coordinates.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 534
diff changeset
261 position.setWidth("200px");
534
e08777967bad Added a first implementation of a MousePositionPanel - work is not finished yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 533
diff changeset
262
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
263 addMember(manageThemes);
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
264 addMember(datacage);
1344
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
265 addMember(downloadPNG);
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
266 addMember(downloadPDF);
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
267 addMember(downloadSVG);
1587
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
268 addMember(downloadCSV);
3499
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
269 if (getChartOutputTab().getMode().getName().equals("fix_wq_curve")) {
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
270 addMember(exportAT);
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
271 }
543
9c2cf4811a7d Added a control to reset the zoom of a chart. In addition, the zoom buttons are displayed as ImgButtons now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 541
diff changeset
272 addMember(zoomToMaxExtent);
1281
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
273 addMember(historyBack);
544
0f4095a522ab Added a zoom-out control to the chart toolbar which zooms 10% of the current ranges out.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 543
diff changeset
274 addMember(zoomOut);
540
a866cdf1ca40 Implemented a zoombox control and added it to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 539
diff changeset
275 addMember(zoombox);
552
6050d49eaba3 Adapted the ChartInfoService to return more information about charts than before. In addition, the PanControl is added to the chart toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 544
diff changeset
276 addMember(panControl);
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
277 addMember(chartProperties);
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
278 addMember(addPoints);
2925
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
279
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
280 if (getChartOutputTab().getMode().getName().equals("cross_section")) {
2925
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
281 addMember(addWSP);
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
282 }
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
283
534
e08777967bad Added a first implementation of a MousePositionPanel - work is not finished yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 533
diff changeset
284 addMember(spacer);
e08777967bad Added a first implementation of a MousePositionPanel - work is not finished yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 533
diff changeset
285 addMember(position);
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
286 }
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
287
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
288 /**
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
289 * Open the chart property editor dialog.
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
290 */
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
291 protected void openPropertiesEditor() {
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
292 ChartPropertiesEditor editor =
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
293 new ChartPropertiesEditor(getChartOutputTab());
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
294 editor.show();
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
295 }
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
296
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
297
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
298 /** Open editor for custom points. */
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
299 protected void openPointWindow() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
300 ChartOutputTab chartTab = getChartOutputTab();
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
301 if (chartTab.getMode().getName().equals("historical_discharge")) {
2479
057021593625 Issue 494.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2471
diff changeset
302 new ManualDatePointsEditor(chartTab.getView().getCollection(),
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
303 chartTab, chartTab.getMode().getName()).show();
2479
057021593625 Issue 494.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2471
diff changeset
304 }
057021593625 Issue 494.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2471
diff changeset
305 else {
057021593625 Issue 494.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2471
diff changeset
306 new ManualPointsEditor(chartTab.getView().getCollection(),
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
307 chartTab, chartTab.getMode().getName()).show();
2479
057021593625 Issue 494.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2471
diff changeset
308 }
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
309 }
2391
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
310
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
311
2910
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
312 /**
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
313 * Sets new sources to the export button/images, such that the
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
314 * correct zoom values are included in the request when clicked.
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
315 * @param evt ignored.
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
316 */
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
317 @Override
2391
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
318 public void onZoom(ZoomEvent evt) {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
319 ChartOutputTab chartTab = getChartOutputTab();
2391
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
320 downloadPNG.setSource(chartTab.getExportUrl(-1, -1, "png"));
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
321 downloadPDF.setSource(chartTab.getExportUrl(-1, -1, "pdf"));
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
322 downloadSVG.setSource(chartTab.getExportUrl(-1, -1, "svg"));
3c8ae5605a51 Picked rev 4059,4071,4072,4073 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
323 }
2936
a805118fffa6 Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2927
diff changeset
324
a805118fffa6 Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2927
diff changeset
325 public void deselectControls() {
a805118fffa6 Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2927
diff changeset
326 zoombox.deselect();
a805118fffa6 Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2927
diff changeset
327 }
3499
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
328
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
329 public void updateLinks() {
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
330 ChartOutputTab chartTab = getChartOutputTab();
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
331 String moduleUrl = GWT.getModuleBaseURL();
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
332 Config config = Config.getInstance();
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
333
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
334 if (chartTab.getMode().getName().equals("fix_wq_curve")) {
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
335 exportAT.setSource(
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
336 moduleUrl + "export" +
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
337 "?uuid=" + chartTab.getCollection().identifier() +
6222
595f673f8a45 Fix AT export icon and file name after a km change
Andre Heinecke <aheinecke@intevation.de>
parents: 5993
diff changeset
338 "&name=" + chartTab.getMode().getName() +
3499
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
339 "&mode=" + chartTab.getMode().getName() + "_at_export" +
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
340 "&type=at" +
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
341 "&server=" + config.getServerUrl() +
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
342 "&locale=" + config.getLocale() +
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
343 "&km=" + chartTab.getCollectionView().getCurrentKm());
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
344 }
17c66d38f095 FixA: Added AT file export to FixAnalysis W/Q.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3371
diff changeset
345 }
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
346 }
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
347 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org