Subversion Repositories eFlore/Applications.del

Rev

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

Rev 1237 Rev 1444
1
package org.tela_botanica.del.client.vues.identiplante.moteur;
1
package org.tela_botanica.del.client.vues.identiplante.moteur;
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.moteurrecherche.MoteurRecherchePresenteur;
4
import org.tela_botanica.del.client.composants.moteurrecherche.MoteurRecherchePresenteur;
5
import org.tela_botanica.del.client.composants.moteurrecherche.MoteurRechercheVue;
5
import org.tela_botanica.del.client.composants.moteurrecherche.MoteurRechercheVue;
6
import org.tela_botanica.del.client.composants.partageurl.PartageUrlPresenteur;
6
import org.tela_botanica.del.client.composants.partageurl.PartageUrlPresenteur;
7
import org.tela_botanica.del.client.composants.partageurl.PartageUrlVue;
7
import org.tela_botanica.del.client.composants.partageurl.PartageUrlVue;
8
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
8
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
9
import org.tela_botanica.del.client.config.Config;
9
import org.tela_botanica.del.client.config.Config;
10
import org.tela_botanica.del.client.modeles.ModeRecherche;
10
import org.tela_botanica.del.client.modeles.ModeRecherche;
11
import org.tela_botanica.del.client.services.rest.ObservationService;
11
import org.tela_botanica.del.client.services.rest.ObservationService;
12
import org.tela_botanica.del.client.services.rest.ObservationServiceConcret;
12
import org.tela_botanica.del.client.services.rest.ObservationServiceConcret;
13
import org.tela_botanica.del.client.vues.identiplante.resultats.ResultatsIdentiplantePresenteur;
13
import org.tela_botanica.del.client.vues.identiplante.resultats.ResultatsIdentiplantePresenteur;
14
import org.tela_botanica.del.client.vues.identiplante.resultats.ResultatsIdentiplanteVue;
14
import org.tela_botanica.del.client.vues.identiplante.resultats.ResultatsIdentiplanteVue;
15
 
15
 
16
import com.google.gwt.event.dom.client.ClickEvent;
16
import com.google.gwt.event.dom.client.ClickEvent;
17
import com.google.gwt.event.dom.client.ClickHandler;
17
import com.google.gwt.event.dom.client.ClickHandler;
18
import com.google.gwt.event.dom.client.HasClickHandlers;
18
import com.google.gwt.event.dom.client.HasClickHandlers;
19
import com.google.gwt.user.client.Window;
19
import com.google.gwt.user.client.Window;
20
import com.google.gwt.user.client.ui.HasWidgets;
20
import com.google.gwt.user.client.ui.HasWidgets;
21
import com.google.gwt.user.client.ui.IsWidget;
21
import com.google.gwt.user.client.ui.IsWidget;
22
import com.google.gwt.user.client.ui.Panel;
22
import com.google.gwt.user.client.ui.Panel;
23
 
23
 
