Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 321 → Rev 322

/trunk/src/org/tela_botanica/del/client/composants/moteurrecherche/MoteurRechercheVue.java
New file
0,0 → 1,142
package org.tela_botanica.del.client.composants.moteurrecherche;
 
import java.util.HashMap;
import java.util.Iterator;
 
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.HasClickHandlers;
import com.google.gwt.event.dom.client.HasKeyPressHandlers;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.IsWidget;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Panel;
import com.google.gwt.user.client.ui.TextBox;
import com.google.gwt.user.client.ui.Widget;
 
public class MoteurRechercheVue extends Composite implements MoteurRecherchePresenteur.Vue {
 
interface Binder extends UiBinder<Widget, MoteurRechercheVue> {}
private static Binder uiBinder = GWT.create(Binder.class);
private String labelRecherche = "";
@UiField Panel rechercheAvancee;
@UiField Label lienRechercheAvancee, recherchePrecedente;
@UiField Button boutonRecherche, boutonRechercheAvancee;
@UiField TextBox recherchePrincipale, departement, commune, taxon, famille, genre, tag, motCle, auteur, date;
public MoteurRechercheVue(String labelRecherche) {
initWidget(uiBinder.createAndBindUi(this));
this.labelRecherche = labelRecherche;
recherchePrincipale.setText(labelRecherche);
rechercheAvancee.setVisible(false);
}
 
public String getLabelRecherche() {
return labelRecherche;
}
@Override
public HasClickHandlers getLienRechercheAvancee() {
return lienRechercheAvancee;
}
 
@Override
public void basculerAffichageZoneCache() {
rechercheAvancee.setVisible(!rechercheAvancee.isVisible());
}
 
@Override
public HasClickHandlers getBoutonRechercheSimple() {
return boutonRecherche;
}
@Override
public HasClickHandlers getBoutonRechercheAvancee() {
return boutonRechercheAvancee;
}
 
@Override
public HasKeyPressHandlers getChampSaisie() {
return recherchePrincipale;
}
 
@Override
public String getValeurRechercheSimple() {
return recherchePrincipale.getText();
}
 
@Override
public HasClickHandlers getChampSaisieCliquable() {
return recherchePrincipale;
}
@Override
public void setValeurRechercheSimple(String valeurRecherche) {
recherchePrincipale.setText(valeurRecherche);
}
 
@Override
public HashMap<String, String> collecterFormulaire() {
 
HashMap<String, String> champsRecherche = new HashMap<String, String>();
if (!recherchePrincipale.getText().equals("")) {
champsRecherche.put("search", recherchePrincipale.getText());
}
if (!departement.getText().equals("")) {
champsRecherche.put("dept", departement.getText());
}
if (!commune.getText().equals("")) {
champsRecherche.put("com", commune.getText());
}
if (!taxon.getText().equals("")) {
champsRecherche.put("taxon", taxon.getText());
}
if (!famille.getText().equals("")) {
champsRecherche.put("fam", famille.getText());
}
if (!genre.getText().equals("")) {
champsRecherche.put("gen", genre.getText());
}
if (!tag.getText().equals("")) {
champsRecherche.put("tag", tag.getText());
}
if (!motCle.getText().equals("")) {
champsRecherche.put("motCle", motCle.getText());
}
if (!auteur.getText().equals("")) {
champsRecherche.put("auteur", auteur.getText());
}
if (!date.getText().equals("")) {
champsRecherche.put("date", date.getText());
}
return champsRecherche;
}
@Override
public String getChaineRecherche() {
HashMap<String, String> valeursRecherche = collecterFormulaire();
String chaineRecherche = "";
if (valeursRecherche != null) {
Iterator<String> itCles = valeursRecherche.keySet().iterator();
while (itCles.hasNext()) {
String cle = itCles.next();
String valeur = valeursRecherche.get(cle);
if (valeur != "") {
chaineRecherche += cle + ":=" + valeur + " ";
}
}
}
return chaineRecherche;
}
 
@Override
public void setRecherchePrecedente() {
recherchePrecedente.setText(getChaineRecherche());
}
}