Subversion Repositories eFlore/Applications.del

Rev

Rev 2050 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1196 gduche 1
package org.tela_botanica.del.client.vues.identiplante.resultats;
2
 
3
import org.tela_botanica.del.client.modeles.ModeTri;
4
 
5
import com.google.gwt.core.client.GWT;
1934 aurelien 6
import com.google.gwt.event.dom.client.HasClickHandlers;
1196 gduche 7
import com.google.gwt.uibinder.client.UiBinder;
8
import com.google.gwt.uibinder.client.UiField;
9
import com.google.gwt.user.client.ui.Button;
10
import com.google.gwt.user.client.ui.Composite;
11
import com.google.gwt.user.client.ui.HasWidgets;
12
import com.google.gwt.user.client.ui.Label;
13
import com.google.gwt.user.client.ui.Panel;
14
import com.google.gwt.user.client.ui.Widget;
15
 
16
public class ResultatsIdentiplanteVue extends Composite implements ResultatsIdentiplantePresenteur.Vue {
17
 
18
	@UiField
19
	Panel panneauChargement;
20
 
21
	// Gestion d'UiBinder
22
	interface Binder extends UiBinder<Widget, ResultatsIdentiplanteVue> {
23
	}
24
 
25
	private static Binder binder = GWT.create(Binder.class);
26
 
27
	@UiField
28
	Panel zoneObservations, zonePaginationHaut, zonePaginationBas, zoneTri;
29
 
30
	@UiField
1934 aurelien 31
	Button triParDateObservationAscendant, triParDateObservationDescendant,
32
			triParDatePublicationAscendant, triParDatePublicationDescendant,
33
			triParNbCommentairesAscendant, triParNbCommentairesDescendant;
1196 gduche 34
 
35
	@UiField
1934 aurelien 36
	Label aucunResultat, labelDateObservation, labelDatePublication, labelNbCommentaires;
1196 gduche 37
 
38
 
39
	// Constructeur de la vue
40
	public ResultatsIdentiplanteVue() {
41
		initWidget(binder.createAndBindUi(this));
42
	}
43
 
44
	@Override
45
	public HasWidgets getZoneObservations() {
46
		return zoneObservations;
47
	}
48
 
49
	@Override
50
	public HasWidgets getZonePaginationHaut() {
51
		return zonePaginationHaut;
52
	}
53
 
54
	@Override
55
	public HasWidgets getZonePaginationBas() {
56
		return zonePaginationBas;
57
	}
58
 
59
	/**
60
	 * Nettoie et remet à zéro les composants du panneau qui doivent l'être
61
	 * */
62
	@Override
63
	public void nettoyer() {
64
		zoneObservations.clear();
65
	}
66
 
67
	@Override
68
	public void startChargement() {
69
		panneauChargement.setHeight(zoneObservations.getOffsetHeight() + "px");
70
		panneauChargement.setVisible(true);
71
	}
72
 
73
	@Override
74
	public void stopChargement() {
75
		panneauChargement.setVisible(false);
76
	}
77
 
78
	public void afficherElementsAucunResultatTrouve() {
79
		nettoyer();
80
		aucunResultat.setVisible(true);
81
		zonePaginationHaut.setVisible(false);
82
		zonePaginationBas.setVisible(false);
83
		zoneTri.setVisible(false);
84
	}
85
 
86
	public void afficherElementsResultatsTrouves() {
87
		aucunResultat.setVisible(false);
88
		zonePaginationHaut.setVisible(true);
89
		zonePaginationBas.setVisible(true);
90
		zoneTri.setVisible(true);
91
	}
2050 aurelien 92
 
93
	public void afficherCacherZoneTri(boolean afficher) {
94
		zoneTri.setVisible(afficher);
95
	}
1196 gduche 96
 
1934 aurelien 97
	public Button getTriParDateObservationAscendant() {
98
		return triParDateObservationAscendant;
1196 gduche 99
	}
100
 
1934 aurelien 101
	public Button getTriParDateObservationDescendant() {
102
		return triParDateObservationDescendant;
1196 gduche 103
	}
104
 
1934 aurelien 105
	public Button getTriParDatePublicationAscendant() {
106
		return triParDatePublicationAscendant;
107
	}
108
 
109
	public Button getTriParDatePublicationDescendant() {
110
		return triParDatePublicationDescendant;
111
	}
112
 
1196 gduche 113
	@Override
1934 aurelien 114
	public Label getLabelDateObservation() {
115
		return labelDateObservation;
1196 gduche 116
	}
117
 
1934 aurelien 118
	@Override
119
	public Label getLabelDatePublication() {
120
		return labelDatePublication;
121
	}
1196 gduche 122
 
1934 aurelien 123
	@Override
124
	public Label getLabelNbCommentaires() {
125
		return labelNbCommentaires;
126
	}
127
 
128
	@Override
129
	public HasClickHandlers getTriParNbCommentairesAscendant() {
130
		return triParNbCommentairesAscendant;
131
	}
132
 
133
	@Override
134
	public HasClickHandlers getTriParNbCommentairesDescendant() {
135
		return triParNbCommentairesDescendant;
136
	}
137
 
138
	private void cacherTris() {
139
		triParDateObservationAscendant.setVisible(false);
140
		triParDateObservationDescendant.setVisible(false);
141
 
142
		triParDatePublicationDescendant.setVisible(false);
143
		triParDatePublicationAscendant.setVisible(false);
144
 
145
		triParNbCommentairesAscendant.setVisible(false);
146
		triParNbCommentairesDescendant.setVisible(false);
147
	}
148
 
1196 gduche 149
	/**
150
	 * En fonction du sens du tri (ascendant ou descendant), on change l'affichage des
151
	 * boutons de tri pour masquer que celui qui doit être cliquable.
152
	 * @param ModeTri le mode Ascendant ou Descendant
153
	 * */
1934 aurelien 154
	@Override
155
	public void setModeTriPublication(ModeTri mode) {
156
		cacherTris();
1196 gduche 157
		if (mode == ModeTri.TRI_ASCENDANT) {
1934 aurelien 158
			triParDatePublicationAscendant.setVisible(true);
159
			triParDatePublicationDescendant.setVisible(false);
1196 gduche 160
		} else {
1934 aurelien 161
			triParDatePublicationDescendant.setVisible(true);
162
			triParDatePublicationAscendant.setVisible(false);
1196 gduche 163
		}
164
	}
1934 aurelien 165
 
166
	/**
167
	 * En fonction du sens du tri (ascendant ou descendant), on change l'affichage des
168
	 * boutons de tri pour masquer que celui qui doit être cliquable.
169
	 * @param ModeTri le mode Ascendant ou Descendant
170
	 * */
171
	@Override
172
	public void setModeTriObservation(ModeTri mode) {
173
		cacherTris();
174
		if (mode == ModeTri.TRI_ASCENDANT) {
175
			triParDateObservationAscendant.setVisible(true);
176
			triParDateObservationDescendant.setVisible(false);
177
		} else {
178
			triParDateObservationDescendant.setVisible(true);
179
			triParDateObservationAscendant.setVisible(false);
180
		}
181
	}
182
 
183
 
184
	@Override
185
	public void setModeTriNbCommentaires(ModeTri mode) {
186
		cacherTris();
187
		if (mode == ModeTri.TRI_ASCENDANT) {
188
			triParNbCommentairesAscendant.setVisible(true);
189
			triParNbCommentairesDescendant.setVisible(false);
190
		} else {
191
			triParNbCommentairesDescendant.setVisible(true);
192
			triParNbCommentairesAscendant.setVisible(false);
193
		}
194
	}
1196 gduche 195
}