Subversion Repositories eFlore/Applications.del

Rev

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

Rev 1109 Rev 1183
1
package org.tela_botanica.del.client.vues.rechercheobservations.moteur;
1
package org.tela_botanica.del.client.vues.rechercheobservations.moteur;
2
 
2
 
3
import org.tela_botanica.del.client.composants.moteurrecherche.MoteurRecherchePresenteur;
3
import org.tela_botanica.del.client.composants.moteurrecherche.MoteurRecherchePresenteur;
4
import org.tela_botanica.del.client.composants.moteurrecherche.MoteurRechercheVue;
4
import org.tela_botanica.del.client.composants.moteurrecherche.MoteurRechercheVue;
-
 
5
import org.tela_botanica.del.client.composants.partageurl.PartageUrlPresenteur;
-
 
6
import org.tela_botanica.del.client.composants.partageurl.PartageUrlVue;
5
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
7
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
6
import org.tela_botanica.del.client.config.Config;
8
import org.tela_botanica.del.client.config.Config;
7
import org.tela_botanica.del.client.modeles.ModeRecherche;
9
import org.tela_botanica.del.client.modeles.ModeRecherche;
8
import org.tela_botanica.del.client.services.rest.ObservationService;
10
import org.tela_botanica.del.client.services.rest.ObservationService;
9
import org.tela_botanica.del.client.services.rest.ObservationServiceConcret;
11
import org.tela_botanica.del.client.services.rest.ObservationServiceConcret;
10
import org.tela_botanica.del.client.vues.rechercheobservations.resultats.ResultatsRechercheObservationsPresenteur;
12
import org.tela_botanica.del.client.vues.rechercheobservations.resultats.ResultatsRechercheObservationsPresenteur;
11
import org.tela_botanica.del.client.vues.rechercheobservations.resultats.ResultatsRechercheObservationsVue;
13
import org.tela_botanica.del.client.vues.rechercheobservations.resultats.ResultatsRechercheObservationsVue;
12
 
14
 
13
import com.google.gwt.event.dom.client.ClickEvent;
15
import com.google.gwt.event.dom.client.ClickEvent;
14
import com.google.gwt.event.dom.client.ClickHandler;
16
import com.google.gwt.event.dom.client.ClickHandler;
15
import com.google.gwt.event.dom.client.HasClickHandlers;
17
import com.google.gwt.event.dom.client.HasClickHandlers;
16
import com.google.gwt.user.client.Window;
18
import com.google.gwt.user.client.Window;
17
import com.google.gwt.user.client.ui.HasWidgets;
19
import com.google.gwt.user.client.ui.HasWidgets;
18
import com.google.gwt.user.client.ui.IsWidget;
20
import com.google.gwt.user.client.ui.IsWidget;
-
 
21
import com.google.gwt.user.client.ui.Panel;
19
 
22
 
