Subversion Repositories eFlore/Applications.del

Rev

Rev 210 | Go to most recent revision | Details | Compare with Previous | 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 org.tela_botanica.del.client.modeles.Image;
7
 
8
import com.google.gwt.core.client.GWT;
9
import com.google.gwt.uibinder.client.UiBinder;
10
import com.google.gwt.uibinder.client.UiField;
11
import com.google.gwt.user.client.ui.Composite;
12
import com.google.gwt.user.client.ui.FlexTable;
13
import com.google.gwt.user.client.ui.FlowPanel;
14
import com.google.gwt.user.client.ui.Panel;
15
import com.google.gwt.user.client.ui.VerticalPanel;
16
import com.google.gwt.user.client.ui.Widget;
17
 
18
public class ResultatRechercheImageVue extends Composite {
19
 
20
	private final VerticalPanel mainPanel = new VerticalPanel();
21
	private final Panel panneauChargement = new FlowPanel();
22
	private final List<Panel> panneauxImages = new ArrayList<Panel>();
23
	private int nbCol = 5;
24
	private final int nbImagesPerPage = 10;
25
	private int numImage = 0;
26
 
27
	// Annotation can be used to change the name of the associated xml file
28
	// @UiTemplate("ObservationRechercheVue.ui.xml")
29
	interface MyUiBinder extends UiBinder<Widget, ResultatRechercheImageVue> {
30
	}
31
 
32
	private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class);
33
 
34
	@UiField
35
	Panel panneauPagination;
36
 
37
	@UiField
38
	FlexTable imageTable;
39
 
40
	// Constructeur
41
	protected ResultatRechercheImageVue() {
42
 
43
		initWidget(uiBinder.createAndBindUi(this));
44
 
45
	}
46
 
47
	/**
48
	 * Nettoie et remet à zéro les composants du panneau qui doivent l'être
49
	 * */
50
	protected void nettoyer() {
51
		setNumImage(0);
52
		imageTable.clear();
53
		panneauxImages.clear();
54
	}
224 aurelien 55
 
56
	protected void creerPanneauxObservations(int taille) {
57
 
58
		panneauxImages.clear();
59
		for (int i = 0; i < taille; i++) {
178 benjamin 60
			Panel imagePanel = new VerticalPanel();
61
			panneauxImages.add(imagePanel);
62
		}
63
	}
64
 
224 aurelien 65
	protected void afficherPanneauxObservation(List<Panel> imagesPanel) {
66
 
178 benjamin 67
		imageTable.clear();
224 aurelien 68
		for (int i = 0; i < imagesPanel.size(); i++) {
69
			VerticalPanel panneauImage = (VerticalPanel)imagesPanel.get(i);
70
			panneauxImages.add(panneauImage);
71
			imageTable.setWidget((i) / nbCol, (i) % nbCol, panneauImage);
72
		}
178 benjamin 73
 
74
	}
75
 
76
	public void setNumImage(int numImage) {
77
		this.numImage = numImage;
78
	}
79
 
80
	protected void startChargement() {
81
		panneauChargement.setVisible(true);
82
	}
83
 
84
	protected void stopChargement() {
85
		panneauChargement.setVisible(false);
86
	}
87
 
88
	public FlexTable getImageTable() {
89
		return imageTable;
90
	}
91
 
92
	public int getNumImage() {
93
		return numImage;
94
	}
95
 
96
	public Panel getPanneauChargement() {
97
		return panneauChargement;
98
	}
99
 
100
	public Panel getPanneauPagination() {
101
		return panneauPagination;
102
	}
103
 
104
	public int getNbImagesPerPage() {
105
		return nbImagesPerPage;
106
	}
107
 
108
	public Panel getPanel() {
109
		return mainPanel;
110
	}
111
 
112
	public List<Panel> getPanneauxImages() {
113
		return panneauxImages;
114
	}
115
 
116
}