13,6 → 13,7 |
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.user.client.Window; |
import com.google.gwt.user.client.ui.HasWidgets; |
import com.google.gwt.user.client.ui.IsWidget; |
import com.google.gwt.user.client.ui.Panel; |
37,6 → 38,12 |
private ImageService imageService; |
private PaginationPresenteur paginationHautPresenteur, paginationBasPresenteur; |
|
/** |
* Ceci sert à éviter que les deux présenteurs paginations fassent deux requêtes par changement de page |
* En attendant d'en discuter avec les autres |
*/ |
private boolean requeteEnCours = false; |
|
public ResultatRechercheImagePresenteur(ImageService imageService, Vue vue) { |
this.vue = vue; |
this.imageService = imageService; |
54,8 → 61,10 |
public void surImagesRecues(ImageServiceResultat imagesRecues) { |
creerWidgetPagination(imagesRecues.getNbTotalImagesPourLaRecherche()); |
afficherImages(imagesRecues, 0, CacheClient.getInstance().getPasPagination()); |
requeteEnCours = false; |
} |
}; |
requeteEnCours = true; |
imageService.getImagesParTaxon(CacheClient.getInstance().getInformationsRechercheImage(), 0, CacheClient.getInstance().getPasPagination(), callback); |
|
} |
68,10 → 77,11 |
|
@Override |
public void surImagesRecues(ImageServiceResultat imagesRecues) { |
|
afficherImages(imagesRecues, premier, dernier); |
requeteEnCours = false; |
} |
}; |
requeteEnCours = true; |
imageService.getImagesParTaxon(CacheClient.getInstance().getInformationsRechercheImage(), premier, dernier, callback); |
|
} |
80,13 → 90,6 |
|
List<Image> images = imageServiceResult.getImages(); |
|
// verifie si le nb d'images renvoyes par le service est correct sinon |
// coupe la liste d'images |
int taille = dernier - premier; |
if (images.size() > taille) { |
images = imageServiceResult.getImages().subList(0, taille); |
} |
|
List<Panel> panneauxImagesAffichees = new ArrayList<Panel>(); |
vue.creerPanneauxObservations(imageServiceResult.getImages().size()); |
|
108,7 → 111,9 |
this.paginationBasPresenteur = new PaginationPresenteur(nbImages, CacheClient.getInstance().getPasPagination()) { |
@Override |
public void changerPage(int debut, int fin) { |
chargerEtAfficherImages(debut, fin); |
if(!requeteEnCours) { |
chargerEtAfficherImages(debut, fin); |
} |
CacheClient.getInstance().setPageCouranteRechercheImages(getPageCourante()); |
} |
|
129,7 → 134,9 |
|
@Override |
public void changerPage(int debut, int fin) { |
chargerEtAfficherImages(debut, fin); |
if(!requeteEnCours) { |
chargerEtAfficherImages(debut, fin); |
} |
CacheClient.getInstance().setPageCouranteRechercheImages(getPageCourante()); |
|
} |