20
public class MoteurRechercheObservationsPresenteur extends Presenteur {
23
public class MoteurRechercheObservationsPresenteur extends Presenteur {
21
 
24
 
22
	public interface Vue extends IsWidget {
25
	public interface Vue extends IsWidget {
23
		public HasWidgets getZoneRecherche();
26
		public HasWidgets getZoneRecherche();
24
 
27
 
25
		public HasWidgets getZoneResultats();
28
		public HasWidgets getZoneResultats();
26
 
29
 
27
		HasClickHandlers getLienAjoutObservation();
30
		HasClickHandlers getLienAjoutObservation();
28
		
31
		
29
		public String getValeurRadioStatut();
32
		public String getValeurRadioStatut();
30
		
33
		
31
		public HasClickHandlers getRadioADeterminer();
34
		public HasClickHandlers getRadioADeterminer();
32
		
35
		
33
		public HasClickHandlers getRadioEnDiscussion();
36
		public HasClickHandlers getRadioEnDiscussion();
34
		
37
		
35
		public HasClickHandlers getRadioAConfirmer();
38
		public HasClickHandlers getRadioAConfirmer();
36
		
39
		
37
		public void decocherRadioTout();
40
		public void decocherRadioTout();
-
 
41
		
-
 
42
		public Panel getZonePartageUrl();
38
 
43
 
39
	}
44
	}
40
 
45
 
41
	private Vue vue;
46
	private Vue vue;
42
 
47
 
43
	public MoteurRechercheObservationsPresenteur(ObservationService serviceObs, Vue vue) {
48
	public MoteurRechercheObservationsPresenteur(ObservationService serviceObs, Vue vue) {
44
		this.vue = vue;
49
		this.vue = vue;
45
	}
50
	}
46
 
51
 
47
	public void go(HasWidgets composite) {
52
	public void go(HasWidgets composite) {
48
 
53
 
49
		composite.add(vue.asWidget());
54
		composite.add(vue.asWidget());
50
		ajouterMoteurRechercheAvancee();
55
		ajouterMoteurRechercheAvancee();
-
 
56
		PartageUrlPresenteur presenteurPartageUrl = new PartageUrlPresenteur(new PartageUrlVue());
-
 
57
		presenteurPartageUrl.go(vue.getZonePartageUrl());
51
		gererEvenements();
58
		gererEvenements();
-
 
59
		
52
	}
60
	}
53
 
61
 
54
	protected void ajouterMoteurRechercheAvancee() {
62
	protected void ajouterMoteurRechercheAvancee() {
55
		MoteurRecherchePresenteur presenteur = new MoteurRecherchePresenteur(new MoteurRechercheVue("") {
63
		MoteurRecherchePresenteur presenteur = new MoteurRecherchePresenteur(new MoteurRechercheVue("") {
56
		}, ModeRecherche.MODE_OBSERVATION) {
64
		}, ModeRecherche.MODE_OBSERVATION) {
57
 
65
 
58
			@Override
66
			@Override
59
			public void lancerRecherche() {
67
			public void lancerRecherche() {
60
				chercherObservations();
68
				chercherObservations();
61
			}
69
			}
62
		};
70
		};
63
		presenteur.go(vue.getZoneRecherche());
71
		presenteur.go(vue.getZoneRecherche());
64
	}
72
	}
65
 
73
 
66
	public void chercherObservations() {
74
	public void chercherObservations() {
67
		vue.getZoneResultats().clear();
75
		vue.getZoneResultats().clear();
68
		new ResultatsRechercheObservationsPresenteur(new ObservationServiceConcret(), new ResultatsRechercheObservationsVue(), vue.getValeurRadioStatut()).go(vue.getZoneResultats());
76
		new ResultatsRechercheObservationsPresenteur(new ObservationServiceConcret(), new ResultatsRechercheObservationsVue(), vue.getValeurRadioStatut()).go(vue.getZoneResultats());
69
	}
77
	}
70
 
78
 
71
	protected void gererEvenements() {
79
	protected void gererEvenements() {
72
		vue.getLienAjoutObservation().addClickHandler(new ClickHandler() {			
80
		vue.getLienAjoutObservation().addClickHandler(new ClickHandler() {			
73
			@Override
81
			@Override
74
			public void onClick(ClickEvent event) {
82
			public void onClick(ClickEvent event) {
75
				Config config = new Config();
83
				Config config = new Config();
76
				Window.open(config.getUrl("applisaisie"), "Saisie d'une nouvelle observation", null);
84
				Window.open(config.getUrl("applisaisie"), "Saisie d'une nouvelle observation", null);
77
			}
85
			}
78
		});
86
		});
79
		
87
		
80
		vue.getRadioAConfirmer().addClickHandler(new ClickHandler() {
88
		vue.getRadioAConfirmer().addClickHandler(new ClickHandler() {
81
			
89
			
82
			@Override
90
			@Override
83
			public void onClick(ClickEvent event) {
91
			public void onClick(ClickEvent event) {
84
				vue.decocherRadioTout();
92
				vue.decocherRadioTout();
85
			}
93
			}
86
		});
94
		});
87
		
95
		
88
		vue.getRadioADeterminer().addClickHandler(new ClickHandler() {
96
		vue.getRadioADeterminer().addClickHandler(new ClickHandler() {
89
			
97
			
90
			@Override
98
			@Override
91
			public void onClick(ClickEvent event) {
99
			public void onClick(ClickEvent event) {
92
				vue.decocherRadioTout();
100
				vue.decocherRadioTout();
93
			}
101
			}
94
		});
102
		});
95
		
103
		
96
		vue.getRadioEnDiscussion().addClickHandler(new ClickHandler() {
104
		vue.getRadioEnDiscussion().addClickHandler(new ClickHandler() {
97
			
105
			
98
			@Override
106
			@Override
99
			public void onClick(ClickEvent event) {
107
			public void onClick(ClickEvent event) {
100
				vue.decocherRadioTout();
108
				vue.decocherRadioTout();
101
			}
109
			}
102
		});
110
		});
103
	}
111
	}
104
 
112
 
105
}
113
}