1,8 → 1,17 |
package org.tela_botanica.del.client.composants.metadonnees; |
|
import org.tela_botanica.del.client.cache.CacheClient; |
import org.tela_botanica.del.client.composants.presenteur.Presenteur; |
import org.tela_botanica.del.client.modeles.InformationsRecherche; |
import org.tela_botanica.del.client.modeles.ModeRecherche; |
import org.tela_botanica.del.client.modeles.Observation; |
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel; |
import org.tela_botanica.del.client.navigation.evenement.detailsimage.EvenementRechercheImage; |
import org.tela_botanica.del.client.navigation.evenement.rechercheobservation.EvenementRechercheObservation; |
|
import com.google.gwt.event.dom.client.ClickEvent; |
import com.google.gwt.event.dom.client.ClickHandler; |
import com.google.gwt.event.dom.client.HasClickHandlers; |
import com.google.gwt.user.client.ui.HasText; |
import com.google.gwt.user.client.ui.HasWidgets; |
import com.google.gwt.user.client.ui.IsWidget; |
12,6 → 21,8 |
public abstract interface Vue extends IsWidget { |
public HasText getNomRetenu(); |
|
public HasClickHandlers getLienNomRetenu(); |
|
public HasText getNomCommun(); |
|
public HasText getFamille(); |
33,13 → 44,37 |
public HasText getNumNomenclatural(); |
|
public HasText getDateReleve(); |
|
public HasClickHandlers getLienFamille(); |
|
public HasClickHandlers getLienAuteur(); |
|
public HasClickHandlers getLienDateTransmission(); |
|
public HasClickHandlers getLienDateReleve(); |
|
public HasClickHandlers getLienLocalite(); |
|
public HasClickHandlers getLienMotsClefs(); |
|
public HasClickHandlers getLienNumNomenclatural(); |
|
public HasClickHandlers getLienNomCommun(); |
|
public HasClickHandlers getLienLieuDit(); |
|
public HasClickHandlers getLienMilieu(); |
|
public HasClickHandlers getLienCommentaire(); |
} |
|
private Vue vue; |
private Observation observation; |
private ModeRecherche modeRecherche; |
|
public MetadonneesPresenteur(Vue vue, Observation observation) { |
public MetadonneesPresenteur(Vue vue, Observation observation, ModeRecherche modeRecherche) { |
this.vue = vue; |
this.modeRecherche = modeRecherche; |
setObservation(observation); |
} |
|
64,11 → 99,138 |
public void go(HasWidgets composite) { |
composite.add(vue.asWidget()); |
chargerMetaDonnees(); |
gererEvenements(); |
} |
|
@Override |
protected void gererEvenements() { |
// TODO Auto-generated method stub |
|
vue.getLienAuteur().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent arg0) { |
InformationsRecherche informationsRecherche = new InformationsRecherche(); |
informationsRecherche.setAuteur(vue.getAuteur().getText()); |
setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche); |
} |
}); |
|
vue.getLienDateReleve().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent arg0) { |
InformationsRecherche informationsRecherche = new InformationsRecherche(); |
informationsRecherche.setDate(vue.getDateReleve().getText()); |
setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche); |
} |
}); |
|
vue.getLienDateTransmission().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent arg0) { |
InformationsRecherche informationsRecherche = new InformationsRecherche(); |
informationsRecherche.setDate(vue.getDateReleve().getText()); |
setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche); |
} |
}); |
|
vue.getLienFamille().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent arg0) { |
InformationsRecherche informationsRecherche = new InformationsRecherche(); |
informationsRecherche.setFamille(vue.getFamille().getText()); |
setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche); |
} |
}); |
|
vue.getLienLieuDit().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent arg0) { |
InformationsRecherche informationsRecherche = new InformationsRecherche(); |
informationsRecherche.setCommune(vue.getLieuDit().getText()); |
setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche); |
} |
}); |
|
vue.getLienLocalite().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent arg0) { |
InformationsRecherche informationsRecherche = new InformationsRecherche(); |
informationsRecherche.setCommune(vue.getLocalite().getText()); |
setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche); |
} |
}); |
|
vue.getLienMotsClefs().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent arg0) { |
InformationsRecherche informationsRecherche = new InformationsRecherche(); |
informationsRecherche.setMotClef(vue.getMotsClefs().getText()); |
setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche); |
} |
}); |
|
vue.getLienNomCommun().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent arg0) { |
InformationsRecherche informationsRecherche = new InformationsRecherche(); |
informationsRecherche.setRechercheLibre(vue.getNomCommun().getText()); |
setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche); |
} |
}); |
|
vue.getLienNomRetenu().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent arg0) { |
InformationsRecherche informationsRecherche = new InformationsRecherche(); |
informationsRecherche.setRechercheLibre(vue.getNomRetenu().getText()); |
setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche); |
} |
}); |
|
vue.getLienMilieu().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent arg0) { |
InformationsRecherche informationsRecherche = new InformationsRecherche(); |
informationsRecherche.setRechercheLibre(vue.getMilieu().getText()); |
setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche); |
} |
}); |
|
vue.getLienCommentaire().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent arg0) { |
InformationsRecherche informationsRecherche = new InformationsRecherche(); |
informationsRecherche.setRechercheLibre(vue.getCommentaire().getText()); |
setInfosRechercheEnCacheEtLancerEvenement(informationsRecherche); |
} |
}); |
|
} |
|
public void setInfosRechercheEnCacheEtLancerEvenement(InformationsRecherche informationsRecherche) { |
switch (modeRecherche) { |
case MODE_IMAGE: |
CacheClient.getInstance().setInformationsRechercheImage(informationsRecherche); |
BusEvenementiel.getInstance().fireEvent(new EvenementRechercheImage()); |
break; |
|
case MODE_OBSERVATION: |
CacheClient.getInstance().setInformationsRechercheObservation(informationsRecherche); |
BusEvenementiel.getInstance().fireEvent(new EvenementRechercheObservation()); |
|
default: |
break; |
} |
|
} |
} |