24
public class MoteurIdentiplantePresenteur extends Presenteur {
24
public class MoteurIdentiplantePresenteur extends Presenteur {
25
 
25
 
26
	public interface Vue extends IsWidget {
26
	public interface Vue extends IsWidget {
27
		public HasWidgets getZoneRecherche();
27
		public HasWidgets getZoneRecherche();
28
 
28
 
29
		public HasWidgets getZoneResultats();
29
		public HasWidgets getZoneResultats();
30
 
30
 
31
		public HasClickHandlers getOngletEnDiscussion();
31
		public HasClickHandlers getOngletEnDiscussion();
32
		
32
		
33
		public HasClickHandlers getOngletADeterminer();
33
		public HasClickHandlers getOngletADeterminer();
34
		
34
		
35
		public HasClickHandlers getOngletTout();
35
		public HasClickHandlers getOngletTout();
-
 
36
 
-
 
37
		public HasClickHandlers getOngletValidees();
36
		
38
		
37
		public void setOngletADeterminerActif();
39
		public void setOngletADeterminerActif();
38
		
40
		
39
		public void setOngletToutActif();
41
		public void setOngletToutActif();
40
		
42
		
41
		public void setOngletEnDiscussionActif();
43
		public void setOngletEnDiscussionActif();
-
 
44
 
-
 
45
		public void setOngletValideesActif();
42
		
46
		
43
	}
47
	}
44
 
48
 
45
	private Vue vue;
49
	private Vue vue;
46
 
50
 
47
	public MoteurIdentiplantePresenteur(ObservationService serviceObs, Vue vue) {
51
	public MoteurIdentiplantePresenteur(ObservationService serviceObs, Vue vue) {
48
		this.vue = vue;
52
		this.vue = vue;
49
	}
53
	}
50
 
54
 
51
	public void go(HasWidgets composite) {
55
	public void go(HasWidgets composite) {
52
 
56
 
53
		composite.add(vue.asWidget());
57
		composite.add(vue.asWidget());
54
		ajouterMoteurRechercheAvancee();
58
		ajouterMoteurRechercheAvancee();
55
		gererEvenements();
59
		gererEvenements();
56
		
60
		
57
	}
61
	}
58
 
62
 
59
	protected void ajouterMoteurRechercheAvancee() {
63
	protected void ajouterMoteurRechercheAvancee() {
60
		MoteurRecherchePresenteur presenteur = new MoteurRecherchePresenteur(new MoteurRechercheVue("") {
64
		MoteurRecherchePresenteur presenteur = new MoteurRecherchePresenteur(new MoteurRechercheVue("") {
61
		}, ModeRecherche.MODE_OBSERVATION) {
65
		}, ModeRecherche.MODE_OBSERVATION) {
62
 
66
 
63
			@Override
67
			@Override
64
			public void lancerRecherche() {
68
			public void lancerRecherche() {
65
				chercherObservations();
69
				chercherObservations();
66
			}
70
			}
67
		};
71
		};
68
		presenteur.go(vue.getZoneRecherche());
72
		presenteur.go(vue.getZoneRecherche());
69
	}
73
	}
70
 
74
 
71
	public void chercherObservations() {
75
	public void chercherObservations() {
72
		vue.getZoneResultats().clear();
76
		vue.getZoneResultats().clear();
73
		new ResultatsIdentiplantePresenteur(new ObservationServiceConcret(), new ResultatsIdentiplanteVue()).go(vue.getZoneResultats());
77
		new ResultatsIdentiplantePresenteur(new ObservationServiceConcret(), new ResultatsIdentiplanteVue()).go(vue.getZoneResultats());
74
	}
78
	}
75
 
79
 
76
	protected void gererEvenements() {
80
	protected void gererEvenements() {
77
		// Gestion du clic sur les onglets
81
		// Gestion du clic sur les onglets
78
		vue.getOngletTout().addClickHandler(new ClickHandler() {
82
		vue.getOngletTout().addClickHandler(new ClickHandler() {
79
			
83
			
80
			@Override
84
			@Override
81
			public void onClick(ClickEvent event) {
85
			public void onClick(ClickEvent event) {
82
				CacheClient.getInstance().supprimerFiltreStatut();
86
				CacheClient.getInstance().supprimerFiltreStatut();
83
				CacheClient.getInstance().setPageCouranteRechercheObservations(1);
87
				CacheClient.getInstance().setPageCouranteRechercheObservations(1);
84
				chercherObservations();
88
				chercherObservations();
85
				vue.setOngletToutActif();
89
				vue.setOngletToutActif();
86
			}
90
			}
87
		});
91
		});
88
		
92
		
89
		vue.getOngletADeterminer().addClickHandler(new ClickHandler() {
93
		vue.getOngletADeterminer().addClickHandler(new ClickHandler() {
90
			
94
			
91
			@Override
95
			@Override
92
			public void onClick(ClickEvent event) {
96
			public void onClick(ClickEvent event) {
93
				CacheClient.getInstance().setFiltreStatut("adeterminer");
97
				CacheClient.getInstance().setFiltreStatut("adeterminer");
94
				CacheClient.getInstance().setPageCouranteRechercheObservations(1);
98
				CacheClient.getInstance().setPageCouranteRechercheObservations(1);
95
				chercherObservations();
99
				chercherObservations();
96
				vue.setOngletADeterminerActif();
100
				vue.setOngletADeterminerActif();
97
			}
101
			}
98
		});
102
		});
99
		
103
		
100
		vue.getOngletEnDiscussion().addClickHandler(new ClickHandler() {
104
		vue.getOngletEnDiscussion().addClickHandler(new ClickHandler() {
101
			
105
			
102
			@Override
106
			@Override
103
			public void onClick(ClickEvent event) {
107
			public void onClick(ClickEvent event) {
104
				CacheClient.getInstance().setFiltreStatut("endiscussion");
108
				CacheClient.getInstance().setFiltreStatut("endiscussion");
105
				CacheClient.getInstance().setPageCouranteRechercheObservations(1);
109
				CacheClient.getInstance().setPageCouranteRechercheObservations(1);
106
				chercherObservations();
110
				chercherObservations();
107
				vue.setOngletEnDiscussionActif();
111
				vue.setOngletEnDiscussionActif();
108
			}
112
			}
-
 
113
		});
-
 
114
 
-
 
115
		vue.getOngletValidees().addClickHandler(new ClickHandler() {
-
 
116
			
-
 
117
			@Override
-
 
118
			public void onClick(ClickEvent event) {
-
 
119
				CacheClient.getInstance().setFiltreStatut("validees");
-
 
120
				CacheClient.getInstance().setPageCouranteRechercheObservations(1);
-
 
121
				chercherObservations();
-
 
122
				vue.setOngletValideesActif();
-
 
123
			}
109
		});
124
		});
110
	}
125
	}
111
 
126
 
112
}
127
}