Subversion Repositories eFlore/Applications.del

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
21 aurelien 1
package org.tela_botanica.del.client.gestionhistorique;
2
 
1092 gduche 3
import org.tela_botanica.del.client.cache.CacheClient;
1183 gduche 4
import org.tela_botanica.del.client.composants.formulaires.identification.FormulaireIdentificationPresenteur;
5
import org.tela_botanica.del.client.composants.formulaires.identification.FormulaireIdentificationVue;
347 aurelien 6
import org.tela_botanica.del.client.services.rest.ImageServiceConcret;
392 aurelien 7
import org.tela_botanica.del.client.services.rest.ObservationServiceConcret;
959 benjamin 8
import org.tela_botanica.del.client.services.rest.ProtocoleServiceConcret;
1183 gduche 9
import org.tela_botanica.del.client.services.rest.UtilisateurServiceConcret;
73 benjamin 10
import org.tela_botanica.del.client.vues.comparaisoneflore.ComparaisonEflorePresenteur;
285 benjamin 11
import org.tela_botanica.del.client.vues.comparaisoneflore.ComparaisonEfloreVue;
1206 gduche 12
import org.tela_botanica.del.client.vues.entete.EntetePresenteur;
13
import org.tela_botanica.del.client.vues.entete.EnteteVue;
1196 gduche 14
import org.tela_botanica.del.client.vues.identiplante.moteur.MoteurIdentiplantePresenteur;
15
import org.tela_botanica.del.client.vues.identiplante.moteur.MoteurIdentiplanteVue;
16
import org.tela_botanica.del.client.vues.identiplante.plateformedetermination.IdentiplanteDeterminationPresenteur;
17
import org.tela_botanica.del.client.vues.identiplante.plateformedetermination.IdentiplanteDeterminationVue;
18
import org.tela_botanica.del.client.vues.pictoflora.moteur.MoteurPictofloraPresenteur;
19
import org.tela_botanica.del.client.vues.pictoflora.moteur.MoteurPictofloraVue;
20
import org.tela_botanica.del.client.vues.pictoflora.plateformedetermination.PictofloraDeterminationPresenteur;
21
import org.tela_botanica.del.client.vues.pictoflora.plateformedetermination.PictofloraDeterminationVue;
21 aurelien 22
 
1188 gduche 23
import com.google.gwt.core.shared.GWT;
21 aurelien 24
import com.google.gwt.event.logical.shared.ValueChangeEvent;
25
import com.google.gwt.event.logical.shared.ValueChangeHandler;
1188 gduche 26
import com.google.gwt.user.client.ui.HTML;
27
import com.google.gwt.user.client.ui.Label;
1183 gduche 28
import com.google.gwt.user.client.ui.Panel;
21 aurelien 29
import com.google.gwt.user.client.ui.RootPanel;
30
 
31
/**
32
 * @author Benjamin
25 gduche 33
 *
21 aurelien 34
 */
