Subversion Repositories eFlore/Applications.del

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
480 benjamin 1
package org.tela_botanica.del.client.vues.rechercheobservations.resultats.observationdeterminations;
436 benjamin 2
 
3
import java.util.List;
4
 
5
import org.tela_botanica.del.client.i18n.I18n;
6
import org.tela_botanica.del.client.modeles.PropositionDetermination;
480 benjamin 7
import org.tela_botanica.del.client.vues.rechercheobservations.resultats.votes.DetailVoteObservationPresenteur;
8
import org.tela_botanica.del.client.vues.rechercheobservations.resultats.votes.DetailVoteObservationVue;
436 benjamin 9
 
10
import com.google.gwt.user.client.ui.HTMLPanel;
11
import com.google.gwt.user.client.ui.HasWidgets;
12
import com.google.gwt.user.client.ui.IsWidget;
13
 
14
public class ObservationDeterminationPresenteur {
15
 
16
	public abstract interface Vue extends IsWidget {
652 aurelien 17
		public void viderTableau();
18
		public void ajouterElementAuTableauProposition(IsWidget Element, String texte);
436 benjamin 19
	}
20
 
21
	private Vue vue;
22
 
23
	private List<PropositionDetermination> propositions;
24
 
25
	public ObservationDeterminationPresenteur(Vue vue, List<PropositionDetermination> propositions) {
26
		this.propositions = propositions;
27
		this.vue = vue;
28
	}
29
 
30
	public void chargerPropositions() {
652 aurelien 31
		vue.viderTableau();
436 benjamin 32
		for (PropositionDetermination proposition : propositions) {
33
			HTMLPanel panneau = new HTMLPanel("");
34
			DetailVoteObservationPresenteur presenteurVote = new DetailVoteObservationPresenteur(new DetailVoteObservationVue(), proposition);
35
			presenteurVote.go(panneau);
652 aurelien 36
			vue.ajouterElementAuTableauProposition(panneau, String.valueOf(proposition.getListeCommentaires().size()));
436 benjamin 37
		}
38
	}
602 aurelien 39
 
40
	public void setPropositions(List<PropositionDetermination> propositions) {
41
		this.propositions = propositions;
42
		chargerPropositions();
43
	}
436 benjamin 44
 
45
	public void go(HasWidgets composite) {
46
		composite.add(vue.asWidget());
47
		chargerPropositions();
48
	}
49
 
50
}