Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 780 → Rev 814

/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/resultats/ResultatRechercheImageVue.java
152,8 → 152,8
return listeProtocoles;
}
public void ajouterProtocole(String protocole) {
listeProtocoles.addItem(protocole);
public void ajouterProtocole(String NomProtocole, String idProtocole) {
listeProtocoles.addItem(NomProtocole, idProtocole);
}
 
public void selectionnerProtocole(int index) {
161,13 → 161,13
}
@Override
public String getNomProtocolSelectionne() {
return listeProtocoles.getValue(listeProtocoles.getSelectedIndex());
public String getNomProtocoleSelectionne() {
return listeProtocoles.getItemText((listeProtocoles.getSelectedIndex()));
}
 
@Override
public int getIdProtocoleSelectionne() {
return listeProtocoles.getSelectedIndex();
return Integer.parseInt(listeProtocoles.getValue((listeProtocoles.getSelectedIndex())));
}
 
@Override
/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/resultats/ResultatRechercheImagePresenteur.java
9,13 → 9,15
import org.tela_botanica.del.client.modeles.InformationsRecherche;
import org.tela_botanica.del.client.modeles.ModeTri;
import org.tela_botanica.del.client.modeles.Protocole;
import org.tela_botanica.del.client.modeles.ProtocoleServiceResultat;
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.EvenementChangementProtocole;
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.GestionnaireEvenementChangementProtocole;
import org.tela_botanica.del.client.services.rest.ImageService;
import org.tela_botanica.del.client.services.rest.ProtocoleService;
import org.tela_botanica.del.client.services.rest.ProtocoleServiceConcret;
import org.tela_botanica.del.client.services.rest.async.ImagesParTaxonCallback;
import org.tela_botanica.del.client.utils.MockDatasource;
import org.tela_botanica.del.client.services.rest.async.ProtocolesCallback;
import org.tela_botanica.del.client.vues.rechercheimages.resultats.images.ImagePresenteur;
import org.tela_botanica.del.client.vues.rechercheimages.resultats.images.ImageVue;
import com.google.gwt.event.dom.client.ChangeEvent;
28,6 → 30,7
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.IsWidget;
import com.google.gwt.user.client.ui.ListBox;
 
public class ResultatRechercheImagePresenteur {
public interface Vue extends IsWidget {
public void startChargement();
58,7 → 61,7
 
public HTMLPanel getImageTable();
 
public String getNomProtocolSelectionne();
public String getNomProtocoleSelectionne();
 
public int getIdProtocoleSelectionne();
 
66,7 → 69,7
 
public HasChangeHandlers getListeProtocoles();
 
public void ajouterProtocole(String protocole);
public void ajouterProtocole(String nomProtocole, String idProtocole);
 
public void selectionnerProtocole(int index);
 
92,9 → 95,8
}
private Vue vue;
private ImageService imageService;
private final ProtocoleService protocoleService = MockDatasource.getInstance();
private final ProtocoleService protocoleService = new ProtocoleServiceConcret();
private List<Protocole> protocoles;
private String protocoleParDefaut = Protocole.ESTHETISME;
private ModeTri triCourantVote = ModeTri.TRI_ASCENDANT;
private ModeTri triCourantDate = ModeTri.TRI_DESCENDANT;
 
208,14 → 210,29
}
 
private void chargerProtocoles() {
// TODO: appeler un véritable service web qui nous permette de charger les protocoles
// à partir de la base de données (prévoir un cache pour ne pas les charger à chaque fois)
protocoles = protocoleService.getProtocoles();
// test pour ne pas charger les protocoles déjà chargés
// TODO: faire un systeme de cache gérés par les web service eux même
if(CacheClient.getInstance().getListeProtocoles() == null) {
protocoleService.getProtocoles(new ProtocolesCallback() {
@Override
public void surProtocolesRecus(ProtocoleServiceResultat protocolesRecus) {
protocoles = protocolesRecus.getProtocoles();
remplirListeProtocole(protocoles);
}
});
} else {
protocoles = CacheClient.getInstance().getListeProtocoles();
remplirListeProtocole(CacheClient.getInstance().getListeProtocoles());
}
}
private void remplirListeProtocole(List<Protocole> protocoles) {
for (Protocole protocole : protocoles) {
vue.ajouterProtocole(protocole.getNom());
vue.ajouterProtocole(protocole.getNom(), protocole.getId()+"");
}
vue.selectionnerProtocole(protocoles.indexOf(CacheClient.getInstance().getProtocoleCourant()));
if(CacheClient.getInstance().getProtocoleCourant() == null) {
vue.selectionnerProtocole(0);
}
}
 
public void rechercherImagesEtCreerWidgetPagination() {
/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/moteur/MoteurRechercheImagePresenteur.java
1,23 → 1,16
package org.tela_botanica.del.client.vues.rechercheimages.moteur;
 
import java.util.List;
 
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.composants.moteurrecherche.MoteurRecherchePresenteur;
import org.tela_botanica.del.client.composants.moteurrecherche.MoteurRechercheVue;
import org.tela_botanica.del.client.modeles.ModeRecherche;
import org.tela_botanica.del.client.modeles.Protocole;
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.EvenementChangementProtocole;
import org.tela_botanica.del.client.modeles.ProtocoleServiceResultat;
import org.tela_botanica.del.client.services.rest.ImageServiceConcret;
import org.tela_botanica.del.client.services.rest.ProtocoleService;
import org.tela_botanica.del.client.utils.MockDatasource;
import org.tela_botanica.del.client.services.rest.ProtocoleServiceConcret;
import org.tela_botanica.del.client.services.rest.async.ProtocolesCallback;
import org.tela_botanica.del.client.vues.rechercheimages.resultats.ResultatRechercheImagePresenteur;
import org.tela_botanica.del.client.vues.rechercheimages.resultats.ResultatRechercheImageVue;
 
import com.google.gwt.event.dom.client.ChangeEvent;
import com.google.gwt.event.dom.client.ChangeHandler;
import com.google.gwt.event.dom.client.HasChangeHandlers;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.IsWidget;
 
24,29 → 17,33
public class MoteurRechercheImagePresenteur {
 
public interface Vue extends IsWidget {
 
public HasWidgets getZoneResultats();
 
public HasWidgets getZoneRecherche();
 
public void ajouterVue(HasWidgets composite);
 
}
 
private Vue vue;
 
private final ProtocoleService protocoleService = MockDatasource.getInstance();
 
private String protocoleParDefaut = Protocole.ESTHETISME;
private final ProtocoleService protocoleService = new ProtocoleServiceConcret();
/**
* Constructeur
* */
public MoteurRechercheImagePresenteur(Vue vue) {
this.vue = vue;
//TODO: le code ci dessous sert à ne pas recharger les protocoles
// à chaque fois, voir si on peut le factoriser quelque part
if (CacheClient.getInstance().getProtocoleCourant() == null) {
CacheClient.getInstance().setProtocoleCourant(protocoleService.getProtocole(protocoleParDefaut));
if(CacheClient.getInstance().getListeProtocoles() == null) {
protocoleService.getProtocoles(new ProtocolesCallback() {
@Override
public void surProtocolesRecus(ProtocoleServiceResultat protocolesRecus) {
CacheClient.getInstance().setListeProtocoles(protocolesRecus.getProtocoles());
CacheClient.getInstance().setProtocoleCourant(protocolesRecus.getProtocoles().get(0));
}
});
} else {
CacheClient.getInstance().setProtocoleCourant(CacheClient.getInstance().getListeProtocoles().get(0));
}
}
}
 
55,7 → 52,6
chargerMoteurRechercheAvancee();
}
 
public void chargerMoteurRechercheAvancee() {
MoteurRecherchePresenteur presenteurRecherche = new MoteurRecherchePresenteur(new MoteurRechercheVue(""), ModeRecherche.MODE_IMAGE) {
public void lancerRecherche() {