Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 965 Rev 1292
1
package org.tela_botanica.client.vues.observation;
1
package org.tela_botanica.client.vues.observation;
2
 
2
 
3
import org.tela_botanica.client.observation.ObservationMediateur;
3
import org.tela_botanica.client.observation.ObservationMediateur;
4
import org.tela_botanica.client.vues.ArbreMotsClesFiltreVue;
-
 
5
import org.tela_botanica.client.vues.observation.filtres.ArbreDateObservationFiltreVue;
4
import org.tela_botanica.client.vues.observation.filtres.ArbreDateObservationFiltreVue;
6
import org.tela_botanica.client.vues.observation.filtres.ArbreEntiteGeographiqueObservationFiltreVue;
5
import org.tela_botanica.client.vues.observation.filtres.ArbreEntiteGeographiqueObservationFiltreVue;
7
import org.tela_botanica.client.vues.observation.filtres.ArbreMotsClesObservationVue;
6
import org.tela_botanica.client.vues.observation.filtres.ArbreMotsClesObservationVue;
8
import org.tela_botanica.client.vues.observation.filtres.RechercheLibreVue;
7
import org.tela_botanica.client.vues.observation.filtres.RechercheLibreVue;
9
 
8
 
10
import com.gwtext.client.core.Ext;
9
import com.gwtext.client.core.Ext;
11
import com.gwtext.client.widgets.Panel;
10
import com.gwtext.client.widgets.Panel;
12
import com.gwtext.client.widgets.layout.RowLayout;
11
import com.gwtext.client.widgets.layout.RowLayout;
13
import com.gwtext.client.widgets.layout.RowLayoutData;
12
import com.gwtext.client.widgets.layout.RowLayoutData;
14
 
13
 
15
/**
14
/**
16
 * Panneau contenant les filtres qu'on peut appliquer aux images
15
 * Panneau contenant les filtres qu'on peut appliquer aux images
17
 * 
16
 * 
18
 * @author aurelien
17
 * @author aurelien
19
 * 
18
 * 
20
 */
19
 */
