Subversion Repositories eFlore/Applications.del

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
178 benjamin 1
package org.tela_botanica.del.client.vues.rechercheimages.resultats;
2
 
3
import java.util.ArrayList;
4
import java.util.List;
5
 
6
import com.google.gwt.core.client.GWT;
590 gduche 7
import com.google.gwt.event.dom.client.HasChangeHandlers;
178 benjamin 8
import com.google.gwt.uibinder.client.UiBinder;
9
import com.google.gwt.uibinder.client.UiField;
459 benjamin 10
import com.google.gwt.user.client.ui.Button;
178 benjamin 11
import com.google.gwt.user.client.ui.Composite;
241 gduche 12
import com.google.gwt.user.client.ui.HTMLPanel;
534 benjamin 13
import com.google.gwt.user.client.ui.HasWidgets;
677 gduche 14
import com.google.gwt.user.client.ui.Hyperlink;
564 benjamin 15
import com.google.gwt.user.client.ui.Label;
590 gduche 16
import com.google.gwt.user.client.ui.ListBox;
178 benjamin 17
import com.google.gwt.user.client.ui.Panel;
18
import com.google.gwt.user.client.ui.Widget;
19
 
379 gduche 20
public class ResultatRechercheImageVue extends Composite implements ResultatRechercheImagePresenteur.Vue {
178 benjamin 21
 
361 benjamin 22
	@UiField
23
	Panel panneauChargement;
534 benjamin 24
	private final List<HasWidgets> panneauxImages = new ArrayList<HasWidgets>();
178 benjamin 25
	private final int nbImagesPerPage = 10;
26
	private int numImage = 0;
27
 
28
	// Annotation can be used to change the name of the associated xml file
29
	// @UiTemplate("ObservationRechercheVue.ui.xml")
30
	interface MyUiBinder extends UiBinder<Widget, ResultatRechercheImageVue> {
31
	}
32
 
33
	private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class);
34
 
35
	@UiField
564 benjamin 36
	Panel panneauPagination, panneauPaginationHaut, zoneTri;
178 benjamin 37
 
38
	@UiField
241 gduche 39
	HTMLPanel imageTable;
564 benjamin 40
 
459 benjamin 41
	@UiField
42
	Button triParNbVotesAscendant, triParNbVotesDescendant, triParDateAscendant, triParDateDescendant;
178 benjamin 43
 
564 benjamin 44
	@UiField
677 gduche 45
	Label aucunResultat;
590 gduche 46
 
47
	@UiField
677 gduche 48
	Hyperlink labelVote, labelDate;
49
 
50
	@UiField
590 gduche 51
	ListBox listeProtocoles;
178 benjamin 52
	// Constructeur
379 gduche 53
	public ResultatRechercheImageVue() {
178 benjamin 54
		initWidget(uiBinder.createAndBindUi(this));
55
	}
56
 
57
	/**
58
	 * Nettoie et remet à zéro les composants du panneau qui doivent l'être
59
	 * */
379 gduche 60
	public void nettoyer() {
178 benjamin 61
		setNumImage(0);
62
		imageTable.clear();
63
		panneauxImages.clear();
64
	}
241 gduche 65
 
379 gduche 66
	public void creerPanneauxObservations(int taille) {
241 gduche 67
 
224 aurelien 68
		panneauxImages.clear();
69
		for (int i = 0; i < taille; i++) {
241 gduche 70
			Panel imagePanel = new HTMLPanel("");
178 benjamin 71
			panneauxImages.add(imagePanel);
72
		}
73
	}
74
 
564 benjamin 75
	public void afficherElementsAucunResultatTrouve() {
178 benjamin 76
		imageTable.clear();
564 benjamin 77
		aucunResultat.setVisible(true);
78
		panneauPaginationHaut.setVisible(false);
79
		panneauPagination.setVisible(false);
80
		zoneTri.setVisible(false);
81
	}
178 benjamin 82
 
564 benjamin 83
	public void afficherElementsResultatsTrouve() {
84
		aucunResultat.setVisible(false);
85
		panneauPaginationHaut.setVisible(true);
86
		panneauPagination.setVisible(true);
87
		zoneTri.setVisible(true);
178 benjamin 88
	}
89
 
90
	public void setNumImage(int numImage) {
91
		this.numImage = numImage;
92
	}
