Subversion Repositories eFlore/Applications.del

Rev

Rev 560 | Rev 570 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 560 Rev 564
1
package org.tela_botanica.del.client.composants.metadonnees;
1
package org.tela_botanica.del.client.composants.metadonnees;
2
 
2
 
3
import org.tela_botanica.del.client.cache.CacheClient;
3
import org.tela_botanica.del.client.cache.CacheClient;
4
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
4
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
5
import org.tela_botanica.del.client.modeles.InformationsRecherche;
5
import org.tela_botanica.del.client.modeles.InformationsRecherche;
6
import org.tela_botanica.del.client.modeles.ModeRecherche;
6
import org.tela_botanica.del.client.modeles.ModeRecherche;
7
import org.tela_botanica.del.client.modeles.Observation;
7
import org.tela_botanica.del.client.modeles.Observation;
8
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
8
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
9
import org.tela_botanica.del.client.navigation.evenement.detailsimage.EvenementRechercheImage;
9
import org.tela_botanica.del.client.navigation.evenement.detailsimage.EvenementRechercheImage;
10
import org.tela_botanica.del.client.navigation.evenement.rechercheobservation.EvenementRechercheObservation;
10
import org.tela_botanica.del.client.navigation.evenement.rechercheobservation.EvenementRechercheObservation;
11
 
11
 
12
import com.google.gwt.event.dom.client.ClickEvent;
12
import com.google.gwt.event.dom.client.ClickEvent;
13
import com.google.gwt.event.dom.client.ClickHandler;
13
import com.google.gwt.event.dom.client.ClickHandler;
14
import com.google.gwt.event.dom.client.HasClickHandlers;
14
import com.google.gwt.event.dom.client.HasClickHandlers;
15
import com.google.gwt.user.client.ui.HasText;
15
import com.google.gwt.user.client.ui.HasText;
16
import com.google.gwt.user.client.ui.HasWidgets;
16
import com.google.gwt.user.client.ui.HasWidgets;
17
import com.google.gwt.user.client.ui.IsWidget;
17
import com.google.gwt.user.client.ui.IsWidget;
18
 
18
 
