30,9 → 30,11 |
public abstract void basculerAffichageZoneCache(); |
|
public abstract HasClickHandlers getBoutonRechercheSimple(); |
|
|
public abstract HasClickHandlers getBoutonFermer(); |
|
public abstract HasClickHandlers getBoutonVider(); |
|
public abstract HasClickHandlers getBoutonRechercheAvancee(); |
|
public abstract HasKeyPressHandlers getChampSaisie(); |
67,34 → 69,43 |
|
public void chargerValeursRecherchePrecedente(InformationsRecherche informationsRecherche); |
|
public void chargerValeursRechercheSimplePrecedente(InformationsRecherche informationsRecherche); |
|
public void focusSaisie(); |
|
public void nettoyer(); |
} |
|
private final Vue vue; |
private final boolean pourRechercheImages, pourRechercheObservations; |
|
|
private AutoCompletionComboBoxPresenteur autoCompletionNomTaxonsPresenteur; |
|
public MoteurRecherchePresenteur(Vue vue, boolean pourRechercheImages, boolean pourRechercheObservations) { |
public MoteurRecherchePresenteur(Vue vue, boolean pourRechercheImages, |
boolean pourRechercheObservations) { |
this.vue = vue; |
this.pourRechercheImages = pourRechercheImages; |
this.pourRechercheObservations = pourRechercheObservations; |
|
autoCompletionNomTaxonsPresenteur = new AutoCompletionComboBoxPresenteur(UtilitairesAutoCompletionService.urlServiceCompletionNomLocale) { |
|
|
autoCompletionNomTaxonsPresenteur = new AutoCompletionComboBoxPresenteur( |
UtilitairesAutoCompletionService.urlServiceCompletionNomLocale) { |
|
protected String effectuerPreTraitementChaineRequete(String requete) { |
return UtilitairesAutoCompletionService.effectuerPreTraitementChaineRequeteGenreEspeceSlash(requete); |
return UtilitairesAutoCompletionService |
.effectuerPreTraitementChaineRequeteGenreEspeceSlash(requete); |
// A décommenter lors de l'utilisation des web services eflore |
//return RetourAutoCompletionService.effectuerPreTraitementChaineRequeteGenreEspeceEflore(requete); |
// return |
// RetourAutoCompletionService.effectuerPreTraitementChaineRequeteGenreEspeceEflore(requete); |
} |
|
|
@Override |
protected String[] parserResultatRequete(Response response) { |
return UtilitairesAutoCompletionService.parserRetourSimple(response); |
return UtilitairesAutoCompletionService |
.parserRetourSimple(response); |
// A décommenter lors de l'utilisation des web services eflore |
//return RetourAutoCompletionService.parserRetourOss(response); |
// return RetourAutoCompletionService.parserRetourOss(response); |
} |
}; |
}; |
gererEvenements(); |
} |
|
117,17 → 128,35 |
vue.getBoutonRechercheSimple().addClickHandler(new ClickHandler() { |
public void onClick(ClickEvent event) { |
collecterInfosRecherche(); |
afficherRequeteEtLancerRecherche(); |
afficherRequeteEtLancerRechercheSimple(); |
} |
}); |
|
vue.getBoutonFermer().addClickHandler(new ClickHandler() { |
|
|
@Override |
public void onClick(ClickEvent event) { |
vue.basculerAffichageZoneCache(); |
} |
}); |
|
vue.getBoutonVider().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent event) { |
|
autoCompletionNomTaxonsPresenteur.nettoyer(); |
vue.nettoyer(); |
|
InformationsRecherche infosRecherche = new InformationsRecherche(); |
if (isPourRechercheImages()) { |
CacheClient.getInstance().setInformationsRechercheImage(infosRecherche); |
} else if (isPourRechercheObservations()) { |
CacheClient.getInstance().setInformationsRechercheObservation(infosRecherche); |
} |
} |
}); |
|
vue.getBoutonRechercheAvancee().addClickHandler(new ClickHandler() { |
public void onClick(ClickEvent event) { |
collecterInfosRecherche(); |
141,7 → 170,7 |
public void onKeyPress(KeyPressEvent event) { |
if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_ENTER) { |
collecterInfosRecherche(); |
afficherRequeteEtLancerRecherche(); |
afficherRequeteEtLancerRechercheSimple(); |
} |
} |
}); |
150,7 → 179,8 |
|
@Override |
public void onClick(ClickEvent event) { |
if (vue.getValeurRechercheSimple().equals(vue.getLabelRecherche())) { |
if (vue.getValeurRechercheSimple().equals( |
vue.getLabelRecherche())) { |
vue.setValeurRechercheSimple(""); |
} |
} |
159,21 → 189,27 |
|
private void collecterInfosRecherche() { |
InformationsRecherche informationRecherche = new InformationsRecherche(); |
informationRecherche.setAuteur(vue.getAuteur().getText()); |
informationRecherche.setTaxon(autoCompletionNomTaxonsPresenteur.getValeur()); |
informationRecherche.setDepartement(vue.getDepartement().getText()); |
informationRecherche.setCommune(vue.getCommune().getText()); |
informationRecherche.setDate(vue.getDate().getText()); |
informationRecherche.setDepartement(vue.getDepartement().getText()); |
informationRecherche.setFamille(vue.getFamille().getText()); |
informationRecherche.setGenre(vue.getGenre().getText()); |
informationRecherche.setTag(vue.getTag().getText()); |
informationRecherche.setMotClef(vue.getMotCle().getText()); |
|
if (!vue.getRecherchePrincipale().getText().equals(vue.getLabelRecherche())) { |
informationRecherche.setRechercheLibre(vue.getRecherchePrincipale().getText()); |
informationRecherche.setAuteur(vue.getAuteur().getText()); |
informationRecherche.setDate(vue.getDate().getText()); |
|
if (!vue.getRecherchePrincipale().getText() |
.equals(vue.getLabelRecherche())) { |
informationRecherche.setRechercheLibre(vue.getRecherchePrincipale() |
.getText()); |
} |
if (isPourRechercheImages()) { |
CacheClient.getInstance().setInformationsRechercheImage(informationRecherche); |
CacheClient.getInstance().setInformationsRechercheImage( |
informationRecherche); |
} else if (isPourRechercheObservations()) { |
CacheClient.getInstance().setInformationsRechercheObservation(informationRecherche); |
CacheClient.getInstance().setInformationsRechercheObservation( |
informationRecherche); |
} |
} |
|
181,20 → 217,30 |
if (isPourRechercheImages()) { |
return CacheClient.getInstance().getInformationsRechercheImage(); |
} else if (isPourRechercheObservations()) { |
return CacheClient.getInstance().getInformationsRechercheObservation(); |
return CacheClient.getInstance() |
.getInformationsRechercheObservation(); |
} |
return null; |
} |
|
public void afficherRequeteEtLancerRechercheSimple() { |
InformationsRecherche informationsRecherche = getInformationsRechercheEnCache(); |
if (informationsRecherche != null) { |
vue.chargerValeursRechercheSimplePrecedente(informationsRecherche); |
} |
lancerRecherche(); |
} |
|
public void afficherRequeteEtLancerRecherche() { |
InformationsRecherche informationsRecherche = getInformationsRechercheEnCache(); |
if (informationsRecherche != null) { |
autoCompletionNomTaxonsPresenteur.setValeur(informationsRecherche.getTaxon()); |
vue.chargerValeursRecherchePrecedente(informationsRecherche); |
} |
lancerRecherche(); |
} |
|
public abstract void lancerRecherche(); |
public abstract void lancerRecherche(); |
|
public boolean isPourRechercheImages() { |
return pourRechercheImages; |