Subversion Repositories eFlore/Applications.del

Rev

Rev 1503 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1196 gduche 1
package org.tela_botanica.del.client.vues.identiplante.plateformedetermination.ligneProtocole;
2
 
3
import org.tela_botanica.del.client.cache.CacheClient;
4
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
5
import org.tela_botanica.del.client.composants.votes.moyennevotes.MoyenneVotePresenteur;
6
import org.tela_botanica.del.client.composants.votes.moyennevotes.MoyenneVoteVue;
7
import org.tela_botanica.del.client.modeles.Image;
8
import org.tela_botanica.del.client.modeles.Protocole;
9
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
10
import org.tela_botanica.del.client.navigation.evenement.changementimagevalidation.EvenementChangementImageValidation;
11
import org.tela_botanica.del.client.navigation.evenement.changementimagevalidation.GestionnaireEvenementChangementImageValidation;
12
import org.tela_botanica.del.client.services.rest.VoteProtocoleServiceConcret;
13
 
14
import com.google.gwt.user.client.ui.HasWidgets;
15
import com.google.gwt.user.client.ui.IsWidget;
16
 
17
public class LigneProtocolePresenteur extends Presenteur {
18
 
19
	public interface Vue extends IsWidget {
20
 
21
		HasWidgets getZoneVote();
22
	}
23
 
24
	private Vue vue;
25
	private Protocole protocole;
26
 
27
	public LigneProtocolePresenteur(Protocole protocole, Vue vue) {
28
		this.vue = vue;
29
		this.protocole = protocole;
30
		chargerValeursProtocolePourImageCourante();
31
	}
32
 
33
	public void chargerValeursProtocolePourImageCourante(){
34
		vue.getZoneVote().clear();
35
		Image imageCourante = CacheClient.getInstance().getImageCourante();
36
		MoyenneVotePresenteur votePresenteur = new MoyenneVotePresenteur(imageCourante, protocole, new MoyenneVoteVue(), new VoteProtocoleServiceConcret());
37
		votePresenteur.go(vue.getZoneVote());
38
	}
39
 
40
	public Vue getVue() {
41
		return vue;
42
	}
43
 
44
	public void go(HasWidgets composite) {
45
		composite.add(vue.asWidget());
46
		gererEvenements();
47
	}
48
 
49
	@Override
50
	protected void gererEvenements() {
51
		BusEvenementiel.getInstance().addHandler(EvenementChangementImageValidation.TYPE, new GestionnaireEvenementChangementImageValidation() {
52
 
53
			@Override
54
			public void onChangementImage(EvenementChangementImageValidation event) {
55
				chargerValeursProtocolePourImageCourante();
56
			}
57
		});
58
	}
59
}