19
public class MetadonneesPresenteur extends Presenteur {
19
public class MetadonneesPresenteur extends Presenteur {
20
 
20
 
21
	public abstract interface Vue extends IsWidget {
21
	public abstract interface Vue extends IsWidget {
22
		public HasText getNomRetenu();
22
		public HasText getNomRetenu();
23
 
23
 
24
		public HasClickHandlers getLienNomRetenu();
24
		public HasClickHandlers getLienNomRetenu();
25
 
25
 
26
		public HasText getNomCommun();
26
		public HasText getNomCommun();
27
 
27
 
28
		public HasText getFamille();
28
		public HasText getFamille();
29
 
29
 
30
		public HasText getLocalite();
30
		public HasText getLocalite();
31
 
31
 
32
		public HasText getLieuDit();
32
		public HasText getLieuDit();
33
 
33
 
34
		public HasText getMilieu();
34
		public HasText getMilieu();
35
 
35
 
36
		public HasText getCommentaire();
36
		public HasText getCommentaire();
37
 
37
 
38
		public HasText getAuteur();
38
		public HasText getAuteur();
39
 
39
 
40
		public HasText getDateTransmission();
40
		public HasText getDateTransmission();
41
 
41
 
42
		public HasText getMotsClefs();
42
		public HasText getMotsClefs();
43
 
43
 
44
		public HasText getNumNomenclatural();
44
		public HasText getNumNomenclatural();
45
 
45
 
46
		public HasText getDateReleve();
46
		public HasText getDateReleve();
47
 
47
 
48
		public HasClickHandlers getLienFamille();
48
		public HasClickHandlers getLienFamille();
49
 
49
 
50
		public HasClickHandlers getLienAuteur();
50
		public HasClickHandlers getLienAuteur();
51
 
51
 
52
		public HasClickHandlers getLienDateTransmission();
52
		public HasClickHandlers getLienDateTransmission();
53
 
53
 
54
		public HasClickHandlers getLienDateReleve();
54
		public HasClickHandlers getLienDateReleve();
55
 
55
 
56
		public HasClickHandlers getLienLocalite();
56
		public HasClickHandlers getLienLocalite();
57
 
57
 
58
		public HasClickHandlers getLienMotsClefs();
58
		public HasClickHandlers getLienMotsClefs();
59
 
59
 
60
		public HasClickHandlers getLienNumNomenclatural();
60
		public HasClickHandlers getLienNumNomenclatural();
61
 
61
 
62
		public HasClickHandlers getLienNomCommun();
62
		public HasClickHandlers getLienNomCommun();
63
 
-
 
64
		public HasClickHandlers getLienLieuDit();
-
 
65
 
63
 
66
		public HasClickHandlers getLienMilieu();
64
		public HasClickHandlers getLienMilieu();
67
 
65
 
68
		public HasClickHandlers getLienCommentaire();
66
		public HasClickHandlers getLienCommentaire();
69
	}
67
	}
70
 
68
 
71
	private Vue vue;
69
	private Vue vue;
72
	private Observation observation;
70
	private Observation observation;
73
	private ModeRecherche modeRecherche;
71
	private ModeRecherche modeRecherche;
74
 
72
 
75
	public MetadonneesPresenteur(Vue vue, Observation observation, ModeRecherche modeRecherche) {
73
	public MetadonneesPresenteur(Vue vue, Observation observation, ModeRecherche modeRecherche) {
76
		this.vue = vue;
74
		this.vue = vue;
77
		this.modeRecherche = modeRecherche;
75
		this.modeRecherche = modeRecherche;
78
		setObservation(observation);
76
		setObservation(observation);
79
	}
77
	}
80
 
78
 
81
	public void setObservation(Observation observation) {
79
	public void setObservation(Observation observation) {
82
		this.observation = observation;
80
		this.observation = observation;
83
	}
81
	}
84
 
82
 
85
	public void chargerMetaDonnees() {
83
	public void chargerMetaDonnees() {
86
		vue.getNomRetenu().setText(observation.getNomRetenu());
84
		vue.getNomRetenu().setText(observation.getNomRetenu());
87
		vue.getNomCommun().setText(observation.getNomCommun());
85
		vue.getNomCommun().setText(observation.getNomCommun());
88
		vue.getFamille().setText(observation.getFamille());
86
		vue.getFamille().setText(observation.getFamille());
89
		vue.getLocalite().setText(observation.getLocaliteAvecIdFormatee());
87
		vue.getLocalite().setText(observation.getLocaliteAvecIdFormatee());
90
		vue.getLieuDit().setText(observation.getLieuDit());
88
		vue.getLieuDit().setText(observation.getLieuDit());
91
		vue.getMilieu().setText(observation.getMilieu());
89
		vue.getMilieu().setText(observation.getMilieu());
92
		vue.getCommentaire().setText(observation.getCommentaire());
90
		vue.getCommentaire().setText(observation.getCommentaire());
93
		vue.getAuteur().setText(observation.getAuteur());
91
		vue.getAuteur().setText(observation.getAuteur());
94
		vue.getDateTransmission().setText(observation.getDateTransmission());
92
		vue.getDateTransmission().setText(observation.getDateTransmission());
95
		vue.getDateReleve().setText(observation.getDateReleve());
93
		vue.getDateReleve().setText(observation.getDateReleve());
96
	}
94
	}
97
 
95
 
98
	@Override
96
	@Override
99
	public void go(HasWidgets composite) {
97
	public void go(HasWidgets composite) {
100
		composite.add(vue.asWidget());
98
		composite.add(vue.asWidget());
101
		chargerMetaDonnees();
99
		chargerMetaDonnees();
102
		gererEvenements();
100
		gererEvenements();
103
	}
101
	}
104
 
102
 
105
	@Override
103
	@Override
106
	protected void gererEvenements() {
104
	protected void gererEvenements() {
107
 
105
 
108
		vue.getLienAuteur().addClickHandler(new ClickHandler() {
106
		vue.getLienAuteur().addClickHandler(new ClickHandler() {
109
 
107
 
110
			@Override
108
			@Override
111
			public void onClick(ClickEvent arg0) {
109
			public void onClick(ClickEvent arg0) {
112
				InformationsRecherche informationsRecherche = new InformationsRecherche();
110
				InformationsRecherche informationsRecherche = new InformationsRecherche();
113
				informationsRecherche.setAuteur(vue.getAuteur().getText());
111
				informationsRecherche.setAuteur(vue.getAuteur().getText());
114
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
112
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
115
			}
113
			}
116
		});
114
		});
117
 
115
 
118
		vue.getLienDateReleve().addClickHandler(new ClickHandler() {
116
		vue.getLienDateReleve().addClickHandler(new ClickHandler() {
119
 
117
 
120
			@Override
118
			@Override
121
			public void onClick(ClickEvent arg0) {
119
			public void onClick(ClickEvent arg0) {
122
				InformationsRecherche informationsRecherche = new InformationsRecherche();
120
				InformationsRecherche informationsRecherche = new InformationsRecherche();
123
				informationsRecherche.setDate(vue.getDateReleve().getText());
121
				informationsRecherche.setDate(vue.getDateReleve().getText());
124
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
122
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
125
			}
123
			}
126
		});
124
		});
127
 
125
 
128
		vue.getLienDateTransmission().addClickHandler(new ClickHandler() {
126
		vue.getLienDateTransmission().addClickHandler(new ClickHandler() {
129
 
127
 
130
			@Override
128
			@Override
131
			public void onClick(ClickEvent arg0) {
129
			public void onClick(ClickEvent arg0) {
132
				InformationsRecherche informationsRecherche = new InformationsRecherche();
130
				InformationsRecherche informationsRecherche = new InformationsRecherche();
133
				informationsRecherche.setDate(vue.getDateReleve().getText());
131
				informationsRecherche.setDate(vue.getDateReleve().getText());
134
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
132
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
135
			}
133
			}
136
		});
134
		});
137
 
135
 
138
		vue.getLienFamille().addClickHandler(new ClickHandler() {
136
		vue.getLienFamille().addClickHandler(new ClickHandler() {
139
 
137
 
140
			@Override
138
			@Override
141
			public void onClick(ClickEvent arg0) {
139
			public void onClick(ClickEvent arg0) {
142
				InformationsRecherche informationsRecherche = new InformationsRecherche();
140
				InformationsRecherche informationsRecherche = new InformationsRecherche();
143
				informationsRecherche.setFamille(vue.getFamille().getText());
141
				informationsRecherche.setFamille(vue.getFamille().getText());
144
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
142
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
145
			}
143
			}
146
		});
144
		});
147
 
145
 
148
		vue.getLienLocalite().addClickHandler(new ClickHandler() {
146
		vue.getLienLocalite().addClickHandler(new ClickHandler() {
149
 
147
 
150
			@Override
148
			@Override
151
			public void onClick(ClickEvent arg0) {
149
			public void onClick(ClickEvent arg0) {
152
				InformationsRecherche informationsRecherche = new InformationsRecherche();
150
				InformationsRecherche informationsRecherche = new InformationsRecherche();
153
				informationsRecherche.setCommune(vue.getLocalite().getText());
151
				informationsRecherche.setCommune(vue.getLocalite().getText());
154
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
152
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
155
			}
153
			}
156
		});
154
		});
157
 
155
 
158
		vue.getLienMotsClefs().addClickHandler(new ClickHandler() {
156
		vue.getLienMotsClefs().addClickHandler(new ClickHandler() {
159
 
157
 
160
			@Override
158
			@Override
161
			public void onClick(ClickEvent arg0) {
159
			public void onClick(ClickEvent arg0) {
162
				InformationsRecherche informationsRecherche = new InformationsRecherche();
160
				InformationsRecherche informationsRecherche = new InformationsRecherche();
163
				informationsRecherche.setMotClef(vue.getMotsClefs().getText());
161
				informationsRecherche.setMotClef(vue.getMotsClefs().getText());
164
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
162
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
165
			}
163
			}
166
		});
164
		});
167
 
165
 
168
		vue.getLienNomCommun().addClickHandler(new ClickHandler() {
166
		vue.getLienNomCommun().addClickHandler(new ClickHandler() {
169
 
167
 
170
			@Override
168
			@Override
171
			public void onClick(ClickEvent arg0) {
169
			public void onClick(ClickEvent arg0) {
172
				InformationsRecherche informationsRecherche = new InformationsRecherche();
170
				InformationsRecherche informationsRecherche = new InformationsRecherche();
173
				informationsRecherche.setRechercheLibre(vue.getNomCommun().getText());
171
				informationsRecherche.setRechercheLibre(vue.getNomCommun().getText());
174
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
172
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
175
			}
173
			}
176
		});
174
		});
177
 
175
 
178
		vue.getLienNomRetenu().addClickHandler(new ClickHandler() {
176
		vue.getLienNomRetenu().addClickHandler(new ClickHandler() {
179
 
177
 
180
			@Override
178
			@Override
181
			public void onClick(ClickEvent arg0) {
179
			public void onClick(ClickEvent arg0) {
182
				InformationsRecherche informationsRecherche = new InformationsRecherche();
180
				InformationsRecherche informationsRecherche = new InformationsRecherche();
183
				informationsRecherche.setRechercheLibre(vue.getNomRetenu().getText());
181
				informationsRecherche.setRechercheLibre(vue.getNomRetenu().getText());
184
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
182
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
185
			}
183
			}
186
		});
184
		});
187
 
185
 
188
		vue.getLienMilieu().addClickHandler(new ClickHandler() {
186
		vue.getLienMilieu().addClickHandler(new ClickHandler() {
189
 
187
 
190
			@Override
188
			@Override
191
			public void onClick(ClickEvent arg0) {
189
			public void onClick(ClickEvent arg0) {
192
				InformationsRecherche informationsRecherche = new InformationsRecherche();
190
				InformationsRecherche informationsRecherche = new InformationsRecherche();
193
				informationsRecherche.setRechercheLibre(vue.getMilieu().getText());
191
				informationsRecherche.setRechercheLibre(vue.getMilieu().getText());
194
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
192
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
195
			}
193
			}
196
		});
194
		});
197
 
195
 
198
		vue.getLienCommentaire().addClickHandler(new ClickHandler() {
196
		vue.getLienCommentaire().addClickHandler(new ClickHandler() {
199
 
197
 
200
			@Override
198
			@Override
201
			public void onClick(ClickEvent arg0) {
199
			public void onClick(ClickEvent arg0) {
202
				InformationsRecherche informationsRecherche = new InformationsRecherche();
200
				InformationsRecherche informationsRecherche = new InformationsRecherche();
203
				informationsRecherche.setRechercheLibre(vue.getCommentaire().getText());
201
				informationsRecherche.setRechercheLibre(vue.getCommentaire().getText());
204
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
202
				setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche);
205
			}
203
			}
206
		});
204
		});
207
 
205
 
208
	}
206
	}
209
 
207
 
210
	public void setInfosRechercheEnCacheEtLancerEvenement(InformationsRecherche informationsRecherche) {
208
	public void setInfosRechercheEnCacheEtLancerEvenement(InformationsRecherche informationsRecherche) {
211
 
209
 
212
		switch (modeRecherche) {
210
		switch (modeRecherche) {
213
		case MODE_IMAGE:
211
		case MODE_IMAGE:
214
			CacheClient.getInstance().setPageCouranteRechercheImages(1);
212
			CacheClient.getInstance().setPageCouranteRechercheImages(1);
215
			CacheClient.getInstance().setInformationsRechercheImage(informationsRecherche);
213
			CacheClient.getInstance().setInformationsRechercheImage(informationsRecherche);
216
			BusEvenementiel.getInstance().fireEvent(new EvenementRechercheImage());
214
			BusEvenementiel.getInstance().fireEvent(new EvenementRechercheImage());
217
			break;
215
			break;
218
 
216
 
219
		case MODE_OBSERVATION:
217
		case MODE_OBSERVATION:
220
			CacheClient.getInstance().setPageCouranteRechercheObservations(1);
218
			CacheClient.getInstance().setPageCouranteRechercheObservations(1);
221
			CacheClient.getInstance().setInformationsRechercheObservation(informationsRecherche);
219
			CacheClient.getInstance().setInformationsRechercheObservation(informationsRecherche);
222
			BusEvenementiel.getInstance().fireEvent(new EvenementRechercheObservation());
220
			BusEvenementiel.getInstance().fireEvent(new EvenementRechercheObservation());
223
 
221
 
224
		default:
222
		default:
225
			break;
223
			break;
226
		}
224
		}
227
 
225
 
228
	}
226
	}
229
}
227
}