Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 683 → Rev 684

/trunk/src/org/tela_botanica/client/vues/image/BarreOutilsVue.java
1,10 → 1,19
package org.tela_botanica.client.vues.image;
 
import org.tela_botanica.client.Util;
import org.tela_botanica.client.image.ImageMediateur;
import org.tela_botanica.client.vues.MenuAideVue;
import org.tela_botanica.client.vues.image.filtres.MenuFiltreVue;
 
import com.google.gwt.dev.util.collect.HashMap;
import com.google.gwt.user.client.Window;
import com.gwtext.client.core.EventCallback;
import com.gwtext.client.core.EventObject;
import com.gwtext.client.core.Ext;
import com.gwtext.client.widgets.Toolbar;
import com.gwtext.client.widgets.ToolbarItem;
import com.gwtext.client.widgets.ToolbarMenuButton;
import com.gwtext.client.widgets.ToolbarTextItem;
 
/**
* Barre d'outils contenant le menu de gestion des images (accessible aussi par
42,6 → 51,11
* Le menu de gestion des filtres
*/
MenuFiltreVue filtreMenu = null;
/**
* L'item affichant les filtres en cours
*/
ToolbarTextItem texteFiltres;
 
/**
* Le menu de gestion utilisateur
78,8 → 92,12
//aideMenu = new MenuAideVue(im);
images = new ToolbarMenuButton("Fichiers", imageMenu);
//aide = new ToolbarMenuButton("Aide", aideMenu);
 
texteFiltres = new ToolbarTextItem("");
this.addButton(images);
this.addItem(texteFiltres);
//this.addButton(aide);
}
 
96,5 → 114,89
public ImageMediateur getIMediateur() {
return iMediateur;
}
public void setFiltresEnCours(String[][] filtresEnCours) {
String texteFiltresEnCours = "";
for(int i = 0; i < filtresEnCours.length; i++) {
if(Util.filtreValide(filtresEnCours[i])) {
if(!texteFiltresEnCours.equals("")) {
texteFiltresEnCours += " - ";
}
texteFiltresEnCours += "<span class=\"affichage_filtre\">"+
transformerNomFiltre(filtresEnCours[i][0])+": "+transformerValeurFiltre(filtresEnCours[i][0], filtresEnCours[i][1])+
" <input value=\"X\" type=\"button\" rel=\""+filtresEnCours[i][0]+"\" id=\"bouton_raz_filtres_img"+filtresEnCours[i][0]+"\" />"+
"</span>";
}
}
if(!texteFiltresEnCours.equals("")) {
texteFiltresEnCours = "- <span class=\"indicateur_filtres\"> Filtres - "+texteFiltresEnCours+"</span>";
}
texteFiltres.setText(texteFiltresEnCours);
for(int i = 0; i < filtresEnCours.length; i++) {
if(Util.filtreValide(filtresEnCours[i])) {
if(Ext.get("bouton_raz_filtres_img"+filtresEnCours[i][0]) != null) {
Ext.get("bouton_raz_filtres_img"+filtresEnCours[i][0]).addListener("click", new EventCallback() {
public void execute(EventObject e) {
e.stopEvent();
iMediateur.viderFiltre(e.getTarget().getAttribute("rel"));
}
});
}
}
}
}
private String transformerNomFiltre(String nomFiltre) {
//TODO: si le nombre de filtre s'agrandit faire une hashmap
// (pas la peine pour le moment, un seul nom à changer)
if(nomFiltre.equals("ci_recherche_generale")) {
nomFiltre = "recherche";
}
//TODO: si le nombre de filtre s'agrandit faire une hashmap
// (pas la peine pour le moment, un seul nom à changer)
if(nomFiltre.equals("ci_meta_mots_cles")) {
nomFiltre = "mots clés";
}
return nomFiltre;
}
private String transformerValeurFiltre(String nomFiltre, String valeurFiltre) {
String valeurFiltreTransformee = valeurFiltre;
if(nomFiltre.equals("ci_meta_mots_cles")) {
String[] tabMotsCles = valeurFiltre.split(";");
String[] tabMotsClesTexte = iMediateur.obtenirTexteMotsCles(tabMotsCles);
if(tabMotsClesTexte.length > 1) {
valeurFiltreTransformee = Util.implode(",", tabMotsClesTexte);
} else {
valeurFiltreTransformee = tabMotsClesTexte[0];
}
}
if(nomFiltre.equals("mois")) {
valeurFiltreTransformee = Util.renvoyerMois(Integer.parseInt(valeurFiltre));
}
 
return valeurFiltreTransformee;
}
}