Subversion Repositories eFlore/Applications.cel

Rev

Rev 167 | Rev 318 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

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