Rev 195 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
package org.tela_botanica.client.vues.image;import org.tela_botanica.client.image.ImageMediateur;import org.tela_botanica.client.vues.ArbreMotsClesFiltreVue;import com.gwtext.client.core.EventObject;import com.gwtext.client.core.Ext;import com.gwtext.client.widgets.Button;import com.gwtext.client.widgets.Panel;import com.gwtext.client.widgets.event.ButtonListenerAdapter;import com.gwtext.client.widgets.layout.VerticalLayout;/*** Panneau contenant les filtres qu'on peut appliquer aux images** @author aurelien**/public class PanneauFiltresImagesVues extends Panel {/*** Le médiateur associé*/private ImageMediateur iMediateur = null;/*** L'arbre pour la recherche par mots clés*/private ArbreMotsClesFiltreVue motsClesFiltres = null;/*** La barre de recherche par commentaires*/private BarreRechercheFiltreVue commFiltresVues = null;/*** Recherche par date*/private DateFiltreVue dateFiltreVues = null;/*** Recherche par contenu du tampon*/private SelectionFiltreVue selectionFiltreVue = null;/*** Bouton de validation*/private Button valider = null;/*** Construcuteur sans argument (privé car on ne doit pas l'utiliser)*/@SuppressWarnings("unused")private PanneauFiltresImagesVues() {super();}/*** Constructeur avec arguments** @param im* le médiateur à associer*/public PanneauFiltresImagesVues(ImageMediateur im) {super("Filtres");iMediateur = im;this.setCollapsible(true);setLayout(new VerticalLayout());commFiltresVues = new BarreRechercheFiltreVue(im);add(commFiltresVues);dateFiltreVues = new DateFiltreVue(im);add(dateFiltreVues);selectionFiltreVue = new SelectionFiltreVue(im);add(selectionFiltreVue);motsClesFiltres = new ArbreMotsClesFiltreVue(im);add(motsClesFiltres);Panel panelValidation = new Panel();valider = new Button("Rechercher");panelValidation.add(valider);panelValidation.setBorder(false);add(panelValidation);valider.addListener(new ButtonListenerAdapter() {public void onClick(Button button, EventObject e) {iMediateur.obtenirPhotoGalerie(iMediateur.getGalerieImage());}});}/*** Accesseur pour le filtre des mots clés** @return le filtre des mots clés*/public ArbreMotsClesFiltreVue getMotsClesFiltre() {return motsClesFiltres;}/*** Accesseur pour le filtre par commentaire** @return le filtre des commentaires*/public BarreRechercheFiltreVue getBarreRecherche() {return commFiltresVues;}/*** Renvoie un booléen indiquant si un des filtres a été modifié** @return true sur un des filtres est modifié, false sinon*/public boolean renvoyerEtatFiltre() {return (motsClesFiltres.renvoyerEtatFiltre()|| commFiltresVues.renvoyerEtatFiltre()|| dateFiltreVues.renvoyerEtatFiltre()|| selectionFiltreVue.renvoyerEtatFiltre());}/*** Renvoie un tableau à 2 niveaux contenant des paires "nom_de_filtre",* "valeur"** @return un tableau contenant les noms et les valeurs à filtrer*/public String[][] renvoyerValeursAFiltrer() {String[][] filtres = { motsClesFiltres.renvoyerValeursAFiltrer(),commFiltresVues.renvoyerValeursAFiltrer(),dateFiltreVues.renvoyerValeursAFiltrer(),selectionFiltreVue.renvoyerValeursAFiltrer() };return filtres;}}