25 gduche 35
public class GestionnaireHistorique implements ValueChangeHandler<String> {
21 aurelien 36
 
25 gduche 37
	/**
38
	 * Évènement lorsque l'historique change. L'action par défaut affiche la
39
	 * page d'accueil.
40
	 * */
41
	public void onValueChange(ValueChangeEvent<String> event) {
21 aurelien 42
 
1196 gduche 43
 
44
		//1. définition des variables
1183 gduche 45
		String eventValue = event.getValue();
46
		Panel contenu = RootPanel.get("contenu");
1206 gduche 47
		Panel zoneEntete = RootPanel.get("zoneEntete");
1183 gduche 48
		CacheClient cache = CacheClient.getInstance();
1206 gduche 49
		cache.setPageCourante(eventValue);
1183 gduche 50
 
51
		//2. nettoyer le contenu
52
		contenu.clear();
1206 gduche 53
		zoneEntete.clear();
1183 gduche 54
 
55
 
1188 gduche 56
		//3. Gérer le titre
1206 gduche 57
		String titre = "IdentiPlante";
1188 gduche 58
		if (eventValue.equals(ConstantesNavigation.PAGE_RECHERCHE_IMAGES)) {
1206 gduche 59
			titre = "PictoFlora";
1188 gduche 60
		}
1206 gduche 61
 
1189 gduche 62
		if (eventValue.equals(ConstantesNavigation.HOME)) {
63
			String home = cache.getHome();
64
			if (home.equals(ConstantesNavigation.PAGE_RECHERCHE_IMAGES)) {
1206 gduche 65
				titre = "PictoFlora";
66
			}
1189 gduche 67
		}
1206 gduche 68
 
69
		if (eventValue.startsWith(ConstantesNavigation.PAGE_VALIDATION_PICTOFLORA)) {
70
			titre = "PictoFlora";
71
		}
72
 
73
		//3. gérer l'entete
74
		EntetePresenteur entetePresenteur = new EntetePresenteur(new EnteteVue(titre));
75
		entetePresenteur.go(zoneEntete);
76
 
77
 
1183 gduche 78
		//Actions en fonction de la valeur de l'évènement
79
		if (eventValue.equals(ConstantesNavigation.PAGE_RECHERCHE_IMAGES)) {
80
			cache.setHome(ConstantesNavigation.PAGE_RECHERCHE_IMAGES);
81
			lancerMoteurRechercheImages(contenu);
1196 gduche 82
		} else if (eventValue.startsWith(ConstantesNavigation.PAGE_VALIDATION)) {
83
			IdentiplanteDeterminationPresenteur presenteur = new IdentiplanteDeterminationPresenteur(new IdentiplanteDeterminationVue(), new ObservationServiceConcret());
1183 gduche 84
			presenteur.go(contenu);
1196 gduche 85
		} else if (eventValue.startsWith(ConstantesNavigation.PAGE_VALIDATION_PICTOFLORA)) {
86
			PictofloraDeterminationPresenteur presenteur = new PictofloraDeterminationPresenteur(new PictofloraDeterminationVue(), new ObservationServiceConcret(), new ProtocoleServiceConcret());
87
			presenteur.go(contenu);
1183 gduche 88
		} else if (eventValue.equals(ConstantesNavigation.PAGE_COMPARAISON_EFLORE)) {
89
			ComparaisonEflorePresenteur presenteur = new ComparaisonEflorePresenteur(new ComparaisonEfloreVue(), new ImageServiceConcret());
90
			presenteur.go(contenu);
91
		} else if (eventValue.equals(ConstantesNavigation.PAGE_RECHERCHE_OBSERVATIONS)) {
92
			cache.setHome(ConstantesNavigation.PAGE_RECHERCHE_OBSERVATIONS);
93
			lancerMoteurRechercheObservation(contenu);
94
		} else if (eventValue.equals(ConstantesNavigation.HOME)) {
95
			String home = cache.getHome();
1092 gduche 96
			if (home.equals(ConstantesNavigation.PAGE_RECHERCHE_IMAGES)) {
1183 gduche 97
				lancerMoteurRechercheImages(contenu);
1092 gduche 98
			} else {
1183 gduche 99
				lancerMoteurRechercheObservation(contenu);
1092 gduche 100
			}
25 gduche 101
		}
1035 benjamin 102
		else{
1183 gduche 103
			lancerMoteurRechercheObservation(contenu);
1035 benjamin 104
		}
25 gduche 105
	}
1183 gduche 106
 
1189 gduche 107
 
1183 gduche 108
	/**
1189 gduche 109
	 * Afficher ler titre Identiplance
110
	 * */
111
	public void afficherTitreIdp(Panel titre) {
112
		titre.clear();
113
		HTML html = new HTML("<h1>IdentiPlante</h1>");
114
		titre.add(html);
115
	}
116
 
117
	/**
118
	 * Afficher ler titre Identiplance
119
	 * */
120
	public void afficherTitrePictoFlora(Panel titre) {
121
		titre.clear();
1194 gduche 122
		HTML html = new HTML("<h1>PictoFlora</h1>");
1189 gduche 123
		titre.add(html);
124
	}
125
 
126
	/**
1183 gduche 127
	 * Générer la page de recherche observation et l'afficher dans panneau
128
	 * @param Panel panneau le panneau pour afficher le résultat
129
	 * */
130
	public void lancerMoteurRechercheObservation(Panel panneau) {
1196 gduche 131
		MoteurIdentiplantePresenteur presenteur = new MoteurIdentiplantePresenteur(new ObservationServiceConcret(), new MoteurIdentiplanteVue());
1183 gduche 132
		presenteur.go(panneau);
133
	}
134
 
135
	/**
136
	 * Générer la page de recherche images et l'afficher dans panneau
137
	 * @param Panel panneau le panneau pour afficher le résultat
138
	 * */
139
	public void lancerMoteurRechercheImages(Panel panneau) {
1196 gduche 140
		MoteurPictofloraPresenteur presenteur = new MoteurPictofloraPresenteur(new MoteurPictofloraVue(), new ProtocoleServiceConcret());
1183 gduche 141
		presenteur.go(panneau);
142
	}
21 aurelien 143
}