Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 436 → Rev 437

/trunk/src/org/tela_botanica/del/client/vues/rechercheobservations/observationimages/ObservationImagesPresenteur.java
2,6 → 2,8
 
import java.util.List;
 
import org.tela_botanica.del.client.composants.fenetreOverlayDefilante.FenetreOverlayDefilantePresenteur;
import org.tela_botanica.del.client.composants.fenetreOverlayDefilante.FenetreOverlayDefilanteVue;
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
import org.tela_botanica.del.client.modeles.Image;
import org.tela_botanica.del.client.modeles.Observation;
11,6 → 13,7
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.Window;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.IsWidget;
 
33,6 → 36,8
private Observation observation;
 
private Image imagePrincipale;
private List<Image> listeImages;
 
public ObservationImagesPresenteur(Vue vue, Observation observation) {
this.observation = observation;
43,23 → 48,20
 
vue.chargerInformationsObservation(observation);
 
List<org.tela_botanica.del.client.modeles.Image> images = observation.getImages();
listeImages = observation.getImages();
 
if (images != null && images.size() > 0) {
imagePrincipale = images.get(0);
if (listeImages != null && listeImages.size() > 0) {
imagePrincipale = listeImages.get(0);
vue.chargerImagePrincipale(imagePrincipale);
}
 
for (final org.tela_botanica.del.client.modeles.Image imageCourante : images) {
if (imageCourante != imagePrincipale) {
 
ClickHandler gestionnaireClic = new ClickHandler() {
public void onClick(ClickEvent event) {
ouvrirFenetreModale(new DetailImagePresenteur(imageCourante, new DetailImageVue()));
}
};
vue.ajouterPhoto(imageCourante, gestionnaireClic);
int nbImage = 0;
for (final org.tela_botanica.del.client.modeles.Image imageCourante : listeImages) {
if(!imageCourante.equals(imagePrincipale)) {
int nbImageEncours = nbImage;
vue.ajouterPhoto(imageCourante, creerGestionnaireClic(nbImageEncours, imageCourante));
}
nbImage++;
}
}
 
70,10 → 72,35
}
 
protected void gererEvenements() {
vue.getPhotoPrincipale().addClickHandler(new ClickHandler() {
vue.getPhotoPrincipale().addClickHandler(creerGestionnaireClic(0, listeImages.get(0)));
}
protected ClickHandler creerGestionnaireClic(final int indexImage, final Image imageCourante) {
ClickHandler gestionnaireClic = new ClickHandler() {
public void onClick(ClickEvent event) {
ouvrirFenetreModale(new DetailImagePresenteur(imagePrincipale, new DetailImageVue()));
FenetreOverlayDefilantePresenteur presenteurGalerie = new FenetreOverlayDefilantePresenteur(indexImage, new FenetreOverlayDefilanteVue()) {
@Override
public void surClicBoutonSuivant() {
int index = getIndexElementAffiche() + 1;
if(index >= listeImages.size()) {
index = 0;
}
setContenuFenetreModale(index, new DetailImagePresenteur(listeImages.get(index), new DetailImageVue()));
}
@Override
public void surClicBoutonPrecedent() {
int index = getIndexElementAffiche() - 1;
if(index < 0) {
index = listeImages.size() - 1;
}
setContenuFenetreModale(index, new DetailImagePresenteur(listeImages.get(index), new DetailImageVue()));
}
};
presenteurGalerie.ouvrirFenetreModaleDefilante(indexImage, new DetailImagePresenteur(imageCourante, new DetailImageVue()));
}
});
};
return gestionnaireClic;
}
}