93
 
379 gduche 94
	public void startChargement() {
564 benjamin 95
		panneauChargement.setHeight((this.getOffsetHeight() - (panneauPagination.getOffsetHeight() * 2)) + "px");
178 benjamin 96
		panneauChargement.setVisible(true);
97
	}
98
 
379 gduche 99
	public void stopChargement() {
178 benjamin 100
		panneauChargement.setVisible(false);
101
	}
102
 
241 gduche 103
	public HTMLPanel getImageTable() {
178 benjamin 104
		return imageTable;
105
	}
106
 
107
	public int getNumImage() {
108
		return numImage;
109
	}
110
 
111
	public Panel getPanneauChargement() {
112
		return panneauChargement;
113
	}
114
 
115
	public Panel getPanneauPagination() {
116
		return panneauPagination;
117
	}
564 benjamin 118
 
365 gduche 119
	public Panel getPanneauPaginationHaut() {
120
		return panneauPaginationHaut;
121
	}
178 benjamin 122
 
123
	public int getNbImagesPerPage() {
124
		return nbImagesPerPage;
125
	}
126
 
534 benjamin 127
	public List<HasWidgets> getPanneauxImages() {
178 benjamin 128
		return panneauxImages;
129
	}
564 benjamin 130
 
459 benjamin 131
	public Button getTriParNbVotesAscendant() {
132
		return triParNbVotesAscendant;
133
	}
178 benjamin 134
 
459 benjamin 135
	public Button getTriParNbVotesDescendant() {
136
		return triParNbVotesDescendant;
137
	}
138
 
139
	public Button getTriParDateAscendant() {
140
		return triParDateAscendant;
141
	}
142
 
143
	public Button getTriParDateDescendant() {
144
		return triParDateDescendant;
145
	}
590 gduche 146
 
147
	public void setListeProtocoles(ListBox listeProtocoles) {
148
		this.listeProtocoles = listeProtocoles;
149
	}
150
 
151
	public HasChangeHandlers getListeProtocoles() {
152
		return listeProtocoles;
153
	}
154
 
814 aurelien 155
	public void ajouterProtocole(String NomProtocole, String idProtocole) {
156
		listeProtocoles.addItem(NomProtocole, idProtocole);
590 gduche 157
	}
459 benjamin 158
 
590 gduche 159
	public void selectionnerProtocole(int index) {
160
		listeProtocoles.setSelectedIndex(index);
161
	}
162
 
163
	@Override
814 aurelien 164
	public String getNomProtocoleSelectionne() {
165
		return listeProtocoles.getItemText((listeProtocoles.getSelectedIndex()));
590 gduche 166
	}
167
 
168
	@Override
169
	public int getIdProtocoleSelectionne() {
814 aurelien 170
		return Integer.parseInt(listeProtocoles.getValue((listeProtocoles.getSelectedIndex())));
590 gduche 171
	}
172
 
591 gduche 173
	@Override
677 gduche 174
	public Hyperlink getLabelVote() {
591 gduche 175
		return labelVote;
176
	}
177
 
178
	@Override
179
	public void masquerVoteAscendant() {
180
		triParNbVotesAscendant.setVisible(false);
181
	}
182
 
183
	@Override
184
	public void masquerVoteDescendant() {
185
		triParNbVotesDescendant.setVisible(false);
186
	}
187
 
188
	@Override
189
	public void afficherVoteAscendant() {
190
		triParNbVotesAscendant.setVisible(true);
191
	}
192
 
193
	@Override
194
	public void afficherVoteDescendant() {
195
		triParNbVotesDescendant.setVisible(true);
196
	}
197
 
198
	@Override
677 gduche 199
	public Hyperlink getLabelDate() {
591 gduche 200
		return labelDate;
201
	}
202
 
203
	@Override
204
	public void masquerDateAscendant() {
205
		triParDateAscendant.setVisible(false);
206
	}
207
 
208
	@Override
209
	public void masquerDateDescendant() {
210
		triParDateDescendant.setVisible(false);
211
	}
212
 
213
	@Override
214
	public void afficherDateAscendant() {
215
		triParDateAscendant.setVisible(true);
216
	}
217
 
218
	@Override
219
	public void afficherDateDescendant() {
220
		triParDateDescendant.setVisible(true);
221
	}
178 benjamin 222
}