Subversion Repositories eFlore/Applications.del

Rev

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