annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/UIProviderFactory.java @ 9256:6c24c857ccf9

fixation refactoring and inputItem behaviour to interfaces
author gernotbelger
date Fri, 13 Jul 2018 12:04:21 +0200
parents b64cf2f5f719
children c7e5285d434f
rev   line source
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5993
ea9eef426962 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5861
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5993
ea9eef426962 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5861
diff changeset
6 * documentation coming with Dive4Elements River for details.
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
9 package org.dive4elements.river.client.client.ui;
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
9133
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
11 import org.dive4elements.river.client.client.FLYSConstants;
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
12 import org.dive4elements.river.client.client.ui.fixation.FixEventSelect;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
13 import org.dive4elements.river.client.client.ui.fixation.FixFunctionSelect;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
14 import org.dive4elements.river.client.client.ui.fixation.FixGaugeSelectPanel;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
15 import org.dive4elements.river.client.client.ui.fixation.FixLocationPanel;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
16 import org.dive4elements.river.client.client.ui.fixation.FixMultiPeriodPanel;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
17 import org.dive4elements.river.client.client.ui.fixation.FixPeriodPanel;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
18 import org.dive4elements.river.client.client.ui.fixation.FixQSelectPanel;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
19 import org.dive4elements.river.client.client.ui.minfo.BedHeightsDatacagePanel;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
20 import org.dive4elements.river.client.client.ui.minfo.BedMultiPeriodPanel;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
21 import org.dive4elements.river.client.client.ui.minfo.CheckboxPanel;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
22 import org.dive4elements.river.client.client.ui.minfo.SedLoadDistancePanel;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
23 import org.dive4elements.river.client.client.ui.minfo.SedLoadEpochPanel;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
24 import org.dive4elements.river.client.client.ui.minfo.SedLoadPeriodPanel;
8231
dded480e17c9 (issue1448) Add Panel for new sq_ti_select state
Andre Heinecke <andre.heinecke@intevation.de>
parents: 6060
diff changeset
25 import org.dive4elements.river.client.client.ui.minfo.SedLoadSQTiPanel;
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 9062
diff changeset
26 import org.dive4elements.river.client.client.ui.sinfo.CollisionLoadEpochPanel;
9074
766890addcb2 state To client communication;
gernotbelger
parents: 9073
diff changeset
27 import org.dive4elements.river.client.client.ui.sinfo.CollisionLoadYearPanel;
8993
0adc6d04de95 SInfo - FlowDepthMinMax: choosing bed heights, not bed height min and max separately
gernotbelger
parents: 8854
diff changeset
28 import org.dive4elements.river.client.client.ui.sinfo.FlowDepthMinMaxTwinPanel;
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents: 8791
diff changeset
29 import org.dive4elements.river.client.client.ui.sinfo.FlowDepthTwinPanel;
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
30 import org.dive4elements.river.client.client.ui.sq.SQPeriodPanel;
9256
6c24c857ccf9 fixation refactoring and inputItem behaviour to interfaces
gernotbelger
parents: 9250
diff changeset
31 import org.dive4elements.river.client.client.ui.uinfo.Limit5SalixBehaviour;
9066
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9064
diff changeset
32 import org.dive4elements.river.client.client.ui.uinfo.LoadSedimentHeightPanel;
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 9062
diff changeset
33 import org.dive4elements.river.client.client.ui.uinfo.LoadSingleYearPanel;
9248
9e6b70cce337 pseudo epoch for salix.historical
gernotbelger
parents: 9246
diff changeset
34 import org.dive4elements.river.client.client.ui.uinfo.LoadSingleYearPseudoEpochPanel;
9256
6c24c857ccf9 fixation refactoring and inputItem behaviour to interfaces
gernotbelger
parents: 9250
diff changeset
35 import org.dive4elements.river.client.client.ui.uinfo.SingleBehaviour;
9237
972e10522ed6 salix.supraregional ui
gernotbelger
parents: 9224
diff changeset
36 import org.dive4elements.river.client.client.ui.uinfo.SupraRegionalTablePanel;
9066
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9064
diff changeset
37 import org.dive4elements.river.client.client.ui.uinfo.VegetationzonesTableEditPanel;
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9064
diff changeset
38 import org.dive4elements.river.client.client.ui.uinfo.VegetationzonesTablePanel;
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
39 import org.dive4elements.river.client.shared.model.User;
1612
66671b69c7ea Added new UIProvider to enter mutliple locations (yet only input view textfield possible).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1602
diff changeset
40
9133
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
41 import com.google.gwt.core.client.GWT;
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
42
1612
66671b69c7ea Added new UIProvider to enter mutliple locations (yet only input view textfield possible).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1602
diff changeset
43 /**
66671b69c7ea Added new UIProvider to enter mutliple locations (yet only input view textfield possible).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1602
diff changeset
44 * Depending on the provider the state declared, return a UIProvider.
66671b69c7ea Added new UIProvider to enter mutliple locations (yet only input view textfield possible).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1602
diff changeset
45 *
66671b69c7ea Added new UIProvider to enter mutliple locations (yet only input view textfield possible).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1602
diff changeset
46 * A UIProvider provides widgets and input helpers to guide input to an
66671b69c7ea Added new UIProvider to enter mutliple locations (yet only input view textfield possible).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1602
diff changeset
47 * artifacts state.
66671b69c7ea Added new UIProvider to enter mutliple locations (yet only input view textfield possible).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1602
diff changeset
48 */
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
49 public class UIProviderFactory {
9133
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
50 private static FLYSConstants MSG;
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
51
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
52 private UIProviderFactory() {
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
53 }
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
54
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
55 /**
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
56 * @param uiProvider
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
57 * uiprovider demanded for by state.
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
58 */
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
59 public static UIProvider getProvider(final String uiProvider, final User user) {
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
60 if (uiProvider == null || uiProvider.equals("")) {
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
61 return new SelectProvider();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
62 } else if (uiProvider.equals("select_with_map")) {
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63 return new MapSelection();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
64 } else if (uiProvider.equals("location_distance_panel")) {
41
87a44f8e25cc Added a new widget that enables the user to enter a location or a distance in a single step.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 20
diff changeset
65 return new LocationDistancePanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
66 } else if (uiProvider.equals("location_panel")) {
238
234c78a91c15 Added new UI provider for single location selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 44
diff changeset
67 return new SingleLocationPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
68 } else if (uiProvider.equals("multi_location_panel")) {
1612
66671b69c7ea Added new UIProvider to enter mutliple locations (yet only input view textfield possible).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 1602
diff changeset
69 return new MultipleLocationPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
70 } else if (uiProvider.equals("distance_panel")) {
780
a39c2f531755 Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 282
diff changeset
71 return new DistancePanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
72 } else if (uiProvider.equals("distance_only_panel")) {
1265
f98bd9b5cedd #315 Added a new UIProvider for range selection in floodmaps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 901
diff changeset
73 return new DistanceOnlyPanel();
9062
5198066492a9 Teilabschnitt Salix State
gernotbelger
parents: 9053
diff changeset
74 } else if (uiProvider.equals("distance_only_part_panel")) {
5198066492a9 Teilabschnitt Salix State
gernotbelger
parents: 9053
diff changeset
75 return new DistanceOnlyPartPanel();
9246
c08d5cfa4981 some hibernate queries on bedheigts for salix
gernotbelger
parents: 9237
diff changeset
76 } else if (uiProvider.equals("distance_only_part_historical_panel")) {
c08d5cfa4981 some hibernate queries on bedheigts for salix
gernotbelger
parents: 9237
diff changeset
77 return new DistanceOnlyPartHistoricalPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
78 } else if (uiProvider.equals("waterlevel_ground_panel")) {
787
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 785
diff changeset
79 return new WaterlevelGroundPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
80 } else if (uiProvider.equals("wq_panel")) {
44
3853210f2d18 Enhanced the UIProviderFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 41
diff changeset
81 return new WQInputPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
82 } else if (uiProvider.equals("wq_panel_adapted")) {
243
11c5bcd349b1 Added a stub implementation of a WQ panel for discharge longitudinal section computations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 238
diff changeset
83 return new WQAdaptedInputPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
84 } else if (uiProvider.equals("wq_panel_adapted_fixing")) {
6060
0a200ba54461 Fix WQ input validation for fixing analysis
Andre Heinecke <aheinecke@intevation.de>
parents: 5993
diff changeset
85 return new WQAdaptedFixingInputPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
86 } else if (uiProvider.equals("q_segmented_panel")) {
4120
062cb6605653 Register new ui provider.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4061
diff changeset
87 return new QSegmentedInputPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
88 } else if (uiProvider.equals("river_panel")) {
282
e92f7ef455d6 Show rivers as links instead of a combobox.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 243
diff changeset
89 return new LinkSelection();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
90 } else if (uiProvider.equals("continue")) {
785
3ae0facd4cab Added a panel that lets users step to a next state without feeding the current artifact with new data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 780
diff changeset
91 return new ContinuePanel();
9066
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9064
diff changeset
92 } else if (uiProvider.equals("uinfo.vegetationzones.table.edit")) {
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9064
diff changeset
93 return new VegetationzonesTableEditPanel();
9064
28c50f5efceb work on uinfo-vegetation-zones table
gernotbelger
parents: 9063
diff changeset
94 } else if (uiProvider.equals("uinfo.vegetationzones.table")) {
9066
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9064
diff changeset
95 return new VegetationzonesTablePanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
96 } else if (uiProvider.equals("wsp_datacage_panel")) {
901
3ef7205b814e Added stubs for two datacage panels - one for choosing waterlevels, one for choosing DEMs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 867
diff changeset
97 return new WspDatacagePanel(user);
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
98 } else if (uiProvider.equals("dgm_datacage_panel")) {
901
3ef7205b814e Added stubs for two datacage panels - one for choosing waterlevels, one for choosing DEMs.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 867
diff changeset
99 return new DemDatacagePanel(user);
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
100 } else if (uiProvider.equals("waterlevel_twin_panel")) {
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents: 8791
diff changeset
101 return new WaterlevelTwinPanel(user);
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
102 } else if (uiProvider.equals("auto_integer")) {
787
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 785
diff changeset
103 return new AutoIntegerPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
104 } else if (uiProvider.equals("boolean_panel")) {
787
4e0b73b7113b Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 785
diff changeset
105 return new BooleanPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
106 } else if (uiProvider.equals("noinput")) {
824
3fe265b47675 Added a NoInputPanel to suppress the creation of an input panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 787
diff changeset
107 return new NoInputPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
108 } else if (uiProvider.equals("map_digitize")) {
833
dcecdd9693a8 Added a UIProvider that displays a combobox on the left and a map widget in the helper container.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 824
diff changeset
109 return new DigitizePanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
110 } else if (uiProvider.equals("timerange")) {
1524
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
111 return new IntegerRangePanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
112 } else if (uiProvider.equals("wq_simple_array")) {
1528
ff41405a891d Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1524
diff changeset
113 return new WQSimpleArrayPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
114 } else if (uiProvider.equals("gaugetimerange")) {
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1528
diff changeset
115 return new GaugeTimeRangePanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
116 } else if (uiProvider.equals("fix.location_panel")) {
2505
87ac5c532523 First part of the UI for fixing analysis parameter.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1612
diff changeset
117 return new FixLocationPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
118 } else if (uiProvider.equals("fix.period_panel")) {
2505
87ac5c532523 First part of the UI for fixing analysis parameter.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1612
diff changeset
119 return new FixPeriodPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
120 } else if (uiProvider.equals("fix.period_ref_panel")) {
2538
c7da05282644 FixPeriodPanel: Make the names of state parameters configurable by constructor.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2526
diff changeset
121 return new FixPeriodPanel("ref_start", "ref_end");
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
122 } else if (uiProvider.equals("fix.period_ana_panel")) {
2883
c3feb721035c Added ui provider for multiple date range input in fix analysis.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2538
diff changeset
123 return new FixMultiPeriodPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
124 } else if (uiProvider.equals("fix.qselect_panel")) {
3365
1f4ce71cb6c4 Register upcoming FixQSelectPanel UI-Provider, added omitted ChangeLog entries.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3358
diff changeset
125 return new FixQSelectPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
126 } else if (uiProvider.equals("fix.gaugeselect_panel")) {
2505
87ac5c532523 First part of the UI for fixing analysis parameter.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1612
diff changeset
127 return new FixGaugeSelectPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
128 } else if (uiProvider.equals("fix.event_panel")) {
2505
87ac5c532523 First part of the UI for fixing analysis parameter.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1612
diff changeset
129 return new FixEventSelect();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
130 } else if (uiProvider.equals("fix.preprocessing_panel")) {
2526
a911e2968cb1 Changed some data types in states and filter and added new preprocessing state
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2521
diff changeset
131 return new BooleanPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
132 } else if (uiProvider.equals("fix.functionselect")) {
3358
65b71ddc7716 Show the overview and chart in function select state in fix analysis helper
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3351
diff changeset
133 return new FixFunctionSelect();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
134 } else if (uiProvider.equals("period_select")) {
3372
cb84e717e54d Added a new UI provider that allows the input of a single time period (without any helper panel).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3365
diff changeset
135 return new PeriodPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
136 } else if (uiProvider.equals("periods_select")) {
3527
6ededa5aa803 MINFO: Added new UI provider for bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3508
diff changeset
137 return new MultiPeriodPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
138 } else if (uiProvider.equals("sq.period.select")) {
3373
86e69788c946 Added a new UIProvider that allows the input of a time period; the helper panel displays the field campaigns of MINFO's SQ relation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3372
diff changeset
139 return new SQPeriodPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
140 } else if (uiProvider.equals("outliers_input")) {
2898
242b5c230707 Added UI for S-Q-relation parameters in minfo module.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2883
diff changeset
141 return new DoubleInputPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
142 } else if (uiProvider.equals("percent_input")) {
4280
a27e68562f2a Let percent_input be DoubleInputPanal UI-Provider that inputs data named 'percent'.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4224
diff changeset
143 return new DoubleInputPanel("percent");
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
144 } else if (uiProvider.equals("parameter-matrix")) {
2521
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2505
diff changeset
145 return new ParameterMatrixPanel();
9076
22d8928895a1 dynamic input table epochSelect
gernotbelger
parents: 9074
diff changeset
146 } else if (uiProvider.equals("minfo.bed.year_epoch")) {// legacy
22d8928895a1 dynamic input table epochSelect
gernotbelger
parents: 9074
diff changeset
147 return new RadioPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
148 } else if (uiProvider.equals("radio_panel")) {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
149 return new RadioPanel();
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
150 } else if (uiProvider.equals("bedquality_periods_select")) {
3705
f84ed73311f2 Added UI for minfo bed quality calculation and added new services for overview
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3535
diff changeset
151 return new BedMultiPeriodPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
152 } else if (uiProvider.equals("bedheights_twin_panel")) {
3508
60984be9bcfa MINFO: Added UI for minfo differences calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3373
diff changeset
153 return new BedHeightsDatacagePanel(user);
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
154 } else if (uiProvider.equals("minfo.bed.char_diameter")) {
3527
6ededa5aa803 MINFO: Added new UI provider for bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3508
diff changeset
155 return new CheckboxPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
156 } else if (uiProvider.equals("minfo.sedimentload_unit_select")) {
4224
8b5133444bcc Added UI provider for sediment load parameter input in provider factory.
Raimund Renkert <rrenkert@intevation.de>
parents: 4160
diff changeset
157 return new RadioPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
158 } else if (uiProvider.equals("static_data")) {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
159 return new StaticDataPanel();
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
160 } else if (uiProvider.equals("minfo.sedimentload_distance_select")) {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
161 return new SedLoadDistancePanel();
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
162 } else if (uiProvider.equals("minfo.sedimentload_year_select")) {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
163 return new SedLoadPeriodPanel();
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
164 } else if (uiProvider.equals("minfo.sedimentload_epoch_select")) {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
165 return new SedLoadEpochPanel();
9074
766890addcb2 state To client communication;
gernotbelger
parents: 9073
diff changeset
166 } else if (uiProvider.equals("sinfo.collision.load_year_select")) {
766890addcb2 state To client communication;
gernotbelger
parents: 9073
diff changeset
167 return new CollisionLoadYearPanel();
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 9062
diff changeset
168 } else if (uiProvider.equals("sinfo.collision.load_epoch_select")) {
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 9062
diff changeset
169 return new CollisionLoadEpochPanel();
9073
cd650cacc926 work on bundu.bezugswst states
gernotbelger
parents: 9066
diff changeset
170 } else if (uiProvider.equals("common.state.load_single_year_select")) {
9063
b6919e3c2d86 work on uinfo-inundation_duration states
gernotbelger
parents: 9062
diff changeset
171 return new LoadSingleYearPanel();
9250
b64cf2f5f719 bundu showHint "JJJJ"
gernotbelger
parents: 9248
diff changeset
172 } else if (uiProvider.equals("common.state.load_single_year_select.show_hint")) {
b64cf2f5f719 bundu showHint "JJJJ"
gernotbelger
parents: 9248
diff changeset
173 return new LoadSingleYearPanel(true);
9248
9e6b70cce337 pseudo epoch for salix.historical
gernotbelger
parents: 9246
diff changeset
174 } else if (uiProvider.equals("uinfo.salix.load_single_year_pseudo_epoch_select")) {
9e6b70cce337 pseudo epoch for salix.historical
gernotbelger
parents: 9246
diff changeset
175 return new LoadSingleYearPseudoEpochPanel();
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
176 } else if (uiProvider.equals("minfo.sedimentload_sqti_select")) {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
177 return new SedLoadSQTiPanel();
9066
b5d7a9d79837 uinfo.inundation_duration ui
gernotbelger
parents: 9064
diff changeset
178 } else if (uiProvider.equals("uinfo.sedimentheight_select")) {
9256
6c24c857ccf9 fixation refactoring and inputItem behaviour to interfaces
gernotbelger
parents: 9250
diff changeset
179 return new LoadSedimentHeightPanel(new SingleBehaviour());// Type.single);
9222
5a0e8d76582e uinfo.salix regional workflow
gernotbelger
parents: 9133
diff changeset
180 } else if (uiProvider.equals("uinfo.sedimentheight_select.limit5")) {
9256
6c24c857ccf9 fixation refactoring and inputItem behaviour to interfaces
gernotbelger
parents: 9250
diff changeset
181 return new LoadSedimentHeightPanel(new Limit5SalixBehaviour());
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
182 } else if (uiProvider.equals("hws_datacage_panel")) {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
183 return new HWSDatacagePanel(user);
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
184 } else if (uiProvider.equals("user_rgd_panel")) {
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
185 return new UserRGDProvider();
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
186 } else if (uiProvider.equals("static_sqrelation")) {
5503
b660090b417d Create a new sq relation project on measurement station record click.
Raimund Renkert <rrenkert@intevation.de>
parents: 5312
diff changeset
187 return new StaticDataPanel();
9237
972e10522ed6 salix.supraregional ui
gernotbelger
parents: 9224
diff changeset
188 } else if (uiProvider.equals("uinfo.salix.supraregional.table")) {
972e10522ed6 salix.supraregional ui
gernotbelger
parents: 9224
diff changeset
189 return new SupraRegionalTablePanel();
4160
bbc49d9450c8 Add a new panel to show settings of a gauge discharge curve
Björn Ricks <bjoern.ricks@intevation.de>
parents: 4120
diff changeset
190 }
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
191
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents: 8791
diff changeset
192 if ("sinfo_flowdepth_twin_panel".equals(uiProvider))
9133
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
193 return new FlowDepthTwinPanel(user, 1, getMSG().sinfo_flow_depth_development_twin_panel_max_count_msg());
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents: 8791
diff changeset
194
8993
0adc6d04de95 SInfo - FlowDepthMinMax: choosing bed heights, not bed height min and max separately
gernotbelger
parents: 8854
diff changeset
195 if ("sinfo_flowdepthminmax_twin_panel".equals(uiProvider))
0adc6d04de95 SInfo - FlowDepthMinMax: choosing bed heights, not bed height min and max separately
gernotbelger
parents: 8854
diff changeset
196 return new FlowDepthMinMaxTwinPanel(user);
9053
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
197
ad2ae847e10e - RadioButton-Auswahl generisch
gernotbelger
parents: 8993
diff changeset
198 // GWT.log("Picked default provider.");
8854
7bbfb24e6eec SINFO - first prototype of BArt Fließtiefen
gernotbelger
parents: 8791
diff changeset
199 return new SelectProvider();
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
200 }
9133
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
201
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
202 private static FLYSConstants getMSG() {
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
203 if (MSG == null) {
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
204 MSG = GWT.create(FLYSConstants.class);
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
205 }
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
206 return MSG;
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
207 }
af73fdd96920 Title current/historical diff pair; limit on entries in diff'pair twin_panel
gernotbelger
parents: 9079
diff changeset
208
20
c128d675386b Added UIProviders that are used to create widgets for entering data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
209 }
3351
24e9b5eb83f8 Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2953
diff changeset
210 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org