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;
672 gduche 7
import com.google.gwt.user.client.Element;
611 gduche 8
import com.google.gwt.user.client.Window;
140 aurelien 9
import com.google.gwt.user.client.ui.Composite;
611 gduche 10
import com.google.gwt.user.client.ui.Label;
11
import com.google.gwt.user.client.ui.Panel;
186 aurelien 12
import com.google.gwt.user.client.ui.PushButton;
140 aurelien 13
import com.google.gwt.user.client.ui.Widget;
14
 
276 aurelien 15
public class BarreRepartitionVoteVue extends Composite implements BarreRepartitionVotePresenteur.Vue {
140 aurelien 16
 
17
	interface MyUiBinder extends UiBinder<Widget, BarreRepartitionVoteVue> {}
611 gduche 18
	private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class);
672 gduche 19
	private InfoBulleAnim animer;
140 aurelien 20
 
611 gduche 21
	@UiField Label nomTaxon;
672 gduche 22
	@UiField Panel barreOui, barreNon, votePrisEnCompte;
611 gduche 23
	@UiField PushButton boutonOui, boutonNon;
140 aurelien 24
 
25
	public BarreRepartitionVoteVue() {
26
		initWidget(uiBinder.createAndBindUi(this));
672 gduche 27
		votePrisEnCompte.setVisible(false);
28
		animer = new InfoBulleAnim(votePrisEnCompte);
140 aurelien 29
	}
30
 
276 aurelien 31
	@Override
611 gduche 32
	public void afficherVotes(int pourcentage, String nomTaxon) {
33
		this.nomTaxon.setText(nomTaxon);
660 gduche 34
		this.nomTaxon.setTitle(nomTaxon);
144 aurelien 35
 
611 gduche 36
		if (pourcentage > -1) {
37
 
38
			int pourcentageNon = 100-pourcentage;
39
			barreOui.setWidth(pourcentage + "%");
40
			barreNon.setWidth(pourcentageNon + "%");
41
		} else {
42
			barreNon.setWidth("0px");
43
			barreOui.setWidth("0px");
172 aurelien 44
		}
140 aurelien 45
	}
172 aurelien 46
 
276 aurelien 47
	@Override
611 gduche 48
	public HasClickHandlers getBoutonOui() {
186 aurelien 49
		return boutonOui;
50
	}
51
 
276 aurelien 52
	@Override
611 gduche 53
	public HasClickHandlers getBoutonNon() {
186 aurelien 54
		return boutonNon;
55
	}
276 aurelien 56
 
57
	@Override
58
	public void setVoteOuiEffectue() {
611 gduche 59
		boutonOui.setEnabled(false);
60
		boutonNon.setEnabled(true);
276 aurelien 61
	}
62
 
63
	@Override
64
	public void setVoteNonEffectue() {
611 gduche 65
		boutonOui.setEnabled(true);
66
		boutonNon.setEnabled(false);
276 aurelien 67
	}
672 gduche 68
 
69
	@Override
70
	public void afficherVotePrisEnCompte(boolean voteOui) {
71
		if (voteOui) {
72
			votePrisEnCompte.removeStyleName("votePrisEnCompteNon");
73
			votePrisEnCompte.setStyleName("votePrisEnCompteOui");
74
		} else {
75
			votePrisEnCompte.removeStyleName("votePrisEnCompteOui");
76
			votePrisEnCompte.setStyleName("votePrisEnCompteNon");
77
		}
78
		animer.run(2000);
79
	}
867 aurelien 80
 
81
	@Override
82
	public void desactiverBoutons() {
83
		boutonNon.setEnabled(false);
84
		boutonOui.setEnabled(false);
85
	}
86
 
87
	@Override
88
	public void activerBoutons() {
89
		boutonNon.setEnabled(true);
90
		boutonOui.setEnabled(true);
91
	}
966 gduche 92
 
93
	@Override
94
	public void toggleNomEspece() {
95
		nomTaxon.setVisible(!nomTaxon.isVisible());
96
	}
140 aurelien 97
}