Subversion Repositories eFlore/Applications.cel

Rev

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

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