annotate src/econnect/wp3_3/client/widgets/table/DynamicStiTable.java @ 59:3a7691d29566 CellTable

Sorting of the columns in the CellTable.
author Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
date Tue, 11 Dec 2012 17:14:26 +0100
parents 39b4d5d590ba
children aa1808d94d80
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
1 package econnect.wp3_3.client.widgets.table;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
2
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
3 import java.util.ArrayList;
59
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
4 import java.util.Comparator;
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
5 import java.util.List;
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
6
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
7 import com.google.gwt.user.cellview.client.CellTable;
59
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
8 import com.google.gwt.user.cellview.client.ColumnSortEvent.ListHandler;
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
9 import com.google.gwt.user.cellview.client.SimplePager;
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
10 import com.google.gwt.user.cellview.client.TextColumn;
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
11 import com.google.gwt.user.client.rpc.AsyncCallback;
27
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
12 import com.google.gwt.user.client.ui.Anchor;
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
13 import com.google.gwt.user.client.ui.Button;
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
14 import com.google.gwt.user.client.ui.FormPanel;
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
15 import com.google.gwt.user.client.ui.Grid;
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
16 import com.google.gwt.user.client.ui.Hidden;
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
17 import com.google.gwt.user.client.ui.Image;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
18 import com.google.gwt.user.client.ui.Label;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
19 import com.google.gwt.user.client.ui.HTML;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
20 import com.google.gwt.user.client.ui.HasHorizontalAlignment;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
21 import com.google.gwt.user.client.ui.TextBox;
52
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
22 import com.google.gwt.view.client.CellPreviewEvent;
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
23 import com.google.gwt.view.client.CellPreviewEvent.Handler;
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
24 import com.google.gwt.view.client.ListDataProvider;
44
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
25 import com.google.gwt.view.client.Range;
54
5c51a488c822 fix: add missing refresh of highlights on range change of table
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 53
diff changeset
26 import com.google.gwt.view.client.RangeChangeEvent;
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
27 import com.google.gwt.core.client.GWT;
44
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
28 import com.google.gwt.dom.client.NodeList;
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
29 import com.google.gwt.dom.client.Style.BorderStyle;
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
30 import com.google.gwt.dom.client.TableCellElement;
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
31 import com.google.gwt.event.dom.client.ClickHandler;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
32 import com.google.gwt.event.dom.client.ClickEvent;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
33 import com.google.gwt.event.dom.client.MouseOutEvent;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
34 import com.google.gwt.event.dom.client.MouseOverEvent;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
35 import com.google.gwt.event.dom.client.MouseOverHandler;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
36 import com.google.gwt.event.dom.client.MouseOutHandler;
27
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
37 import com.google.gwt.http.client.URL;
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
38
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
39 import econnect.wp3_3.client.core.ApplicationConstants;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
40 import econnect.wp3_3.client.core.DataObject;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
41 import econnect.wp3_3.client.core.DataSet;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
42 import econnect.wp3_3.client.core.StiConstants;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
43 import econnect.wp3_3.client.core.StiCore;
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
44 import econnect.wp3_3.client.services.ExportWriterInterface;
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
45 import econnect.wp3_3.client.services.ExportWriterInterfaceAsync;
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
46
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
47 /**
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
48 * Implementation of a dynamic table for one dataset
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
49 */
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
50 public class DynamicStiTable extends Grid {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
51
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
52 /**
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
53 * The maximum number of rows of the table
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
54 */
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
55 private int maxRows = 10;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
56
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
57 /**
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
58 * The sti core component
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
59 */
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
60 private StiCore core;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
61
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
62 /**
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
63 * The index of the dataset
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
64 */
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
65 private int index;
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
66
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
67 /**
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
68 * The dataset of this dynamic table
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
69 */
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
70 private DataSet dataSet;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
71
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
72 /**
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
73 * ArrayList that holds all elements that can be shown
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
74 * (smaller than "dataSet" if showSelected)
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
75 */
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
76 private ArrayList<DataObject> actualObjectSet;
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
77
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
78 /**
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
79 * Provider that hands the data to the table
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
80 */
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
81 private ListDataProvider<DataObject> dataProvider;
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
82
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
83 /**
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
84 * CellTable which displays the data
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
85 */
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
86 private CellTable<DataObject> elementsTable;
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
87
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
88 /**
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
89 * The dataobjects, which are presented at the actual page
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
90 */
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
91 //private DataObject[][] displayedObjects;
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
92
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
93 /**
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
94 * The number-of-results label
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
95 */
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
96 private Label results;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
97
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
98 /**
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
99 * The image for show selected elements
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
100 */
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
101 private Image showSelected;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
102
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
103 /**
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
104 * The image for show all elements
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
105 */
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
106 private Image showAll;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
107
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
108 /**
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
109 * This value tells the view status: 1 for showAll, -1 for showSelected, 0 otherwise
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
110 */
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
111 private int viewAll = 1;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
112
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
113 /**
27
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
114 * Anchor that holds the URL for the KML download
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
115 */
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
116 private Anchor aDownloadKML;
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
117
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
118 /**
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
119 * RPC Interface for writing the KML file
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
120 */
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
121 private ExportWriterInterfaceAsync exportWriter;
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
122
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
123 /**
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
124 * Constructor for initialization of the dynamic table
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
125 *
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
126 * @param core object to allow interaction with all javascript components
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
127 * @param id id of the dataset
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
128 */
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
129 public DynamicStiTable( StiCore stiCore, final int id ){
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
130
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
131 final ApplicationConstants constants = (ApplicationConstants) GWT.create(ApplicationConstants.class);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
132 final StiConstants textConstants = (StiConstants) GWT.create(StiConstants.class);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
133
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
134 this.resize(2,1);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
135 this.addStyleName("dataTable");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
136 this.addStyleName("center");
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
137
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
138 this.index = id;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
139 this.core = stiCore;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
140 this.dataSet = core.getDataSets().get(index);
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
141 this.actualObjectSet = new ArrayList<DataObject>();
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
142 setActualObjectSet();
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
143
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
144 showAll = new Image("images/viewAll"+(core.getColorId(index))+".png");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
145 showAll.setTitle(textConstants.showAll());
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
146 showSelected = new Image("images/viewSelected"+(core.getColorId(index))+".png");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
147 showSelected.setTitle(textConstants.showSelected());
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
148 showAll.addStyleName("selectedView");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
149 showAll.addStyleName("view");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
150 showSelected.addStyleName("view");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
151 showAll.addClickHandler(new ClickHandler() {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
152 public void onClick(ClickEvent event) {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
153 if( viewAll != 1 ){
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
154 showSelected.removeStyleName("selectedView");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
155 showAll.addStyleName("selectedView");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
156 viewAll = 1;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
157 setActualObjectSet();
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
158 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
159 }
30
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
160 });
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
161 showSelected.addClickHandler(new ClickHandler() {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
162 public void onClick(ClickEvent event) {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
163 if( viewAll != -1 ){
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
164 viewAll = -1;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
165 if( setActualObjectSet() ){
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
166 showAll.removeStyleName("selectedView");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
167 showSelected.addStyleName("selectedView");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
168 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
169 else {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
170 viewAll = 1;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
171 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
172 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
173 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
174 });
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
175
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
176 Image storeSelected = new Image("images/storeSelected"+(core.getColorId(index))+".png");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
177 storeSelected.setTitle(textConstants.storeSelected());
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
178 storeSelected.addStyleName("view");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
179 storeSelected.addClickHandler(new ClickHandler() {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
180 public void onClick(ClickEvent event) {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
181 core.storeSelected(id);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
182 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
183 });
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
184
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
185 Grid showOptions = new Grid(1,3);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
186 showOptions.setWidget(0,0,showAll);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
187 showOptions.setWidget(0,1,showSelected);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
188 showOptions.setWidget(0,2,storeSelected);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
189
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
190 final TextBox textualSearch = new TextBox();
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
191 final Button search = new Button("go");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
192 final Image cancelImage = new Image(constants.cancelImage());
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
193 final Image refineImage = new Image(constants.refineImage());
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
194 final Grid buttons = new Grid(1,2);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
195 buttons.setWidget(0, 0, refineImage);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
196 buttons.setWidget(0, 1, cancelImage);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
197 final Grid refine = new Grid(1,3);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
198 refine.setWidget(0,0,textualSearch);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
199 refine.setWidget(0,1,search);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
200 search.addClickHandler(new ClickHandler() {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
201 public void onClick(ClickEvent event) {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
202 if( !textualSearch.getText().equals("") ){
30
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
203 refineByText(textualSearch.getText());
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
204 textualSearch.setEnabled(false);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
205 refine.setWidget(0, 1, buttons);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
206 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
207 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
208 });
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
209 refineImage.addClickHandler(new ClickHandler() {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
210 public void onClick(ClickEvent event) {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
211 core.refine();
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
212 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
213 });
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
214 cancelImage.addClickHandler(new ClickHandler() {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
215 public void onClick(ClickEvent event) {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
216 textualSearch.setEnabled(true);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
217 core.reset();
30
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
218
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
219 //TODO: das gibt es nun mehrfach im Code, sollte also in eine Funktion
46
a8741feea7c6 fixed comment (charset issue)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 45
diff changeset
220 //überfuhrt werden
30
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
221 showSelected.removeStyleName("selectedView");
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
222 showAll.addStyleName("selectedView");
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
223 viewAll = 1;
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
224 setActualObjectSet();
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
225
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
226 refine.setWidget(0, 1, search);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
227 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
228 });
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
229
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
230 this.results = new Label();
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
231 this.results.setStyleName("resultsLabel");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
232
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
233 Label page = new Label(textConstants.page()+":");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
234 page.setStyleName("pageLabel");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
235
27
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
236 //This anchor will hold the URL of the export-file
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
237 //for download from the ExportServlet
27
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
238 aDownloadKML = new Anchor("download KML");
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
239 aDownloadKML.setVisible(false);
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
240 aDownloadKML.addClickHandler(new ClickHandler() {
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
241 public void onClick(ClickEvent event) {
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
242 aDownloadKML.setVisible(false);
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
243 }
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
244 });
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
245
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
246 Image export = new Image(constants.exportImage());
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
247 export.addClickHandler(new ClickHandler() {
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
248 public void onClick(ClickEvent event) {
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
249 //create KML file
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
250 createKMLFile();
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
251 }
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
252 });
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
253 export.addStyleName("export");
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
254 export.setTitle(textConstants.exportDataSet());
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
255
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
256 Image delete = new Image(constants.deleteImage());
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
257 delete.addClickHandler(new ClickHandler() {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
258 public void onClick(ClickEvent event) {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
259 core.deleteDataSet(index);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
260 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
261 });
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
262 delete.addStyleName("delete");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
263 delete.setTitle(textConstants.deleteDataSet());
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
264
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
265 Grid func = new Grid(1,3);
27
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
266
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
267 func.setWidget(0, 0, aDownloadKML);
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
268 func.setWidget(0, 1, export);
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
269 func.setWidget(0, 2, delete);
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
270 func.addStyleName("center");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
271
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
272 this.elementsTable = new CellTable<DataObject>();
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
273
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
274 dataProvider = new ListDataProvider<DataObject>();
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
275 dataProvider.addDataDisplay(this.elementsTable);
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
276
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
277 TextColumn<DataObject> nameColumn = new TextColumn<DataObject>() {
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
278 @Override
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
279 public String getValue(DataObject object) {
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
280 return object.getName();
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
281 }
59
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
282 };
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
283 nameColumn.setSortable(true);
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
284 this.elementsTable.addColumn(nameColumn, "Name");
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
285
51
5d401f5c6433 Added place and description column
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 48
diff changeset
286 TextColumn<DataObject> placeColumn = new TextColumn<DataObject>() {
5d401f5c6433 Added place and description column
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 48
diff changeset
287 @Override
5d401f5c6433 Added place and description column
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 48
diff changeset
288 public String getValue(DataObject object) {
5d401f5c6433 Added place and description column
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 48
diff changeset
289 return object.getPlace();
5d401f5c6433 Added place and description column
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 48
diff changeset
290 }
59
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
291 };
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
292 placeColumn.setSortable(true);
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
293 this.elementsTable.addColumn(placeColumn, "Place");
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
294
51
5d401f5c6433 Added place and description column
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 48
diff changeset
295 TextColumn<DataObject> descriptionColumn = new TextColumn<DataObject>() {
5d401f5c6433 Added place and description column
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 48
diff changeset
296 @Override
5d401f5c6433 Added place and description column
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 48
diff changeset
297 public String getValue(DataObject object) {
5d401f5c6433 Added place and description column
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 48
diff changeset
298 return object.getDescription();
5d401f5c6433 Added place and description column
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 48
diff changeset
299 }
59
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
300 };
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
301 descriptionColumn.setSortable(true);
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
302 this.elementsTable.addColumn(descriptionColumn, "Description");
51
5d401f5c6433 Added place and description column
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 48
diff changeset
303
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
304 SimplePager pager = new SimplePager();
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
305 pager.setDisplay(this.elementsTable);
54
5c51a488c822 fix: add missing refresh of highlights on range change of table
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 53
diff changeset
306
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
307 dataProvider.setList(this.actualObjectSet);
58
39b4d5d590ba Add comment for page change handler. (Redrawing of colors)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 57
diff changeset
308
59
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
309 //The actual (at this time lexicographical) sorting routine.
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
310 //TODO: remove redundant code, make this more abstract
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
311 ListHandler<DataObject> columnSortHandler = new ListHandler<econnect.wp3_3.client.core.DataObject>(dataProvider.getList());
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
312 columnSortHandler.setComparator(nameColumn,
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
313 new Comparator<econnect.wp3_3.client.core.DataObject>() {
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
314 public int compare(econnect.wp3_3.client.core.DataObject o1, econnect.wp3_3.client.core.DataObject o2) {
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
315 if (o1 == o2)
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
316 return 0;
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
317
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
318 if (o1 != null)
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
319 return (o2 != null) ? o1.getName().compareTo(o2.getName()) : 1;
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
320
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
321 return -1;
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
322 }
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
323 });
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
324 columnSortHandler.setComparator(placeColumn,
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
325 new Comparator<econnect.wp3_3.client.core.DataObject>() {
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
326 public int compare(econnect.wp3_3.client.core.DataObject o1, econnect.wp3_3.client.core.DataObject o2) {
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
327 if (o1 == o2)
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
328 return 0;
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
329
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
330 if (o1 != null)
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
331 return (o2 != null) ? o1.getPlace().compareTo(o2.getPlace()) : 1;
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
332
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
333 return -1;
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
334 }
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
335 });
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
336 columnSortHandler.setComparator(descriptionColumn,
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
337 new Comparator<econnect.wp3_3.client.core.DataObject>() {
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
338 public int compare(econnect.wp3_3.client.core.DataObject o1, econnect.wp3_3.client.core.DataObject o2) {
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
339 if (o1 == o2)
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
340 return 0;
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
341
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
342 if (o1 != null)
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
343 return (o2 != null) ? o1.getDescription().compareTo(o2.getDescription()) : 1;
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
344
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
345 return -1;
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
346 }
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
347 });
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
348 this.elementsTable.addColumnSortHandler(columnSortHandler);
3a7691d29566 Sorting of the columns in the CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 58
diff changeset
349
58
39b4d5d590ba Add comment for page change handler. (Redrawing of colors)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 57
diff changeset
350 //Redraw row colors on page change
54
5c51a488c822 fix: add missing refresh of highlights on range change of table
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 53
diff changeset
351 this.elementsTable.addRangeChangeHandler(new RangeChangeEvent.Handler(){
5c51a488c822 fix: add missing refresh of highlights on range change of table
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 53
diff changeset
352 public void onRangeChange(RangeChangeEvent event){
5c51a488c822 fix: add missing refresh of highlights on range change of table
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 53
diff changeset
353 updateView(false);
5c51a488c822 fix: add missing refresh of highlights on range change of table
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 53
diff changeset
354 }
5c51a488c822 fix: add missing refresh of highlights on range change of table
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 53
diff changeset
355 });
40
20eb7596d466 Preparation for a switch to a CellTable.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 30
diff changeset
356
55
08ae8b6d627f Set column width of CellTable. So they always fill up 100% and page changes dont alter the layout.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 54
diff changeset
357 this.elementsTable.setColumnWidth(nameColumn, "33%");
08ae8b6d627f Set column width of CellTable. So they always fill up 100% and page changes dont alter the layout.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 54
diff changeset
358 this.elementsTable.setColumnWidth(placeColumn, "33%");
08ae8b6d627f Set column width of CellTable. So they always fill up 100% and page changes dont alter the layout.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 54
diff changeset
359 this.elementsTable.setColumnWidth(descriptionColumn, "33%");
08ae8b6d627f Set column width of CellTable. So they always fill up 100% and page changes dont alter the layout.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 54
diff changeset
360
57
cd79dc467688 Add comment for highlighting code
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 55
diff changeset
361 //This handler adds the hover-functionality to the table,
cd79dc467688 Add comment for highlighting code
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 55
diff changeset
362 //basically highlighting of rows (and in the map/timeplot)
52
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
363 this.elementsTable.addCellPreviewHandler(new Handler<DataObject>()
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
364 {
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
365 //@Override
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
366 public void onCellPreview(
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
367 CellPreviewEvent<DataObject> event)
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
368 {
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
369 boolean wasChanged = false;
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
370
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
371 if ("mouseover".equals(event.getNativeEvent().getType())) {
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
372 DataObject hoveredObject = event.getValue();
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
373
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
374 if (!hoveredObject.getHover()){
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
375 hoveredObject.setHover(true);
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
376
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
377 wasChanged = true;
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
378 }
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
379 }
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
380 else if ("mouseout".equals(event.getNativeEvent().getType())) {
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
381 DataObject hoveredObject = event.getValue();
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
382
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
383 if (hoveredObject.getHover()){
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
384 hoveredObject.setHover(false);
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
385
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
386 wasChanged = true;
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
387 }
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
388 }
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
389 else if ("click".equals(event.getNativeEvent().getType())) {
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
390 DataObject clickedObject = event.getValue();
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
391
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
392 if (clickedObject.getPercentage() > 0){
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
393 clickedObject.setPercentage(0);
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
394
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
395 } else {
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
396 clickedObject.setPercentage(1);
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
397 }
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
398
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
399 wasChanged = true;
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
400 }
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
401
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
402 if (wasChanged) {
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
403 updateView(true);
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
404 core.updateTimeAndMap();
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
405 }
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
406 }
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
407 });
cde4a01e9fa8 mouse events (over/out/click) for table rows
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 51
diff changeset
408
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
409 this.setWidget(1, 0, this.elementsTable);
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
410
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
411 Grid tableControls = new Grid(1,5);
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
412 tableControls.setWidget(0,0,showOptions);
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
413 tableControls.setWidget(0,1,refine);
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
414 tableControls.setWidget(0,2,this.results);
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
415 tableControls.setWidget(0,3,pager);
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
416 tableControls.setWidget(0,4,func);
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
417 tableControls.setStyleName("tableControls");
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
418
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
419 this.setWidget(0, 0, tableControls);
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
420
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
421 tableControls.getCellFormatter().setHorizontalAlignment(0, 0, HasHorizontalAlignment.ALIGN_CENTER);
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
422
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
423 this.getCellFormatter().setHorizontalAlignment(0, 0, HasHorizontalAlignment.ALIGN_CENTER);
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
424 this.getCellFormatter().setHorizontalAlignment(1, 0, HasHorizontalAlignment.ALIGN_CENTER);
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
425 this.getCellFormatter().setWidth(1, 0, "100%");
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
426 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
427
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
428 /**
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
429 * Sets the actual object set; depends on the showAll and showSelected selection
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
430 *
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
431 * @return boolean value, if there are selected objects
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
432 */
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
433 private boolean setActualObjectSet(){
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
434
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
435 boolean dataSetWasEmpty = false;
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
436
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
437 if( viewAll == -1 ){
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
438
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
439 this.actualObjectSet.clear();
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
440
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
441 for( int i=0; i<this.dataSet.getObjects().length(); i++){
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
442 DataObject object = this.dataSet.getObjects().get(i);
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
443 if( object.isSelected() ){
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
444 this.actualObjectSet.add(object);
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
445 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
446 }
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
447 if( this.actualObjectSet.size() == 0 ){
30
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
448 //TODO: Wenn die derzeitige Auswahl _keine_ Elemente
46
a8741feea7c6 fixed comment (charset issue)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 45
diff changeset
449 //enthält, werden _alle_ angezeigt. Ist das sinnvoll?
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
450 dataSetWasEmpty = true;
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
451 this.viewAll = 1;
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
452 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
453 }
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
454 if( this.viewAll == 1 ){
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
455 this.actualObjectSet.clear();
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
456 for( int i=0; i<this.dataSet.getObjects().length(); i++){
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
457 this.actualObjectSet.add(this.dataSet.getObjects().get(i));
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
458 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
459 }
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
460
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
461 //if the dataProvider already exists, refresh the
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
462 //displayed data
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
463 if (this.dataProvider != null) {
44
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
464
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
465 //refresh data
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
466 this.dataProvider.refresh();
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
467 this.elementsTable.setRowCount(this.actualObjectSet.size());
44
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
468
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
469 this.updateView(false);
43
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
470 }
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
471
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
472 if (dataSetWasEmpty)
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
473 return false;
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
474 else
fad6fb60a2db refining of data in CellTable
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 40
diff changeset
475 return true;
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
476 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
477
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
478 /**
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
479 * Creates a (preliminary) KML file from the data in the current data set
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
480 */
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
481 private void createKMLFile(){
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
482 String kmlContent = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><kml xmlns=\"http://www.opengis.net/kml/2.2\"><Document>";
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
483
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
484 for( int i=0; i<this.dataSet.getObjects().length(); i++){
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
485 DataObject currentDataObject = this.dataSet.getObjects().get(i);
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
486
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
487 String name = currentDataObject.getName();
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
488 String description = currentDataObject.getDescription();
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
489 String place = currentDataObject.getPlace();
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
490 String lat = currentDataObject.getLat();
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
491 String lon = currentDataObject.getLon();
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
492 String timeStamp = currentDataObject.getTimeStamp();
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
493 String timeSpanStart = currentDataObject.getTimeSpanStart();
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
494 String timeSpanEnd = currentDataObject.getTimeSpanEnd();
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
495
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
496 String kmlEntry = "<Placemark>";
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
497
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
498 kmlEntry += "<name><![CDATA[" + name + "]]></name>";
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
499 kmlEntry += "<address><![CDATA[" + place + "]]></address>";
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
500 kmlEntry += "<description><![CDATA[" + description + "]]></description>";
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
501 kmlEntry += "<Point><coordinates>" + lon + "," + lat + "</coordinates></Point>";
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
502
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
503 if ( (timeStamp != null) && (timeStamp != "undefined") ) {
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
504 kmlEntry += "<TimeStamp><when>" + timeStamp + "</when></TimeStamp>";
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
505 } else {
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
506 kmlEntry += "<TimeSpan><begin>" + timeSpanStart + "</begin><end>" + timeSpanEnd + "</end></TimeSpan>";
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
507 }
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
508
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
509 kmlEntry += "</Placemark>";
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
510
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
511 kmlContent += kmlEntry;
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
512 }
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
513
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
514 kmlContent += "</Document></kml>";
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
515
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
516 exportWriter = GWT.create(ExportWriterInterface.class);
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
517
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
518 exportWriter.writeKMLFile(kmlContent,
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
519 new AsyncCallback<String>() {
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
520 public void onFailure(Throwable caught) {
27
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
521 //TODO: error message in layover?
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
522 //there needs to be an error-window for KML parser failures anyway
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
523 //this one should be used
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
524 int i = 1;
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
525 }
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
526 public void onSuccess(String exportFileName) {
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
527
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
528 String url = GWT.getModuleBaseURL();
27
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
529 url = url + "ExportServlet?ExportedFilename=" + URL.encode(exportFileName);
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
530
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
531 aDownloadKML.setHref(url);
3184e8faa5c0 Anchor for KML download. This is a preliminiary work-around.
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 15
diff changeset
532 aDownloadKML.setVisible(true);
15
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
533 }
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
534 }
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
535 );
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
536 }
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
537
175c1eecaf84 added export kml feature (not finished)
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 3
diff changeset
538 /**
30
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
539 * Refines the currently selected dataset (table) by the search term entered.
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
540 *
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
541 */
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
542 private void refineByText(String searchString){
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
543
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
544 String lowerCaseSearchString = searchString.toLowerCase();
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
545
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
546 for( int i=0; i<this.dataSet.getObjects().length(); i++){
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
547 DataObject currentDataObject = this.dataSet.getObjects().get(i);
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
548
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
549 String name = currentDataObject.getName();
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
550 String description = currentDataObject.getDescription();
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
551 String place = currentDataObject.getPlace();
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
552
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
553 if ( name.toLowerCase().contains(lowerCaseSearchString) ||
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
554 description.toLowerCase().contains(lowerCaseSearchString) ||
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
555 place.toLowerCase().contains(lowerCaseSearchString) )
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
556 currentDataObject.setPercentage(1);
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
557 else
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
558 currentDataObject.setPercentage(0);
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
559 }
1e95995ddbb2 re-added the ability to refine the dataset by a (very simple) text search
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 27
diff changeset
560
44
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
561 updateView(false);
53
0a3dca94458c fix: add missing update of map and timeplot widget at refineText
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 52
diff changeset
562 core.updateTimeAndMap();
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
563 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
564
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
565 /**
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
566 * Updates all cells of the actual page
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
567 *
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
568 * @param hover if there was a hover selection which caused to trigger this function
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
569 */
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
570 public void updateView(boolean hover){
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
571 if( !hover && this.viewAll == -1 ){
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
572 showSelected.removeStyleName("selectedView");
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
573 this.viewAll = 0;
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
574 }
44
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
575
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
576 //redraw colors of elements (selected/unselected)
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
577 int start = this.elementsTable.getVisibleRange().getStart();
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
578 for (int i=0; i<this.elementsTable.getPageSize(); i++) {
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
579
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
580 if ((start+i) >= dataProvider.getList().size())
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
581 break;
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
582
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
583 DataObject object = dataProvider.getList().get(start+i);
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
584
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
585 boolean selected = object.isSelected();
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
586 if (hover)
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
587 selected = object.getHover();
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
588
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
589 double percentage = (new Double(object.getPercentage()).doubleValue());
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
590 String borderColor = StiCore.getBorderColor(this.index,selected);
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
591 String cellColor = StiCore.getCellColor(this.index,percentage);
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
592
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
593 //TODO: das RowElement ist ein TR. Das hat kein Border, weswegen es
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
594 //auch keine Farbe bekommt. Erst einmal allen sub-Elementen die
47
e86fc5c5d386 comment: added explanation
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 46
diff changeset
595 //border-Color geben. Das sollte verbessert werden, da DOM-Iterieren
e86fc5c5d386 comment: added explanation
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 46
diff changeset
596 //langsam ist.
44
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
597
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
598 NodeList<TableCellElement> cells = this.elementsTable.getRowElement(i).getCells();
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
599
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
600 for (int cellIndex=0; cellIndex < cells.getLength(); cellIndex++){
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
601 cells.getItem(cellIndex).getStyle().setBorderColor(borderColor);
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
602 }
44
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
603
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
604 this.elementsTable.getRowElement(i).getStyle().setBorderColor(borderColor);
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
605 this.elementsTable.getRowElement(i).getStyle().setBackgroundColor(cellColor);
5db587ba4b0f background and border color of CellTable for selection and hover
Sebastian Kruse <skruse@mpiwg-berlin.mpg.de>
parents: 43
diff changeset
606 }
3
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
607 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
608
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
609 public String getTermIdentifier() {
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
610 return this.dataSet.getTermIdentifier();
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
611 }
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
612
cf06b77a8bbd Committed branch of the e4D repos sti-gwt branch 16384.
StefanFunk <StefanFunk@f2b5be40-def6-11e0-8a09-b3c1cc336c6b>
parents:
diff changeset
613 }