21
public class PanneauFiltresObservationVues extends Panel {
20
public class PanneauFiltresObservationVues extends Panel {
22
 
21
 
23
	/**
22
	/**
24
	 * Le médiateur associé
23
	 * Le médiateur associé
25
	 */
24
	 */
26
	private ObservationMediateur observationMediateur = null;
25
	private ObservationMediateur observationMediateur = null;
27
	
26
	
28
	/**
27
	/**
29
	 * L'arbre pour la recherche entite geographique
28
	 * L'arbre pour la recherche entite geographique
30
	 * 
29
	 * 
31
	 */
30
	 */
32
	private ArbreEntiteGeographiqueObservationFiltreVue arbreEntiteGeographiqueObservationFiltreVue = null;
31
	private ArbreEntiteGeographiqueObservationFiltreVue arbreEntiteGeographiqueObservationFiltreVue = null;
33
	
32
	
34
	/**
33
	/**
35
	 * L'arbre pour la recherche date
34
	 * L'arbre pour la recherche date
36
	 * 
35
	 * 
37
	 */
36
	 */
38
	private ArbreDateObservationFiltreVue arbreDateObservationFiltreVue = null;
37
	private ArbreDateObservationFiltreVue arbreDateObservationFiltreVue = null;
39
	
38
	
40
	private ArbreMotsClesObservationVue arbreMotsClesObservationVue = null ;
39
	private ArbreMotsClesObservationVue arbreMotsClesObservationVue = null ;
41
	
40
	
42
	private RechercheLibreVue rechercheLibreVue = null;
41
	private RechercheLibreVue rechercheLibreVue = null;
43
	
42
	
44
	
43
	
45
	
44
	
46
 
45
 
47
	/**
46
	/**
48
	 * Construcuteur sans argument (privé car on ne doit pas l'utiliser)
47
	 * Construcuteur sans argument (privé car on ne doit pas l'utiliser)
49
	 */
48
	 */
50
	@SuppressWarnings("unused")
49
	@SuppressWarnings("unused")
51
	private PanneauFiltresObservationVues() {
50
	private PanneauFiltresObservationVues() {
52
		super();
51
		super();
53
	}
52
	}
54
 
53
 
55
	/**
54
	/**
56
	 * Constructeur avec arguments
55
	 * Constructeur avec arguments
57
	 * 
56
	 * 
58
	 * @param im
57
	 * @param im
59
	 *            le médiateur à associer
58
	 *            le médiateur à associer
60
	 */
59
	 */
61
	public PanneauFiltresObservationVues(ObservationMediateur obs) {
60
	public PanneauFiltresObservationVues(ObservationMediateur obs) {
62
		
61
		
63
		super("Filtres");
62
		super("Filtres");
64
		
63
		
65
		observationMediateur = obs;
64
		observationMediateur = obs;
66
		
65
		
67
		this.setCollapsible(true);
66
		this.setCollapsible(true);
68
		//this.setLayout(new AnchorLayout()) ;
67
		//this.setLayout(new AnchorLayout()) ;
69
		this.setLayout(new RowLayout());
68
		this.setLayout(new RowLayout());
70
		
69
		
71
		rechercheLibreVue = new RechercheLibreVue(observationMediateur);
70
		rechercheLibreVue = new RechercheLibreVue(observationMediateur);
72
		
71
		
73
		if(Ext.isIE()) {
72
		if(Ext.isIE()) {
74
			add(rechercheLibreVue);
73
			add(rechercheLibreVue);
75
			rechercheLibreVue.setHeight(110);
74
			rechercheLibreVue.setHeight(110);
76
		} else {
75
		} else {
77
			add(rechercheLibreVue,new RowLayoutData(100));
76
			add(rechercheLibreVue,new RowLayoutData(100));
78
		}
77
		}
79
		rechercheLibreVue.setWidth("100%") ;
78
		rechercheLibreVue.setWidth("100%") ;
80
		rechercheLibreVue.setBorder(false);
79
		rechercheLibreVue.setBorder(false);
81
		
80
		
82
		arbreEntiteGeographiqueObservationFiltreVue = new ArbreEntiteGeographiqueObservationFiltreVue(observationMediateur);
81
		arbreEntiteGeographiqueObservationFiltreVue = new ArbreEntiteGeographiqueObservationFiltreVue(observationMediateur);
83
		add(arbreEntiteGeographiqueObservationFiltreVue,new RowLayoutData());
82
		add(arbreEntiteGeographiqueObservationFiltreVue,new RowLayoutData());
84
		//arbreEntiteGeographiqueObservationFiltreVue.setHeight(300) ;
83
		//arbreEntiteGeographiqueObservationFiltreVue.setHeight(300) ;
85
		arbreEntiteGeographiqueObservationFiltreVue.setWidth("100%") ;
84
		arbreEntiteGeographiqueObservationFiltreVue.setWidth("100%") ;
86
		arbreEntiteGeographiqueObservationFiltreVue.setBorder(false);
85
		arbreEntiteGeographiqueObservationFiltreVue.setBorder(false);
87
		
86
		
88
		arbreDateObservationFiltreVue = new ArbreDateObservationFiltreVue(observationMediateur) ;
87
		arbreDateObservationFiltreVue = new ArbreDateObservationFiltreVue(observationMediateur) ;
89
		//arbreDateObservationFiltreVue.setHeight(300) ;
88
		//arbreDateObservationFiltreVue.setHeight(300) ;
90
		add(arbreDateObservationFiltreVue, new RowLayoutData());
89
		add(arbreDateObservationFiltreVue, new RowLayoutData());
91
		arbreDateObservationFiltreVue.setWidth("100%") ;
90
		arbreDateObservationFiltreVue.setWidth("100%") ;
92
		arbreDateObservationFiltreVue.setBorder(false);
91
		arbreDateObservationFiltreVue.setBorder(false);
93
		
92
		
94
		arbreMotsClesObservationVue = new ArbreMotsClesObservationVue(observationMediateur);
93
		arbreMotsClesObservationVue = new ArbreMotsClesObservationVue(observationMediateur);
95
		add(arbreMotsClesObservationVue, new RowLayoutData());
94
		add(arbreMotsClesObservationVue, new RowLayoutData());
96
		arbreMotsClesObservationVue.setWidth("100%") ;
95
		arbreMotsClesObservationVue.setWidth("100%") ;
97
		arbreMotsClesObservationVue.setTitle("Projets");
96
		arbreMotsClesObservationVue.setTitle("Projets");
98
		arbreMotsClesObservationVue.setTitleCollapse(true);
97
		arbreMotsClesObservationVue.setTitleCollapse(true);
99
		arbreMotsClesObservationVue.setCollapsible(true);
98
		arbreMotsClesObservationVue.setCollapsible(true);
100
		arbreMotsClesObservationVue.setBorder(false);
99
		arbreMotsClesObservationVue.setBorder(false);
101
		
100
		
102
	}
101
	}
103
 
102
 
104
	/**
103
	/**
105
	 * Accesseur pour le filtre des mots clés
104
	 * Accesseur pour le filtre des mots clés
106
	 * 
105
	 * 
107
	 * @return le filtre des mots clés
106
	 * @return le filtre des mots clés
108
	 */
107
	 */
109
	
108
	
110
	public ArbreEntiteGeographiqueObservationFiltreVue getArbreEntiteGeographiqueObservationFiltreVue() {
109
	public ArbreEntiteGeographiqueObservationFiltreVue getArbreEntiteGeographiqueObservationFiltreVue() {
111
		return arbreEntiteGeographiqueObservationFiltreVue;
110
		return arbreEntiteGeographiqueObservationFiltreVue;
112
	}
111
	}
113
	
112
	
114
	public ArbreDateObservationFiltreVue getArbreDateObservationFiltreVue() {
113
	public ArbreDateObservationFiltreVue getArbreDateObservationFiltreVue() {
115
		return arbreDateObservationFiltreVue;
114
		return arbreDateObservationFiltreVue;
116
	}
115
	}
117
	
116
	
118
	public ArbreMotsClesObservationVue getArbreMotsClesObservationVue() {
117
	public ArbreMotsClesObservationVue getArbreMotsClesObservationVue() {
119
		return arbreMotsClesObservationVue;
118
		return arbreMotsClesObservationVue;
120
	}
119
	}
121
	
120
	
122
	public RechercheLibreVue getRechercheLibreVue() {
121
	public RechercheLibreVue getRechercheLibreVue() {
123
		return rechercheLibreVue;
122
		return rechercheLibreVue;
124
	}
123
	}
125
	
124
	
126
	/**
125
	/**
127
	 * Renvoie un booléen indiquant si un des filtres a été modifié
126
	 * Renvoie un booléen indiquant si un des filtres a été modifié
128
	 * 
127
	 * 
129
	 * @return true sur un des filtres est modifié, false sinon
128
	 * @return true sur un des filtres est modifié, false sinon
130
	 */
129
	 */
131
	public boolean renvoyerEtatFiltre() {
130
	public boolean renvoyerEtatFiltre() {
132
 
131
 
133
		return (arbreEntiteGeographiqueObservationFiltreVue.renvoyerEtatFiltre() || arbreDateObservationFiltreVue.renvoyerEtatFiltre() || rechercheLibreVue.renvoyerEtatFiltre());
132
		return (arbreEntiteGeographiqueObservationFiltreVue.renvoyerEtatFiltre() || arbreDateObservationFiltreVue.renvoyerEtatFiltre() || rechercheLibreVue.renvoyerEtatFiltre());
134
				
133
				
135
	}
134
	}
136
 
135
 
137
	/**
136
	/**
138
	 * Renvoie un tableau à 2 niveaux contenant des paires "nom_de_filtre",
137
	 * Renvoie un tableau à 2 niveaux contenant des paires "nom_de_filtre",
139
	 * "valeur"
138
	 * "valeur"
140
	 * 
139
	 * 
141
	 * @return un tableau contenant les noms et les valeurs à filtrer
140
	 * @return un tableau contenant les noms et les valeurs à filtrer
142
	 */
141
	 */
143
	public String[][] renvoyerValeursAFiltrer() {
142
	public String[][] renvoyerValeursAFiltrer() {
144
		String[][] filtres = { arbreEntiteGeographiqueObservationFiltreVue.renvoyerValeursAFiltrer(),
143
		String[][] filtres = { arbreEntiteGeographiqueObservationFiltreVue.renvoyerValeursAFiltrer(),
145
								arbreDateObservationFiltreVue.renvoyerValeursAFiltrer(),
144
								arbreDateObservationFiltreVue.renvoyerValeursAFiltrer(),
146
								arbreMotsClesObservationVue.renvoyerValeursAFiltrer(),
145
								arbreMotsClesObservationVue.renvoyerValeursAFiltrer(),
147
								rechercheLibreVue.renvoyerValeursAFiltrer()
146
								rechercheLibreVue.renvoyerValeursAFiltrer()
148
				 };
147
				 };
149
		
148
		
150
		return filtres;
149
		return filtres;
151
	}
150
	}
152
	
151
	
153
	public void viderFiltres() {
152
	public void viderFiltres() {
154
		arbreEntiteGeographiqueObservationFiltreVue.viderFiltre();
153
		arbreEntiteGeographiqueObservationFiltreVue.viderFiltre();
155
		arbreDateObservationFiltreVue.viderFiltre();
154
		arbreDateObservationFiltreVue.viderFiltre();
156
		arbreMotsClesObservationVue.viderFiltre();
155
		arbreMotsClesObservationVue.viderFiltre();
157
		rechercheLibreVue.viderFiltre();
156
		rechercheLibreVue.viderFiltre();
158
	}
157
	}
159
	
158
	
160
	public void viderFiltres(String nom) {
159
	public void viderFiltres(String nom) {
161
		
160
		
162
		if(nom.equals("id_mots_cles")) {
161
		if(nom.equals("id_mots_cles")) {
163
			arbreMotsClesObservationVue.viderFiltre();
162
			arbreMotsClesObservationVue.viderFiltre();
164
		}
163
		}
165
		
164
		
166
		if(nom.equals("nom_taxon")) {
165
		if(nom.equals("nom_taxon")) {
167
			rechercheLibreVue.viderFiltre();
166
			rechercheLibreVue.viderFiltre();
168
		}
167
		}
169
		
168
		
170
		if(nom.equals("annee") || nom.equals("mois") || nom.equals("jour")) {
169
		if(nom.equals("annee") || nom.equals("mois") || nom.equals("jour")) {
171
			arbreDateObservationFiltreVue.viderFiltre(nom);
170
			arbreDateObservationFiltreVue.viderFiltre(nom);
172
		}
171
		}
173
		
172
		
174
		if(nom.equals("station") || nom.equals("lieudit") || nom.equals("departement") || nom.equals("commune")) {
173
		if(nom.equals("station") || nom.equals("lieudit") || nom.equals("departement") || nom.equals("commune")) {
175
			arbreEntiteGeographiqueObservationFiltreVue.viderFiltre(nom);
174
			arbreEntiteGeographiqueObservationFiltreVue.viderFiltre(nom);
176
		}
175
		}
177
 
176
 
178
	}
177
	}
179
 
178
 
180
}
179
}