Subversion Repositories eFlore/Applications.del

Rev

Rev 455 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
161 gduche 1
package org.tela_botanica.del.client.vues.rechercheobservations;
2
 
330 gduche 3
import org.tela_botanica.del.client.composants.moteurrecherche.MoteurRecherchePresenteur;
4
import org.tela_botanica.del.client.composants.moteurrecherche.MoteurRechercheVue;
161 gduche 5
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
453 aurelien 6
import org.tela_botanica.del.client.modeles.ModeRecherche;
392 aurelien 7
import org.tela_botanica.del.client.services.rest.ObservationService;
445 benjamin 8
import org.tela_botanica.del.client.services.rest.ObservationServiceConcret;
9
import org.tela_botanica.del.client.vues.rechercheobservations.resultats.ResultatsRechercheObservationsPresenteur;
10
import org.tela_botanica.del.client.vues.rechercheobservations.resultats.ResultatsRechercheObservationsVue;
161 gduche 11
 
12
import com.google.gwt.user.client.ui.HasWidgets;
309 aurelien 13
import com.google.gwt.user.client.ui.IsWidget;
161 gduche 14
 
15
public class RechercheObservationsPresenteur extends Presenteur {
436 benjamin 16
 
309 aurelien 17
	public abstract interface Vue extends IsWidget {
330 gduche 18
		public HasWidgets getZoneRecherche();
436 benjamin 19
 
445 benjamin 20
		public HasWidgets getZoneResultats();
455 benjamin 21
 
309 aurelien 22
	}
335 benjamin 23
 
309 aurelien 24
	private Vue vue;
436 benjamin 25
 
392 aurelien 26
	public RechercheObservationsPresenteur(ObservationService serviceObs, Vue vue) {
436 benjamin 27
 
309 aurelien 28
		this.vue = vue;
161 gduche 29
	}
30
 
31
	public void go(HasWidgets composite) {
436 benjamin 32
 
309 aurelien 33
		composite.add(vue.asWidget());
330 gduche 34
		ajouterMoteurRechercheAvancee();
455 benjamin 35
		gererEvenements();
161 gduche 36
	}
335 benjamin 37
 
330 gduche 38
	protected void ajouterMoteurRechercheAvancee() {
406 gduche 39
		MoteurRecherchePresenteur presenteur = new MoteurRecherchePresenteur(new MoteurRechercheVue("") {
453 aurelien 40
		}, ModeRecherche.MODE_OBSERVATION) {
335 benjamin 41
 
330 gduche 42
			@Override
335 benjamin 43
			public void lancerRecherche() {
445 benjamin 44
				chercherObservations();
161 gduche 45
			}
330 gduche 46
		};
47
		presenteur.go(vue.getZoneRecherche());
161 gduche 48
	}
49
 
445 benjamin 50
	public void chercherObservations() {
51
		vue.getZoneResultats().clear();
52
		new ResultatsRechercheObservationsPresenteur(new ObservationServiceConcret(), new ResultatsRechercheObservationsVue()).go(vue.getZoneResultats());
166 gduche 53
	}
161 gduche 54
 
445 benjamin 55
	protected void gererEvenements() {
455 benjamin 56
 
359 benjamin 57
	}
335 benjamin 58
 
161 gduche 59
}