New file |
0,0 → 1,138 |
package org.tela_botanica.client.vues; |
|
import org.tela_botanica.client.observation.ObservationMediateur; |
|
import com.google.gwt.user.client.Window; |
import com.gwtext.client.widgets.Component; |
import com.gwtext.client.widgets.Panel; |
import com.gwtext.client.widgets.event.ContainerListener; |
import com.gwtext.client.widgets.event.ContainerListenerAdapter; |
import com.gwtext.client.widgets.event.PanelListener; |
import com.gwtext.client.widgets.event.PanelListenerAdapter; |
import com.gwtext.client.widgets.layout.AccordionLayout; |
import com.gwtext.client.widgets.layout.AnchorLayout; |
import com.gwtext.client.widgets.layout.AnchorLayoutData; |
import com.gwtext.client.widgets.layout.FitLayout; |
import com.gwtext.client.widgets.layout.VerticalLayout; |
|
/** |
* Panneau contenant les filtres qu'on peut appliquer aux images |
* |
* @author aurelien |
* |
*/ |
public class PanneauFiltresObservationVues extends Panel { |
|
/** |
* Le médiateur associé |
*/ |
private ObservationMediateur observationMediateur = null; |
|
/** |
* Le champ texte pour la recherche par mots clés |
*/ |
private MotsClesObsVue motsClesObsVue = null ; |
|
/** |
* L'arbre pour la recherche entite geographique |
* |
*/ |
private ArbreEntiteGeographiqueObservationFiltreVue arbreEntiteGeographiqueObservationFiltreVue = null; |
|
/** |
* L'arbre pour la recherche date |
* |
*/ |
private ArbreDateObservationFiltreVue arbreDateObservationFiltreVue = null; |
|
|
|
|
/** |
* Construcuteur sans argument (privé car on ne doit pas l'utiliser) |
*/ |
@SuppressWarnings("unused") |
private PanneauFiltresObservationVues() { |
super(); |
} |
|
/** |
* Constructeur avec arguments |
* |
* @param im |
* le médiateur à associer |
*/ |
public PanneauFiltresObservationVues(ObservationMediateur obs) { |
|
super("Selections"); |
|
observationMediateur = obs; |
|
this.setCollapsible(true); |
this.setLayout(new AnchorLayout()) ; |
|
motsClesObsVue = new MotsClesObsVue(observationMediateur); |
add(motsClesObsVue); |
motsClesObsVue.setHeight(100) ; |
motsClesObsVue.setWidth("100%") ; |
|
arbreEntiteGeographiqueObservationFiltreVue = new ArbreEntiteGeographiqueObservationFiltreVue(observationMediateur); |
add(arbreEntiteGeographiqueObservationFiltreVue); |
arbreEntiteGeographiqueObservationFiltreVue.setHeight(300) ; |
arbreEntiteGeographiqueObservationFiltreVue.setWidth("100%") ; |
arbreEntiteGeographiqueObservationFiltreVue.setBorder(false); |
|
arbreDateObservationFiltreVue = new ArbreDateObservationFiltreVue(observationMediateur) ; |
arbreDateObservationFiltreVue.setHeight(300) ; |
add(arbreDateObservationFiltreVue); |
arbreDateObservationFiltreVue.setWidth("100%") ; |
arbreDateObservationFiltreVue.setBorder(false); |
|
} |
|
/** |
* Accesseur pour le filtre des mots clés |
* |
* @return le filtre des mots clés |
*/ |
|
public ArbreEntiteGeographiqueObservationFiltreVue getArbreEntiteGeographiqueObservationFiltreVue() { |
return arbreEntiteGeographiqueObservationFiltreVue; |
} |
|
public ArbreDateObservationFiltreVue getArbreDateObservationFiltreVue() { |
return arbreDateObservationFiltreVue; |
} |
|
public MotsClesObsVue getMotsClesObsVue() { |
return motsClesObsVue; |
} |
|
|
/** |
* 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 (arbreEntiteGeographiqueObservationFiltreVue.renvoyerEtatFiltre() || arbreDateObservationFiltreVue.renvoyerEtatFiltre() || motsClesObsVue.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 = { arbreEntiteGeographiqueObservationFiltreVue.renvoyerValeursAFiltrer(), |
arbreDateObservationFiltreVue.renvoyerValeursAFiltrer(), |
motsClesObsVue.renvoyerValeursAFiltrer() |
}; |
|
return filtres; |
} |
|
} |