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
import org.tela_botanica.client.interfaces.Filtrable;
4
import org.tela_botanica.client.interfaces.Filtrable;
5
import org.tela_botanica.client.interfaces.Rafraichissable;
5
import org.tela_botanica.client.interfaces.Rafraichissable;
6
 
6
 
7
import com.google.gwt.user.client.ui.Label;
7
import com.google.gwt.user.client.ui.Label;
8
import com.gwtext.client.core.EventObject;
8
import com.gwtext.client.core.EventObject;
9
import com.gwtext.client.widgets.Panel;
9
import com.gwtext.client.widgets.Panel;
10
import com.gwtext.client.widgets.event.KeyListener;
10
import com.gwtext.client.widgets.event.KeyListener;
11
import com.gwtext.client.widgets.form.TextField;
11
import com.gwtext.client.widgets.form.TextField;
12
 
12
 
13
/**
13
/**
14
 * Fenêtre de recherche pour les mots clés, contenant un champ texte, 
14
 * Fenêtre de recherche pour les mots clés, contenant un champ texte, et un
15
 * et un bouton cliquable
15
 * bouton cliquable
-
 
16
 * 
16
 * @author aurelien
17
 * @author aurelien
17
 *
18
 * 
18
 */
19
 */
19
public class BarreRechercheFiltreVue extends Panel implements Rafraichissable, Filtrable {
20
public class BarreRechercheFiltreVue extends Panel implements Rafraichissable,
-
 
21
		Filtrable {
20
 
22
 
21
	/**
23
	/**
22
	 * Médiateur associé à la vue
24
	 * Médiateur associé à la vue
23
	 */
25
	 */
24
	private ImageMediateur iMediateur = null ;
26
	private ImageMediateur iMediateur = null;
25
	
27
 
26
	/**
28
	/**
27
	 * Barre de recherche 
29
	 * Barre de recherche
28
	 * 
30
	 * 
29
	 */
31
	 */
30
	private TextField champRecherche = null ;
32
	private TextField champRecherche = null;
31
	
33
 
32
	/**
34
	/**
33
	 * Booleen d'etat du filtre
35
	 * Booleen d'etat du filtre
34
	 */
36
	 */
35
	private boolean filtreModifie = false ;
37
	private boolean filtreModifie = false;
36
	
38
 
37
	/**
39
	/**
38
	 * mot(s) à chercher
40
	 * mot(s) à chercher
39
	 */
41
	 */
40
	private String motsAChercher = "" ;
42
	private String motsAChercher = "";
41
	
43
 
42
	/**
44
	/**
43
	 * Constructeur sans argument (privé car ne doit pas être utilisé)
45
	 * Constructeur sans argument (privé car ne doit pas être utilisé)
44
	 */
46
	 */
45
	@SuppressWarnings("unused")
47
	@SuppressWarnings("unused")
46
	private BarreRechercheFiltreVue()
48
	private BarreRechercheFiltreVue() {
47
	{
-
 
48
		super() ;
49
		super();
49
	}
50
	}
50
	
51
 
51
	/**
52
	/**
52
	 * Constructeur avec médiateur 
53
	 * Constructeur avec médiateur
-
 
54
	 * 
53
	 * @param im
55
	 * @param im
54
	 */
56
	 */
55
	public BarreRechercheFiltreVue(ImageMediateur im)
57
	public BarreRechercheFiltreVue(ImageMediateur im) {
56
	{
-
 
57
		super() ;
58
		super();
58
		iMediateur = im ;
59
		iMediateur = im;
59
		
60
 
60
		Label labelRecherche = new Label("Commentaires :") ;
61
		Label labelRecherche = new Label("Commentaires :");
61
		champRecherche = new TextField() ;
62
		champRecherche = new TextField();
62
		
63
 
63
		add(labelRecherche) ;
64
		add(labelRecherche);
64
		add(champRecherche) ;
65
		add(champRecherche);
65
		
66
 
66
		setPaddings(5) ;
67
		setPaddings(5);
67
		setBorder(false) ;
68
		setBorder(false);
68
		setAutoWidth(true) ;
69
		setAutoWidth(true);
69
		setCollapsible(true) ;
70
		setCollapsible(true);
70
		
71
 
71
		ajouterListeners() ;
72
		ajouterListeners();
72
	}
73
	}
73
	
74
 
74
	/**
75
	/**
75
	 * ajoute des listeners
76
	 * ajoute des listeners
76
	 */
77
	 */
77
	private void ajouterListeners()
78
	private void ajouterListeners() {
78
	{
-
 
79
		
79
 
80
		// gestion de la touche entrée
80
		// gestion de la touche entrée
81
		champRecherche.addKeyListener(EventObject.ENTER, new KeyListener() {
81
		champRecherche.addKeyListener(EventObject.ENTER, new KeyListener() {
82
 
82
 
83
			public void onKey(int key, EventObject e) {
83
			public void onKey(int key, EventObject e) {
84
				
84
 
85
				valider() ;
85
				valider();
-
 
86
				getIMediateur().obtenirPhotoGalerie(
86
				getIMediateur().obtenirPhotoGalerie(getIMediateur().getFiltreCommentaires()) ;
87
						getIMediateur().getFiltreCommentaires());
87
			}
88
			}
88
			
-
 
89
			
89
 
90
		}) ;
90
		});
91
	}
91
	}
92
	
92
 
93
	/**
93
	/**
94
	 * Fonction héritée de l'interface rafraichissable
94
	 * Fonction héritée de l'interface rafraichissable
95
	 */
95
	 */
96
	public void rafraichir(Object nouvelleDonnees,
96
	public void rafraichir(Object nouvelleDonnees,
97
			boolean repandreRaffraichissement) {
97
			boolean repandreRaffraichissement) {
98
		
98
 
99
		filtreModifie = false ;
99
		filtreModifie = false;
100
		
100
 
101
	}
101
	}
102
 
102
 
103
	/**
103
	/**
104
	 * renvoie l'état du filtre (modifié ou non)
104
	 * renvoie l'état du filtre (modifié ou non)
-
 
105
	 * 
105
	 * @return l'état du filtre
106
	 * @return l'état du filtre
106
	 */
107
	 */
107
	public boolean renvoyerEtatFiltre() {
108
	public boolean renvoyerEtatFiltre() {
108
		
109
 
109
		return filtreModifie ;
110
		return filtreModifie;
110
	}
111
	}
111
 
112
 
112
	/**
113
	/**
113
	 * Renvoie le nom du filtre
114
	 * Renvoie le nom du filtre
-
 
115
	 * 
114
	 * @return le nom du filtre
116
	 * @return le nom du filtre
115
	 */
117
	 */
116
	public String renvoyerNomFiltre() {
118
	public String renvoyerNomFiltre() {
117
		
119
 
118
		return "Recherche Commentaires" ;
120
		return "Recherche Commentaires";
119
	}
121
	}
120
	
122
 
121
	/**
123
	/**
122
	 * Renvoie un tableau contenant le nom du champ à filtrer et la valeur
124
	 * Renvoie un tableau contenant le nom du champ à filtrer et la valeur
-
 
125
	 * 
123
	 * @return un tableau contenant le nom du champ à filtrer et sa valeur
126
	 * @return un tableau contenant le nom du champ à filtrer et sa valeur
124
	 */
127
	 */
125
	public String[] renvoyerValeursAFiltrer() {
128
	public String[] renvoyerValeursAFiltrer() {
126
		
129
 
-
 
130
		valider() ;
127
		String[] valeurFiltre = {"ci_meta_comment" , motsAChercher } ;
131
		String[] valeurFiltre = { "ci_meta_comment", motsAChercher };
128
		return valeurFiltre ;
132
		return valeurFiltre;
129
	}
133
	}
130
	
134
 
131
	/**
135
	/**
132
	 * Accesseur pour le médiateur
136
	 * Accesseur pour le médiateur
-
 
137
	 * 
133
	 * @return le médiateur associé 
138
	 * @return le médiateur associé
134
	 */
139
	 */
135
	public ImageMediateur getIMediateur()
140
	public ImageMediateur getIMediateur() {
136
	{
-
 
137
		return iMediateur ;
141
		return iMediateur;
138
	}
142
	}
139
	
143
 
140
	/**
144
	/**
141
	 * Effectue quelque opérations dans la classe et envoie une requête de données
145
	 * Effectue quelque opérations dans la classe et envoie une requête de
142
	 * au médiateur  
146
	 * données au médiateur
143
	 */
147
	 */
144
	public void valider()
148
	public void valider() {
145
	{
-
 
146
		filtreModifie = true ;
149
		filtreModifie = true;
147
		motsAChercher = champRecherche.getText() ;
150
		motsAChercher = champRecherche.getText();
148
	}
151
	}
149
	
152
 
150
	/**
153
	/**
151
	 * Affiche la fenetre
154
	 * Affiche la fenetre
152
	 */
155
	 */
153
	public void afficherFiltre() {
156
	public void afficherFiltre() {
154
		
157
 
155
		champRecherche.setValue(motsAChercher) ;
158
		champRecherche.setValue(motsAChercher);
156
	}
159
	}
157
 
160
 
158
}
161
}