Subversion Repositories eFlore/Applications.del

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
638 aurelien 1
package org.tela_botanica.del.client.composants.votes.barrerepartition;
140 aurelien 2
 
1070 aurelien 3
import org.tela_botanica.del.client.i18n.I18n;
4
 
140 aurelien 5
import com.google.gwt.core.client.GWT;
611 gduche 6
import com.google.gwt.event.dom.client.HasClickHandlers;
140 aurelien 7
import com.google.gwt.uibinder.client.UiBinder;
8
import com.google.gwt.uibinder.client.UiField;
9
import com.google.gwt.user.client.ui.Composite;
1124 gduche 10
import com.google.gwt.user.client.ui.HasText;
611 gduche 11
import com.google.gwt.user.client.ui.Label;
12
import com.google.gwt.user.client.ui.Panel;
186 aurelien 13
import com.google.gwt.user.client.ui.PushButton;
140 aurelien 14
import com.google.gwt.user.client.ui.Widget;
15
 
276 aurelien 16
public class BarreRepartitionVoteVue extends Composite implements BarreRepartitionVotePresenteur.Vue {
1004 benjamin 17
 
18
	interface MyUiBinder extends UiBinder<Widget, BarreRepartitionVoteVue> {
19
	}
20
 
611 gduche 21
	private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class);
1004 benjamin 22
	private InfoBulleAnim animerVotePrisEnCompte;
23
	private InfoBulleAnim animerVoteModifie;
24
 
25
	@UiField
1124 gduche 26
	Label nomTaxon, score;
1004 benjamin 27
	@UiField
1124 gduche 28
	Panel votePrisEnCompte, voteModifie;
1004 benjamin 29
	@UiField
30
	PushButton boutonOui, boutonNon;
31
 
140 aurelien 32
	public BarreRepartitionVoteVue() {
33
		initWidget(uiBinder.createAndBindUi(this));
672 gduche 34
		votePrisEnCompte.setVisible(false);
1004 benjamin 35
		voteModifie.setVisible(false);
36
		animerVotePrisEnCompte = new InfoBulleAnim(votePrisEnCompte);
37
		animerVoteModifie = new InfoBulleAnim(voteModifie);
1070 aurelien 38
		boutonOui.setTitle(I18n.getVocabulary().JeSuisDaccord());
39
		boutonNon.setTitle(I18n.getVocabulary().JeNeSuisPasDaccord());
140 aurelien 40
	}
1004 benjamin 41
 
276 aurelien 42
	@Override
1060 gduche 43
	public void afficherVotes(int pourcentage, String nomTaxon, String auteur, boolean estPropositionInitiale) {
611 gduche 44
		this.nomTaxon.setText(nomTaxon);
1060 gduche 45
		this.nomTaxon.setTitle(nomTaxon + " - " + auteur);
1124 gduche 46
		if (pourcentage > 0) {
47
			score.setText(String.valueOf(pourcentage));
48
		}
1051 gduche 49
		if (estPropositionInitiale) {
50
			this.nomTaxon.addStyleName("propositionInitiale");
51
		}
140 aurelien 52
	}
1004 benjamin 53
 
276 aurelien 54
	@Override
611 gduche 55
	public HasClickHandlers getBoutonOui() {
186 aurelien 56
		return boutonOui;
57
	}
1004 benjamin 58
 
276 aurelien 59
	@Override
611 gduche 60
	public HasClickHandlers getBoutonNon() {
186 aurelien 61
		return boutonNon;
62
	}
276 aurelien 63
 
64
	@Override
65
	public void setVoteOuiEffectue() {
611 gduche 66
		boutonOui.setEnabled(false);
1070 aurelien 67
		boutonOui.addStyleName("boutonVoteOuiDesactive");
611 gduche 68
		boutonNon.setEnabled(true);
1070 aurelien 69
		boutonNon.removeStyleName("boutonVoteNonDesactive");
70
		boutonOui.setTitle("");
71
		boutonNon.setTitle(I18n.getVocabulary().JeNeSuisPasDaccord());
276 aurelien 72
	}
73
 
74
	@Override
75
	public void setVoteNonEffectue() {
611 gduche 76
		boutonOui.setEnabled(true);
1070 aurelien 77
		boutonOui.removeStyleName("boutonVoteOuiDesactive");
611 gduche 78
		boutonNon.setEnabled(false);
1070 aurelien 79
		boutonNon.addStyleName("boutonVoteNonDesactive");
80
		boutonOui.setTitle(I18n.getVocabulary().JeSuisDaccord());
81
		boutonNon.setTitle("");
276 aurelien 82
	}
672 gduche 83
 
84
	@Override
85
	public void afficherVotePrisEnCompte(boolean voteOui) {
1004 benjamin 86
		if (voteOui) {
672 gduche 87
			votePrisEnCompte.removeStyleName("votePrisEnCompteNon");
88
			votePrisEnCompte.setStyleName("votePrisEnCompteOui");
89
		} else {
90
			votePrisEnCompte.removeStyleName("votePrisEnCompteOui");
91
			votePrisEnCompte.setStyleName("votePrisEnCompteNon");
92
		}
1004 benjamin 93
		animerVotePrisEnCompte.run(2000);
672 gduche 94
	}
867 aurelien 95
 
1004 benjamin 96
	public void afficherVoteModifie(boolean voteOui) {
97
		if (voteOui) {
98
			voteModifie.removeStyleName("votePrisEnCompteNon");
99
			voteModifie.setStyleName("votePrisEnCompteOui");
100
		} else {
101
			voteModifie.removeStyleName("votePrisEnCompteOui");
102
			voteModifie.setStyleName("votePrisEnCompteNon");
103
		}
104
		animerVoteModifie.run(2000);
105
	}
106
 
867 aurelien 107
	@Override
108
	public void desactiverBoutons() {
109
		boutonNon.setEnabled(false);
110
		boutonOui.setEnabled(false);
111
	}
112
 
113
	@Override
114
	public void activerBoutons() {
115
		boutonNon.setEnabled(true);
116
		boutonOui.setEnabled(true);
117
	}
966 gduche 118
 
119
	@Override
120
	public void toggleNomEspece() {
121
		nomTaxon.setVisible(!nomTaxon.isVisible());
122
	}
1026 gduche 123
 
124
	@Override
1124 gduche 125
	public HasText getScore() {
126
		return score;
1026 gduche 127
	}
140 aurelien 128
}