New file |
0,0 → 1,99 |
package org.tela_botanica.del.client.composants.votes.details; |
|
import java.util.Iterator; |
import java.util.List; |
import java.util.Map; |
|
import org.tela_botanica.del.client.i18n.I18n; |
import org.tela_botanica.del.client.modeles.PropositionDetermination; |
import org.tela_botanica.del.client.modeles.VoteDetermination; |
|
import com.google.gwt.core.client.GWT; |
import com.google.gwt.i18n.client.DateTimeFormat; |
import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat; |
import com.google.gwt.uibinder.client.UiBinder; |
import com.google.gwt.uibinder.client.UiField; |
import com.google.gwt.user.client.ui.Composite; |
import com.google.gwt.user.client.ui.FlexTable; |
import com.google.gwt.user.client.ui.HTML; |
import com.google.gwt.user.client.ui.HTMLPanel; |
import com.google.gwt.user.client.ui.Panel; |
import com.google.gwt.user.client.ui.Widget; |
|
public class DetailListeVotesDeterminationVue extends Composite implements DetailListeVotesDeterminationPresenteur.Vue { |
|
private static DetailListeVotesDeterminationVueUIiBinder uiBinder = GWT.create(DetailListeVotesDeterminationVueUIiBinder.class); |
|
interface DetailListeVotesDeterminationVueUIiBinder extends UiBinder<Widget, DetailListeVotesDeterminationVue> { |
}; |
|
@UiField |
HTMLPanel titre; |
|
@UiField |
Panel panneauChargement; |
|
@UiField |
FlexTable htmlTableau; |
|
public DetailListeVotesDeterminationVue() { |
initWidget(uiBinder.createAndBindUi(this)); |
} |
|
@Override |
public void afficherVotes(PropositionDetermination propositionDetermination) { |
|
HTML htmlTitre = new HTML(propositionDetermination.getEspece()); |
titre.add(htmlTitre); |
|
Map<String, VoteDetermination> listeVotes = propositionDetermination.getVotesDeterminations(); |
htmlTableau.clear(); |
|
creerEntetes(); |
for (Iterator<String> iterator = listeVotes.keySet().iterator(); iterator.hasNext();) { |
VoteDetermination voteDetermination = listeVotes.get(iterator.next()); |
ajouterVote(voteDetermination); |
} |
} |
|
private void creerEntetes() { |
htmlTableau.setHTML(1, 1, I18n.getVocabulary().contributeur()); |
htmlTableau.setHTML(1, 2, I18n.getVocabulary().valeurVote()); |
htmlTableau.setHTML(1, 3, I18n.getVocabulary().date()); |
} |
|
@Override |
public void ajouterVote(VoteDetermination vote) { |
|
int index = htmlTableau.getRowCount() + 1; |
String valeurVote = (vote.getVote() == 1) ? I18n.getVocabulary().oui() : I18n.getVocabulary().non(); |
|
String contributeur; |
try { |
contributeur = Integer.parseInt(vote.getContributeur())+""; |
} catch (Exception e) { |
contributeur = I18n.getVocabulary().anonyme(); |
} |
|
if(vote.getAuteur() != null) { |
contributeur = vote.getAuteur().getNomComplet(); |
} |
|
htmlTableau.setHTML(index, 1, contributeur); |
htmlTableau.setHTML(index, 2, valeurVote+""); |
htmlTableau.setHTML(index, 3, DateTimeFormat.getFormat(PredefinedFormat.DATE_SHORT).format(vote.getDate())); |
|
} |
|
@Override |
public void startChargement() { |
panneauChargement.setHeight((this.getOffsetHeight()/2)+"px"); |
panneauChargement.setWidth((this.getOffsetWidth()/2)+"px"); |
panneauChargement.setVisible(true); |
} |
|
@Override |
public void stopChargement() { |
panneauChargement.setVisible(false); |
} |
} |