Subversion Repositories eFlore/Applications.del

Rev

Rev 1934 | Go to most recent revision | Details | 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;
6
import com.google.gwt.uibinder.client.UiBinder;
7
import com.google.gwt.uibinder.client.UiField;
8
import com.google.gwt.user.client.ui.Button;
9
import com.google.gwt.user.client.ui.Composite;
10
import com.google.gwt.user.client.ui.HasWidgets;
11
import com.google.gwt.user.client.ui.Label;
12
import com.google.gwt.user.client.ui.Panel;
13
import com.google.gwt.user.client.ui.Widget;
14
 
15
public class ResultatsIdentiplanteVue extends Composite implements ResultatsIdentiplantePresenteur.Vue {
16
 
17
	@UiField
18
	Panel panneauChargement;
19
 
20
	// Gestion d'UiBinder
21
	interface Binder extends UiBinder<Widget, ResultatsIdentiplanteVue> {
22
	}
23
 
24
	private static Binder binder = GWT.create(Binder.class);
25
 
26
	@UiField
27
	Panel zoneObservations, zonePaginationHaut, zonePaginationBas, zoneTri;
28
 
29
	@UiField
30
	Button triParDateAscendant, triParDateDescendant;
31
 
32
	@UiField
33
	Label aucunResultat, labelDate;
34
 
35
 
36
	// Constructeur de la vue
37
	public ResultatsIdentiplanteVue() {
38
		initWidget(binder.createAndBindUi(this));
39
	}
40
 
41
	@Override
42
	public HasWidgets getZoneObservations() {
43
		return zoneObservations;
44
	}
45
 
46
	@Override
47
	public HasWidgets getZonePaginationHaut() {
48
		return zonePaginationHaut;
49
	}
50
 
51
	@Override
52
	public HasWidgets getZonePaginationBas() {
53
		return zonePaginationBas;
54
	}
55
 
56
	/**
57
	 * Nettoie et remet à zéro les composants du panneau qui doivent l'être
58
	 * */
59
	@Override
60
	public void nettoyer() {
61
		zoneObservations.clear();
62
	}
63
 
64
	@Override
65
	public void startChargement() {
66
		panneauChargement.setHeight(zoneObservations.getOffsetHeight() + "px");
67
		panneauChargement.setVisible(true);
68
	}
69
 
70
	@Override
71
	public void stopChargement() {
72
		panneauChargement.setVisible(false);
73
	}
74
 
75
	public void afficherElementsAucunResultatTrouve() {
76
		nettoyer();
77
		aucunResultat.setVisible(true);
78
		zonePaginationHaut.setVisible(false);
79
		zonePaginationBas.setVisible(false);
80
		zoneTri.setVisible(false);
81
	}
82
 
83
	public void afficherElementsResultatsTrouves() {
84
		aucunResultat.setVisible(false);
85
		zonePaginationHaut.setVisible(true);
86
		zonePaginationBas.setVisible(true);
87
		zoneTri.setVisible(true);
88
	}
89
 
90
	public Button getTriParDateAscendant() {
91
		return triParDateAscendant;
92
	}
93
 
94
	public Button getTriParDateDescendant() {
95
		return triParDateDescendant;
96
	}
97
 
98
	@Override
99
	public Label getLabelDate() {
100
		return labelDate;
101
	}
102
 
103
 
104
	/**
105
	 * En fonction du sens du tri (ascendant ou descendant), on change l'affichage des
106
	 * boutons de tri pour masquer que celui qui doit être cliquable.
107
	 * @param ModeTri le mode Ascendant ou Descendant
108
	 * */
109
	public void setModeTri(ModeTri mode) {
110
		if (mode == ModeTri.TRI_ASCENDANT) {
111
			triParDateAscendant.setVisible(true);
112
			triParDateDescendant.setVisible(false);
113
		} else {
114
			triParDateDescendant.setVisible(true);
115
			triParDateAscendant.setVisible(false);
116
		}
117
	}
118
}