1,39 → 1,40 |
package org.tela_botanica.del.client.vues.identiplante.resultats.observationdeterminations; |
|
import java.util.Collection; |
import java.util.Collections; |
import java.util.HashMap; |
import java.util.List; |
import java.util.Map; |
import java.util.TreeMap; |
|
import org.tela_botanica.del.client.composants.fenetreoverlay.FenetreOverlaySimplePresenteur; |
import org.tela_botanica.del.client.composants.rss.RssPresenteur; |
import org.tela_botanica.del.client.composants.rss.RssVue; |
import org.tela_botanica.del.client.modeles.MoyenneVote; |
import org.tela_botanica.del.client.modeles.Observation; |
import org.tela_botanica.del.client.modeles.PropositionDetermination; |
import org.tela_botanica.del.client.modeles.VoteDetermination; |
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel; |
import org.tela_botanica.del.client.navigation.evenement.voteDetermination.EvenementVoteDetermination; |
import org.tela_botanica.del.client.navigation.evenement.voteDetermination.GestionnaireEvenementVoteDetermination; |
import org.tela_botanica.del.client.services.CalculVoteDeterminationService; |
import org.tela_botanica.del.client.utils.ComparateurPropositionDetermination; |
import org.tela_botanica.del.client.vues.identiplante.resultats.votes.DetailVoteObservationPresenteur; |
import org.tela_botanica.del.client.vues.identiplante.resultats.votes.DetailVoteObservationVue; |
|
import com.google.gwt.core.shared.GWT; |
import com.google.gwt.user.client.Window; |
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 viderTableauPropositionOriginale(); |
public void viderTableauPropositionInitiale(); |
|
public HasWidgets getTableauPropositions(); |
|
public HasWidgets getTableauPropositionOriginale(); |
public HasWidgets getTableauPropositionInitiale(); |
|
public void viderTableauPropositionRetenue(); |
|
public HasWidgets getTableauPropositionRetenue(); |
|
void setNbVotes(int index, int nbVotes); |
|
44,6 → 45,8 |
public void masquerPropositions(); |
|
public HasWidgets getZoneRss(); |
|
public void toggleTableauPropositionRetenue(); |
} |
private Vue vue; |
private List<PropositionDetermination> propositions; |
54,8 → 57,24 |
this.vue = vue; |
} |
|
public void chargerRss(Observation observation) { |
new RssPresenteur(new RssVue(), observation, "").go(vue.getZoneRss()); |
} |
|
public void chargerPropositionRetenue(PropositionDetermination proposition) { |
vue.viderTableauPropositionRetenue(); |
HTMLPanel panneau = new HTMLPanel(""); |
DetailVoteObservationPresenteur presenteurVote = new DetailVoteObservationPresenteur(new DetailVoteObservationVue(), proposition); |
presenteurVote.go(panneau); |
LignePropositionVue lignePropositionVue = new LignePropositionVue(panneau); |
LignePropositionPresenteur lignePropositionPresenteur = new LignePropositionPresenteur(lignePropositionVue, proposition); |
lignePropositionPresenteur.go(vue.getTableauPropositionRetenue()); |
vue.toggleTableauPropositionRetenue(); |
GWT.log("lkjlakrjelkrjealkrjezlkjezlrkezjlkzrjzelkrjzelkr"); |
} |
|
public void chargerPropositionOriginale(PropositionDetermination proposition) { |
vue.viderTableauPropositionOriginale(); |
vue.viderTableauPropositionInitiale(); |
// TODO: afficher nombre de votes total et mettre à jour en cas de |
// vote |
HTMLPanel panneau = new HTMLPanel(""); |
63,9 → 82,8 |
presenteurVote.go(panneau); |
LignePropositionVue lignePropositionVue = new LignePropositionVue(panneau); |
LignePropositionPresenteur lignePropositionPresenteur = new LignePropositionPresenteur(lignePropositionVue, proposition); |
lignePropositionPresenteur.go(vue.getTableauPropositionOriginale()); |
lignePropositionPresenteur.go(vue.getTableauPropositionInitiale()); |
|
new RssPresenteur(new RssVue(), proposition.getObservation(), "").go(vue.getZoneRss()); |
} |
|
|
78,9 → 96,12 |
vue.viderTableau(); |
int nbPropositions = 0; |
classerPropositions(propositions); |
chargerRss(propositions.get(0).getObservation()); |
for (PropositionDetermination proposition : propositions) { |
if (proposition.estPropositionInitiale()) { |
this.chargerPropositionOriginale(proposition); |
chargerPropositionOriginale(proposition); |
} else if (proposition.estPropositionRetenue()) { |
chargerPropositionRetenue(proposition); |
} else { |
|
nbPropositions++; |
95,6 → 116,7 |
lignePropositionPresenteur.go(vue.getTableauPropositions()); |
} |
} |
|
if (nbPropositions > 0) { |
} else { |
vue.masquerPropositions(); |