/trunk/src/org/tela_botanica/del/client/vues/rechercheobservations/resultats/observationdeterminations/ObservationDeterminationVue.java |
---|
28,10 → 28,24 |
} |
@Override |
public void ajouterElementAuTableauProposition(IsWidget element, String texte) { |
LignePropositionVue ligneProposition = new LignePropositionVue(element, new HTMLPanel(texte)); |
public void ajouterElementAuTableauProposition(IsWidget element, int nbVotes, int nbCommentaires) { |
LignePropositionVue ligneProposition = new LignePropositionVue(element, nbVotes, nbCommentaires); |
tableauPropositions.add(ligneProposition); |
} |
@Override |
public void setNbVotes(int index, int nbVotes) { |
// cette conversion ne devrait jamais poser de problème, car le tableau ne doit contenir que ça |
LignePropositionVue lignePropositionVue = (LignePropositionVue)tableauPropositions.getWidget(index); |
lignePropositionVue.setNbVotes(nbVotes); |
} |
@Override |
public void setNbCommentaires(int index, int nbCommentaires) { |
// cette conversion ne devrait jamais poser de problème, car le tableau ne doit contenir que ça |
LignePropositionVue lignePropositionVue = (LignePropositionVue)tableauPropositions.getWidget(index); |
lignePropositionVue.setNbVotes(nbCommentaires); |
} |
@Override |
public void viderTableau() { |
/trunk/src/org/tela_botanica/del/client/vues/rechercheobservations/resultats/observationdeterminations/LignePropositionVue.ui.xml |
---|
8,7 → 8,11 |
<ui:style src="observationdetermination.css" /> |
<g:HTMLPanel styleName="{style.ligneProposition}"> |
<g:HTMLPanel ui:field="conteneurPanneauDeterminations" /> |
<g:HTMLPanel ui:field="conteneurPanneauNombrePropositions" styleName="{style.nombrePropostions}"/> |
<g:HTMLPanel ui:field="conteneurPanneauCommentaires" styleName="{style.commentaires}"/> |
<g:HTMLPanel ui:field="conteneurPanneauVotes" styleName="{style.nombreVotes}"> |
<g:HTML ui:field="nbVotesHtml"/> |
</g:HTMLPanel> |
<g:HTMLPanel ui:field="conteneurPanneauCommentaires" styleName="{style.commentaires}"> |
<g:HTML ui:field="nbCommentairesHtml"/> |
</g:HTMLPanel> |
</g:HTMLPanel> |
</ui:UiBinder> |
/trunk/src/org/tela_botanica/del/client/vues/rechercheobservations/resultats/observationdeterminations/LignePropositionVue.java |
---|
4,6 → 4,7 |
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.HTML; |
import com.google.gwt.user.client.ui.HTMLPanel; |
import com.google.gwt.user.client.ui.IsWidget; |
import com.google.gwt.user.client.ui.Widget; |
16,11 → 17,27 |
private static MyUiBinder uibinder = GWT.create(MyUiBinder.class); |
@UiField |
HTMLPanel conteneurPanneauDeterminations, conteneurPanneauCommentaires; |
HTMLPanel conteneurPanneauDeterminations, conteneurPanneauVotes, conteneurPanneauCommentaires; |
public LignePropositionVue(IsWidget panneauDeterminations, IsWidget panneauCommentaires) { |
@UiField |
HTML nbVotesHtml, nbCommentairesHtml; |
public LignePropositionVue(IsWidget panneauDeterminations, int nbVotes, int nbCommentaires) { |
initWidget(uibinder.createAndBindUi(this)); |
conteneurPanneauDeterminations.add(panneauDeterminations); |
conteneurPanneauCommentaires.add(panneauCommentaires); |
nbVotesHtml = new HTML(nbVotes+""); |
nbCommentairesHtml = new HTML(nbCommentaires+""); |
conteneurPanneauVotes.add(nbVotesHtml); |
conteneurPanneauCommentaires.add(nbCommentairesHtml); |
} |
public void setNbVotes(int nbVotes) { |
nbVotesHtml.setHTML(nbVotes+""); |
} |
public void setNbCommentaires(int nbCommentaires) { |
nbCommentairesHtml.setHTML(nbCommentaires+""); |
} |
} |
/trunk/src/org/tela_botanica/del/client/vues/rechercheobservations/resultats/observationdeterminations/observationdetermination.css |
---|
15,10 → 15,11 |
margin-right: 5px; |
} |
.nombrePropostions { |
.nombreVotes { |
width:15px; |
height:16px; |
background:url('./img/user.png') no-repeat; |
padding-left: 10px; |
} |
.commentaires { |
/trunk/src/org/tela_botanica/del/client/vues/rechercheobservations/resultats/observationdeterminations/ObservationDeterminationPresenteur.java |
---|
4,6 → 4,10 |
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 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.vues.rechercheobservations.resultats.votes.DetailVoteObservationPresenteur; |
import org.tela_botanica.del.client.vues.rechercheobservations.resultats.votes.DetailVoteObservationVue; |
15,7 → 19,9 |
public abstract interface Vue extends IsWidget { |
public void viderTableau(); |
public void ajouterElementAuTableauProposition(IsWidget Element, String texte); |
public void ajouterElementAuTableauProposition(IsWidget Element, int nbVotes, int nbCommentaires); |
void setNbVotes(int index, int nbVotes); |
void setNbCommentaires(int index, int nbCommentaires); |
} |
private Vue vue; |
34,8 → 40,17 |
HTMLPanel panneau = new HTMLPanel(""); |
DetailVoteObservationPresenteur presenteurVote = new DetailVoteObservationPresenteur(new DetailVoteObservationVue(), proposition); |
presenteurVote.go(panneau); |
vue.ajouterElementAuTableauProposition(panneau, String.valueOf(proposition.getListeCommentaires().size())); |
int nbCommentaires = proposition.getListeCommentaires().size(); |
int nbVotes = proposition.getVotesDeterminations().size(); |
vue.ajouterElementAuTableauProposition(panneau, nbVotes, nbCommentaires); |
} |
BusEvenementiel.getInstance().addHandler(EvenementVoteDetermination.TYPE, new GestionnaireEvenementVoteDetermination() { |
@Override |
public void onVoteDetermination(VoteDetermination event) { |
surVoteDetermination(event); |
} |
}); |
} |
public void setPropositions(List<PropositionDetermination> propositions) { |
47,5 → 62,12 |
composite.add(vue.asWidget()); |
chargerPropositions(); |
} |
public void surVoteDetermination(VoteDetermination voteDetermination) { |
int indexProposition = propositions.indexOf(voteDetermination.getPropositionDetermination()); |
if(indexProposition != -1) { |
vue.setNbVotes(indexProposition, voteDetermination.getPropositionDetermination().getVotesDeterminations().size()); |
} |
} |
} |