Subversion Repositories eFlore/Applications.cel

Rev

Rev 54 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 54 Rev 99
1
package org.tela_botanica.client.vues;
1
package org.tela_botanica.client.vues;
2
 
2
 
3
import org.tela_botanica.client.image.ImageMediateur;
3
import org.tela_botanica.client.image.ImageMediateur;
4
 
4
 
5
import com.gwtext.client.core.EventObject;
5
import com.gwtext.client.core.EventObject;
6
import com.gwtext.client.widgets.Button;
6
import com.gwtext.client.widgets.Button;
7
import com.gwtext.client.widgets.Panel;
7
import com.gwtext.client.widgets.Panel;
8
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
8
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
9
import com.gwtext.client.widgets.layout.VerticalLayout;
9
import com.gwtext.client.widgets.layout.VerticalLayout;
10
 
10
 
11
/**
11
/**
12
 * Panneau contenant les filtres qu'on peut appliquer aux images
12
 * Panneau contenant les filtres qu'on peut appliquer aux images
13
 * 
13
 * 
14
 * @author aurelien
14
 * @author aurelien
15
 * 
15
 * 
16
 */
16
 */
17
public class PanneauFiltresVues extends Panel {
17
public class PanneauFiltresImagesVues extends Panel {
18
 
18
 
19
	/**
19
	/**
20
	 * Le médiateur associé
20
	 * Le médiateur associé
21
	 */
21
	 */
22
	private ImageMediateur iMediateur = null;
22
	private ImageMediateur iMediateur = null;
23
 
23
 
24
	/**
24
	/**
25
	 * L'arbre pour la recherche par mots clés
25
	 * L'arbre pour la recherche par mots clés
26
	 */
26
	 */
27
	private ArbreMotsClesFiltreVue motsClesFiltres = null;
27
	private ArbreMotsClesFiltreVue motsClesFiltres = null;
28
	/**
28
	/**
29
	 * La barre de recherche par commentaires
29
	 * La barre de recherche par commentaires
30
	 */
30
	 */
31
	private BarreRechercheFiltreVue commFiltresVues = null;
31
	private BarreRechercheFiltreVue commFiltresVues = null;
32
 
32
 
33
	/**
33
	/**
34
	 * Recherche par date
34
	 * Recherche par date
35
	 */
35
	 */
36
	private DateFiltreVue dateFiltreVues = null;
36
	private DateFiltreVue dateFiltreVues = null;
37
 
37
 
38
	/**
38
	/**
39
	 * Recherche par contenu du tampon
39
	 * Recherche par contenu du tampon
40
	 */
40
	 */
41
	private SelectionFiltreVue selectionFiltreVue = null;
41
	private SelectionFiltreVue selectionFiltreVue = null;
42
 
42
 
43
	/**
43
	/**
44
	 * Bouton de validation
44
	 * Bouton de validation
45
	 */
45
	 */
46
	private Button valider = null;
46
	private Button valider = null;
47
 
47
 
48
	/**
48
	/**
49
	 * Construcuteur sans argument (privé car on ne doit pas l'utiliser)
49
	 * Construcuteur sans argument (privé car on ne doit pas l'utiliser)
50
	 */
50
	 */
51
	@SuppressWarnings("unused")
51
	@SuppressWarnings("unused")
52
	private PanneauFiltresVues() {
52
	private PanneauFiltresImagesVues() {
53
		super();
53
		super();
54
	}
54
	}
55
 
55
 
56
	/**
56
	/**
57
	 * Constructeur avec arguments
57
	 * Constructeur avec arguments
58
	 * 
58
	 * 
59
	 * @param im
59
	 * @param im
60
	 *            le médiateur à associer
60
	 *            le médiateur à associer
61
	 */
61
	 */
62
	public PanneauFiltresVues(ImageMediateur im) {
62
	public PanneauFiltresImagesVues(ImageMediateur im) {
63
		super("Rechercher des images");
63
		super("Rechercher des images");
64
		iMediateur = im;
64
		iMediateur = im;
65
 
65
 
66
		this.setCollapsible(true);
66
		this.setCollapsible(true);
67
		setLayout(new VerticalLayout());
67
		setLayout(new VerticalLayout());
68
 
68
 
69
		commFiltresVues = new BarreRechercheFiltreVue(im);
69
		commFiltresVues = new BarreRechercheFiltreVue(im);
70
		add(commFiltresVues);
70
		add(commFiltresVues);
71
 
71
 
72
		dateFiltreVues = new DateFiltreVue(im);
72
		dateFiltreVues = new DateFiltreVue(im);
73
		add(dateFiltreVues);
73
		add(dateFiltreVues);
74
 
74
 
75
		selectionFiltreVue = new SelectionFiltreVue(im);
75
		selectionFiltreVue = new SelectionFiltreVue(im);
76
		add(selectionFiltreVue);
76
		add(selectionFiltreVue);
77
 
77
 
78
		motsClesFiltres = new ArbreMotsClesFiltreVue(im);
78
		motsClesFiltres = new ArbreMotsClesFiltreVue(im);
79
		add(motsClesFiltres);
79
		add(motsClesFiltres);
80
 
80
 
81
		Panel panelValidation = new Panel();
81
		Panel panelValidation = new Panel();
82
		valider = new Button("Rechercher");
82
		valider = new Button("Rechercher");
83
		panelValidation.add(valider);
83
		panelValidation.add(valider);
84
		panelValidation.setBorder(false);
84
		panelValidation.setBorder(false);
85
		add(panelValidation);
85
		add(panelValidation);
86
 
86
 
87
		valider.addListener(new ButtonListenerAdapter() {
87
		valider.addListener(new ButtonListenerAdapter() {
88
 
88
 
89
			public void onClick(Button button, EventObject e) {
89
			public void onClick(Button button, EventObject e) {
90
 
90
 
91
				iMediateur.obtenirPhotoGalerie(iMediateur.getGalerieImage());
91
				iMediateur.obtenirPhotoGalerie(iMediateur.getGalerieImage());
92
 
92
 
93
			}
93
			}
94
 
94
 
95
		});
95
		});
96
	}
96
	}
97
 
97
 
98
	/**
98
	/**
99
	 * Accesseur pour le filtre des mots clés
99
	 * Accesseur pour le filtre des mots clés
100
	 * 
100
	 * 
101
	 * @return le filtre des mots clés
101
	 * @return le filtre des mots clés
102
	 */
102
	 */
103
	public ArbreMotsClesFiltreVue getMotsClesFiltre() {
103
	public ArbreMotsClesFiltreVue getMotsClesFiltre() {
104
		return motsClesFiltres;
104
		return motsClesFiltres;
105
	}
105
	}
106
 
106
 
107
	/**
107
	/**
108
	 * Accesseur pour le filtre par commentaire
108
	 * Accesseur pour le filtre par commentaire
109
	 * 
109
	 * 
110
	 * @return le filtre des commentaires
110
	 * @return le filtre des commentaires
111
	 */
111
	 */
112
	public BarreRechercheFiltreVue getBarreRecherche() {
112
	public BarreRechercheFiltreVue getBarreRecherche() {
113
		return commFiltresVues;
113
		return commFiltresVues;
114
	}
114
	}
115
 
115
 
116
	/**
116
	/**
117
	 * Renvoie un booléen indiquant si un des filtres a été modifié
117
	 * Renvoie un booléen indiquant si un des filtres a été modifié
118
	 * 
118
	 * 
119
	 * @return true sur un des filtres est modifié, false sinon
119
	 * @return true sur un des filtres est modifié, false sinon
120
	 */
120
	 */
121
	public boolean renvoyerEtatFiltre() {
121
	public boolean renvoyerEtatFiltre() {
122
 
122
 
123
		return (motsClesFiltres.renvoyerEtatFiltre()
123
		return (motsClesFiltres.renvoyerEtatFiltre()
124
				|| commFiltresVues.renvoyerEtatFiltre()
124
				|| commFiltresVues.renvoyerEtatFiltre()
125
				|| dateFiltreVues.renvoyerEtatFiltre() 
125
				|| dateFiltreVues.renvoyerEtatFiltre() 
126
				|| selectionFiltreVue.renvoyerEtatFiltre());
126
				|| selectionFiltreVue.renvoyerEtatFiltre());
127
	}
127
	}
128
 
128
 
129
	/**
129
	/**
130
	 * Renvoie un tableau à 2 niveaux contenant des paires "nom_de_filtre",
130
	 * Renvoie un tableau à 2 niveaux contenant des paires "nom_de_filtre",
131
	 * "valeur"
131
	 * "valeur"
132
	 * 
132
	 * 
133
	 * @return un tableau contenant les noms et les valeurs à filtrer
133
	 * @return un tableau contenant les noms et les valeurs à filtrer
134
	 */
134
	 */
135
	public String[][] renvoyerValeursAFiltrer() {
135
	public String[][] renvoyerValeursAFiltrer() {
136
		String[][] filtres = { motsClesFiltres.renvoyerValeursAFiltrer(),
136
		String[][] filtres = { motsClesFiltres.renvoyerValeursAFiltrer(),
137
				commFiltresVues.renvoyerValeursAFiltrer(),
137
				commFiltresVues.renvoyerValeursAFiltrer(),
138
				dateFiltreVues.renvoyerValeursAFiltrer(),
138
				dateFiltreVues.renvoyerValeursAFiltrer(),
139
				selectionFiltreVue.renvoyerValeursAFiltrer() };
139
				selectionFiltreVue.renvoyerValeursAFiltrer() };
140
		
140
		
141
		return filtres;
141
		return filtres;
142
	}
142
	}
143
 
143
 
144
}
144
}