Subversion Repositories eFlore/Applications.del

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
650 gduche 1
package org.tela_botanica.del.client.vues.plateformedetermination.ligneProtocole;
649 gduche 2
 
3
import org.tela_botanica.del.client.cache.CacheClient;
1045 benjamin 4
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
649 gduche 5
import org.tela_botanica.del.client.composants.votes.moyennevotes.MoyenneVotePresenteur;
6
import org.tela_botanica.del.client.composants.votes.moyennevotes.MoyenneVoteVue;
848 aurelien 7
import org.tela_botanica.del.client.modeles.Image;
649 gduche 8
import org.tela_botanica.del.client.modeles.Protocole;
1045 benjamin 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;
959 benjamin 12
import org.tela_botanica.del.client.services.rest.VoteProtocoleServiceConcret;
13
 
649 gduche 14
import com.google.gwt.user.client.ui.HasWidgets;
15
import com.google.gwt.user.client.ui.IsWidget;
16
 
1045 benjamin 17
public class LigneProtocolePresenteur extends Presenteur {
649 gduche 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;
1045 benjamin 30
		chargerValeursProtocolePourImageCourante();
31
	}
32
 
33
	public void chargerValeursProtocolePourImageCourante(){
34
		vue.getZoneVote().clear();
848 aurelien 35
		Image imageCourante = CacheClient.getInstance().getImageCourante();
959 benjamin 36
		MoyenneVotePresenteur votePresenteur = new MoyenneVotePresenteur(imageCourante, protocole, new MoyenneVoteVue(), new VoteProtocoleServiceConcret());
649 gduche 37
		votePresenteur.go(vue.getZoneVote());
38
	}
39
 
40
	public Vue getVue() {
41
		return vue;
42
	}
959 benjamin 43
 
649 gduche 44
	public void go(HasWidgets composite) {
45
		composite.add(vue.asWidget());
1045 benjamin 46
		gererEvenements();
649 gduche 47
	}
1045 benjamin 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
	}
649 gduche 59
}