annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/chart/ChartToolbar.java @ 3347:6d749af6a9c2

Issue #726 work. flys-client/trunk@5022 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Christian Lins <christian.lins@intevation.de>
date Tue, 17 Jul 2012 11:45:35 +0000
parents 725470fc57d2
children 08b2472111aa
rev   line source
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.client.client.ui.chart;
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
2
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
3 import com.google.gwt.core.client.GWT;
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
4 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
5 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
6 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
7 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
8 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
9 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
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 de.intevation.flys.client.client.FLYSConstants;
2431
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
12 import de.intevation.flys.client.client.event.ZoomEvent;
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
13 import de.intevation.flys.client.client.event.ZoomHandler;
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 de.intevation.flys.client.client.ui.ImgLink;
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1350
diff changeset
15 import de.intevation.flys.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
16
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
18 /**
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
19 * 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
20 * etc.
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
21 *
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22 * @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
23 */
2431
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
24 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
25
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
26 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
27
3347
6d749af6a9c2 Issue #726 work.
Christian Lins <christian.lins@intevation.de>
parents: 2983
diff changeset
28 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
29
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
30 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
31 protected Button datacage;
2431
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
32 protected ImgLink downloadPNG;
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
33 protected ImgLink downloadPDF;
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
34 protected ImgLink downloadSVG;
1587
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
35 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
36 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
37 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
38 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
39 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
40 protected ImgButton zoomOut;
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
41 protected ImgButton chartProperties;
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
42 protected Button addPoints;
2925
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
43 protected Button addWSP;
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
44 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
45
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
1545
2f0150f21e77 Added basic UI to enter manual points.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1541
diff changeset
47 /** @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
48 public ChartToolbar(ChartOutputTab chartTab) {
1364
9981ba2ee13a Display the datacage button in the map toolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1350
diff changeset
49 super(chartTab);
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
50
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
51 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
52 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
53 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
54 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
55 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
56 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
57 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
58 panControl = new PanControl(chartTab, MSG.pan());
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
59 chartProperties = new ImgButton();
1558
eff394f9714a Fix i18n issues.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1551
diff changeset
60 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
61
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
62 if (chartTab.getMode().getName().equals("cross_section")) {
2926
59491a730461 New i18n for WSP editor.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2925
diff changeset
63 addWSP = new Button(MSG.addWSPButton());
2927
f978058dc835 Nicen Manual WSP editor.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2926
diff changeset
64 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
65 final ChartOutputTab finalChartTab = chartTab;
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
66 addWSP.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
67 @Override
2925
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
68 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
69 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
70 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
71 }});
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
72 }
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
73
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
74 addPoints.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
75 @Override
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
76 public void onClick(ClickEvent event) {
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
77 openPointWindow();
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
78 }
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
79 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
80 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
81
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
82 manageThemes.addClickHandler(new ClickHandler() {
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
83
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
84 @Override
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
85 public void onClick(ClickEvent event) {
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
86 getChartOutputTab().toggleThemePanel();
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
87 }
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
88 });
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
89
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
90 datacage.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
91 @Override
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
92 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
93 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
94 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
95 }
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
96 });
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
97
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
98 String baseUrl = GWT.getHostPageBaseURL();
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
99
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
100 downloadPNG = new ImgLink(
1399
748e7c828d03 Issue312.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1364
diff changeset
101 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
102 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
103 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
104 20);
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
105 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
106
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
107 downloadPDF = new ImgLink(
1399
748e7c828d03 Issue312.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1364
diff changeset
108 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
109 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
110 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
111 20);
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
112 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
113
51d4b51a51ed Added icons to export chart as PNG, PDF and SVG to the ChartToolbar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1281
diff changeset
114 downloadSVG = new ImgLink(
1399
748e7c828d03 Issue312.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1364
diff changeset
115 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
116 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
117 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
118 20);
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
119 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
120
1587
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
121 downloadCSV = new ImgLink(
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
122 baseUrl + MSG.downloadCSV(),
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
123 chartTab.getExportUrl(-1, -1, "csv"),
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
124 20,
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
125 20);
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
126 downloadCSV.setTooltip(MSG.downloadCSVTooltip());
1587
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
127
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
128 zoomToMaxExtent.setSrc(baseUrl + MSG.zoom_all());
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
129 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
130 zoomToMaxExtent.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
131 @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
132 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
133 getChartOutputTab().resetRanges();
2910
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
134 // Relink the export buttons.
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
135 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
136 }
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
137 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
138 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
139
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
140 zoomOut.setSrc(baseUrl + MSG.zoom_out());
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
141 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
142 zoomOut.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
143 @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
144 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
145 getChartOutputTab().zoomOut(10);
2910
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
146 // Relink the export buttons.
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
147 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
148 }
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
149 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
150 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
151
4782c0ce9cec Re-added the function to zoom-out charts by a given factor (10%).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1280
diff changeset
152 historyBack.setSrc(baseUrl + MSG.zoom_back());
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
153 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
154 historyBack.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
155 @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
156 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
157 getChartOutputTab().zoomOut();
2910
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
158 // Relink the export buttons.
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
159 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
160 }
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
161 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
162 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
163
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
164 zoombox.addZoomHandler(chartTab);
2431
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
165 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
166 zoombox.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
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
168 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
169 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
170 }
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
171 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
172 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
173
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
174 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
175 panControl.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
176 @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
177 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
178 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
179 }
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
180 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
181 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
182
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
183 chartProperties.setSrc(baseUrl + MSG.properties_ico());
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
184 adjustImageButton(chartProperties);
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
185 chartProperties.addClickHandler(new ClickHandler() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
186 @Override
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
187 public void onClick(ClickEvent event) {
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
188 openPropertiesEditor();
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
189 }
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
190 });
2545
f25a3eb9785d Issue 671.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2479
diff changeset
191 chartProperties.setTooltip(MSG.chartPropertiesTooltip());
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
192
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
193 initLayout();
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
194 }
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
195
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
196 /** 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
197 public void adjustImageButton(ImgButton imgButton) {
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
198 imgButton.setWidth(20);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
199 imgButton.setHeight(20);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
200 imgButton.setShowDown(false);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
201 imgButton.setShowRollOver(false);
2471
a1ff911e8365 Replaced FLYS specific icon set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2452
diff changeset
202 imgButton.setShowRollOverIcon(false);
1540
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
203 imgButton.setShowDisabled(false);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
204 imgButton.setShowDisabledIcon(true);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
205 imgButton.setShowDownIcon(false);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
206 imgButton.setShowFocusedIcon(false);
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
207 }
cd88a257a5e6 Minor refactoring.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1484
diff changeset
208
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
209
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
210 private ChartOutputTab getChartOutputTab() {
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
211 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
212 }
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
213
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
214
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
215 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
216 setWidth100();
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
217 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
218 setMembersMargin(10);
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
219 setPadding(5);
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
220 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
221
534
e08777967bad Added a first implementation of a MousePositionPanel - work is not finished yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 533
diff changeset
222 Label spacer = new Label();
539
fea93eebd2fa Improved the layout of the mouse position panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 538
diff changeset
223 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
224 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
225 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
226
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
227 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
228 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
229 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
230 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
231 addMember(downloadSVG);
1587
45cd2364adad Issue 466.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1568
diff changeset
232 addMember(downloadCSV);
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
233 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
234 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
235 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
236 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
237 addMember(panControl);
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
238 addMember(chartProperties);
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
239 addMember(addPoints);
2925
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
240
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
241 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
242 addMember(addWSP);
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
243 }
6461b8dbe093 Added basic GUI for manual WSPs in cross sections.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2910
diff changeset
244
534
e08777967bad Added a first implementation of a MousePositionPanel - work is not finished yet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 533
diff changeset
245 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
246 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
247 }
1429
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
248
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
249 /**
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
250 * Open the chart property editor dialog.
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
251 */
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
252 protected void openPropertiesEditor() {
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
253 ChartPropertiesEditor editor =
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
254 new ChartPropertiesEditor(getChartOutputTab());
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
255 editor.show();
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
256 }
16b7adc66330 Added stub for chart property editor.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
257
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
258
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
259 /** Open editor for custom points. */
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
260 protected void openPointWindow() {
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
261 ChartOutputTab chartTab = getChartOutputTab();
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
262 if (chartTab.getMode().getName().equals("historical_discharge")) {
2479
057021593625 Issue 494.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2471
diff changeset
263 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
264 chartTab, chartTab.getMode().getName()).show();
2479
057021593625 Issue 494.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2471
diff changeset
265 }
057021593625 Issue 494.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2471
diff changeset
266 else {
057021593625 Issue 494.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2471
diff changeset
267 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
268 chartTab, chartTab.getMode().getName()).show();
2479
057021593625 Issue 494.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2471
diff changeset
269 }
1541
959e1d0df941 Fixed typo, more stub for add points ui.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1540
diff changeset
270 }
2431
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
271
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
272
2910
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
273 /**
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
274 * 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
275 * 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
276 * @param evt ignored.
ab0014c58ecb Fix zoom/export issue665, issue459, issue667.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2545
diff changeset
277 */
2983
725470fc57d2 Add "Manage themes" button to ChartToolbar and MapToolbar.
Christian Lins <christian.lins@intevation.de>
parents: 2936
diff changeset
278 @Override
2431
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
279 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
280 ChartOutputTab chartTab = getChartOutputTab();
2431
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
281 downloadPNG.setSource(chartTab.getExportUrl(-1, -1, "png"));
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
282 downloadPDF.setSource(chartTab.getExportUrl(-1, -1, "pdf"));
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
283 downloadSVG.setSource(chartTab.getExportUrl(-1, -1, "svg"));
90c339e26a0a #459 Take the current zoom into account for chart exports.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1587
diff changeset
284 }
2936
a805118fffa6 Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2927
diff changeset
285
a805118fffa6 Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2927
diff changeset
286 public void deselectControls() {
a805118fffa6 Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2927
diff changeset
287 zoombox.deselect();
a805118fffa6 Fixed zooming in navigatable charts.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2927
diff changeset
288 }
533
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
289 }
34103ab9fe60 Moved the toolbar stuff of the chart panel into an own class.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
290 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org