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