New file |
0,0 → 1,51 |
package org.tela_botanica.del.client.vues.rechercheobservations.resultats.observationdeterminations; |
|
import java.util.List; |
|
import org.tela_botanica.del.client.i18n.I18n; |
import org.tela_botanica.del.client.modeles.PropositionDetermination; |
import org.tela_botanica.del.client.vues.rechercheobservations.resultats.votes.DetailVoteObservationPresenteur; |
import org.tela_botanica.del.client.vues.rechercheobservations.resultats.votes.DetailVoteObservationVue; |
|
import com.google.gwt.user.client.ui.HTMLPanel; |
import com.google.gwt.user.client.ui.HasWidgets; |
import com.google.gwt.user.client.ui.IsWidget; |
|
public class ObservationDeterminationPresenteur { |
|
public abstract interface Vue extends IsWidget { |
public void viderTableau(); |
public void ajouterElementAuTableauProposition(IsWidget Element, String texte); |
} |
|
private Vue vue; |
|
private List<PropositionDetermination> propositions; |
|
public ObservationDeterminationPresenteur(Vue vue, List<PropositionDetermination> propositions) { |
this.propositions = propositions; |
this.vue = vue; |
} |
|
public void chargerPropositions() { |
vue.viderTableau(); |
for (PropositionDetermination proposition : propositions) { |
//TODO: afficher nombre de votes total et mettre à jour en cas de vote |
HTMLPanel panneau = new HTMLPanel(""); |
DetailVoteObservationPresenteur presenteurVote = new DetailVoteObservationPresenteur(new DetailVoteObservationVue(), proposition); |
presenteurVote.go(panneau); |
vue.ajouterElementAuTableauProposition(panneau, String.valueOf(proposition.getListeCommentaires().size())); |
} |
} |
|
public void setPropositions(List<PropositionDetermination> propositions) { |
this.propositions = propositions; |
chargerPropositions(); |
} |
|
public void go(HasWidgets composite) { |
composite.add(vue.asWidget()); |
chargerPropositions(); |
} |
|
} |