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.moyennevotes;
9 benjamin 2
 
3
import java.util.List;
4
 
5
import org.cobogw.gwt.user.client.ui.Rating;
1084 gduche 6
import org.tela_botanica.del.client.composants.votes.barrerepartition.InfoBulleAnim;
423 gduche 7
import org.tela_botanica.del.client.i18n.I18n;
148 benjamin 8
import org.tela_botanica.del.client.modeles.VoteProtocole;
9 benjamin 9
 
66 gduche 10
import com.google.gwt.core.client.GWT;
423 gduche 11
import com.google.gwt.event.dom.client.ClickEvent;
12
import com.google.gwt.event.dom.client.ClickHandler;
629 aurelien 13
import com.google.gwt.event.dom.client.HasChangeHandlers;
423 gduche 14
import com.google.gwt.event.dom.client.HasClickHandlers;
1095 gduche 15
import com.google.gwt.event.dom.client.HasMouseMoveHandlers;
66 gduche 16
import com.google.gwt.uibinder.client.UiBinder;
17
import com.google.gwt.uibinder.client.UiField;
423 gduche 18
import com.google.gwt.user.client.Window;
19
import com.google.gwt.user.client.ui.Button;
9 benjamin 20
import com.google.gwt.user.client.ui.Composite;
66 gduche 21
import com.google.gwt.user.client.ui.FocusPanel;
423 gduche 22
import com.google.gwt.user.client.ui.HasText;
629 aurelien 23
import com.google.gwt.user.client.ui.HasWidgets;
66 gduche 24
import com.google.gwt.user.client.ui.Label;
1084 gduche 25
import com.google.gwt.user.client.ui.Panel;
66 gduche 26
import com.google.gwt.user.client.ui.Widget;
9 benjamin 27
 
629 aurelien 28
public class MoyenneVoteVue extends Composite implements MoyenneVotePresenteur.Vue {
9 benjamin 29
 
66 gduche 30
	// Annotation can be used to change the name of the associated xml file
31
	// @UiTemplate("MoyenneVoteVue.ui.xml")
32
	interface MyUiBinder extends UiBinder<Widget, MoyenneVoteVue> {
33
	}
34
 
35
	private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class);
423 gduche 36
	private Rating votes;
37
	private int valeurOrigine;
1084 gduche 38
	private InfoBulleAnim animerVotePrisEnCompte;
1092 gduche 39
	private InfoBulleAnim animerVoteModifie;
423 gduche 40
 
66 gduche 41
	@UiField
42
	FocusPanel voter;
43
 
44
	@UiField
1092 gduche 45
	Panel votePrisEnCompte, voteModifie, zoneFleur;
1084 gduche 46
 
47
	@UiField
1088 gduche 48
	Label nbVotes, protocole, noteGenerale;
66 gduche 49
 
423 gduche 50
	@UiField
51
	Button boutonVoter, boutonAnnuler;
52
 
1095 gduche 53
	@UiField
54
	Label zoneVoter;
55
 
629 aurelien 56
	public MoyenneVoteVue() {
66 gduche 57
		initWidget(uiBinder.createAndBindUi(this));
423 gduche 58
		votes = new Rating(0, 5);
59
		votes.setReadOnly(false);
60
		voter.add(votes);
61
		masquerBoutonAnnuler();
62
		masquerBoutonVoter();
1084 gduche 63
		votePrisEnCompte.setVisible(false);
64
		animerVotePrisEnCompte = new InfoBulleAnim(votePrisEnCompte);
1092 gduche 65
		animerVoteModifie = new InfoBulleAnim(voteModifie);
423 gduche 66
	}
67
 
68
	public HasClickHandlers getBoutonVoter() {
69
		return boutonVoter;
70
	}
71
 
72
	public HasClickHandlers getBoutonAnnuler() {
73
		return boutonAnnuler;
74
	}
75
 
76
	public HasText getNbVotes() {
77
		return nbVotes;
78
	}
79
 
80
	public HasClickHandlers getVotes() {
81
		return votes;
82
	}
83
 
629 aurelien 84
	public int getValeurVote() {
85
		return votes.getValue();
86
	}
87
 
423 gduche 88
	public void afficherBoutonVoter() {
89
		boutonVoter.setVisible(true);
90
	}
91
 
92
	public void afficherBoutonAnnuler() {
93
		boutonAnnuler.setVisible(true);
94
	}
95
 
96
	public void masquerBoutonVoter() {
97
		boutonVoter.setVisible(false);
98
	}
99
 
100
	public void masquerBoutonAnnuler() {
101
		boutonAnnuler.setVisible(false);
102
	}
103
 
104
	public void afficherNbVotes () {
105
		nbVotes.setVisible(true);
106
	}
107
 
108
	public void masquerNbVotes () {
109
		nbVotes.setVisible(false);
110
	}
111
 
112
	public void reinitialiserVotes() {
113
		votes.setValue(valeurOrigine);
114
	}
115
 
1088 gduche 116
	public void rafraichir(int voteUtilisateur, int nombreVotes) {
117
		valeurOrigine = voteUtilisateur;
1086 gduche 118
		String valeurVote = nombreVotes+" "+I18n.getVocabulary().nbVotes();
119
		if (nombreVotes > 1) {
120
			valeurVote += "s";
121
		}
122
		nbVotes.setText(valeurVote);
1088 gduche 123
		votes.setValue(voteUtilisateur);
9 benjamin 124
	}
629 aurelien 125
 
126
	@Override
127
	public void ajouterAuParent(HasWidgets composite) {
128
		composite.add(this);
129
	}
1084 gduche 130
 
131
	@Override
132
	public void afficherVotePrisEnCompte() {
133
		votePrisEnCompte.setStyleName("votePrisEnCompteOui");
134
		animerVotePrisEnCompte.run(2000);
135
	}
1085 gduche 136
 
137
	public HasWidgets getZoneFleur() {
138
		return zoneFleur;
139
	}
1086 gduche 140
 
141
	public HasText getZoneProtocole() {
142
		return protocole;
143
	}
1088 gduche 144
 
145
	public void setNoteGenerale(int note) {
146
		noteGenerale.setText(" : " + note);
147
	}
1092 gduche 148
 
1266 aurelien 149
	@Override
150
	public void setNoteGeneraleToolTip(double valeurVoteTotalPrecise) {
151
		double valeurArrondie = (double)Math.round(valeurVoteTotalPrecise * 1000) / 1000;
152
		zoneFleur.setTitle(I18n.getVocabulary().votesMoyennePrecise()+valeurArrondie);
153
	}
154
 
1092 gduche 155
	public void afficherVoteModifie() {
156
		voteModifie.setStyleName("votePrisEnCompteOui");
157
		animerVoteModifie.run(2000);
158
	}
1095 gduche 159
 
160
	public HasMouseMoveHandlers getZoneVoter() {
161
		return zoneVoter;
162
	}
163
 
164
	public void masquerZoneVoter() {
165
		zoneVoter.setVisible(false);
166
	}
9 benjamin 167
}