5,28 → 5,46 |
import org.tela_botanica.del.client.cache.CacheClient; |
import org.tela_botanica.del.client.modeles.Image; |
import org.tela_botanica.del.client.modeles.VoteProtocole; |
import org.tela_botanica.del.client.services.rest.ImageService; |
import org.tela_botanica.del.client.services.rest.VoteProtocoleService; |
import org.tela_botanica.del.client.utils.MockDatasource; |
|
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.HasWidgets; |
import com.google.gwt.user.client.ui.IsWidget; |
|
public class ComparaisonEflorePresenteur { |
|
private ComparaisonEfloreVue vue = new ComparaisonEfloreVue(); |
private final MockDatasource observationService = MockDatasource.getInstance(); |
private final MockDatasource validationService = MockDatasource.getInstance(); |
public interface Vue extends IsWidget { |
public void chargerImagePrincipale(org.tela_botanica.del.client.modeles.Image image); |
|
public void chargerImagesEflore(List<org.tela_botanica.del.client.modeles.Image> observationsEflore, int indexImage); |
|
public HasClickHandlers getScrollLeftImage(); |
|
public HasClickHandlers getScrollRightImage(); |
|
public int getCurrentIndexImages(); |
} |
|
private Vue vue; |
private final VoteProtocoleService validationService = MockDatasource.getInstance(); |
private final ImageService imageService = MockDatasource.getInstance(); |
|
private Image imagePrincipale; |
private String nomTaxonComparaison; |
private List<org.tela_botanica.del.client.modeles.Image> imagesEflore; |
|
public ComparaisonEflorePresenteur() { |
public ComparaisonEflorePresenteur(Vue vue) { |
this.vue = vue; |
this.imagePrincipale = CacheClient.getInstance().getImageCourante(); |
this.nomTaxonComparaison = CacheClient.getInstance().getTaxonPourRechercheEflore(); |
} |
|
public void go(HasWidgets composite) { |
composite.add(vue); |
composite.add(vue.asWidget()); |
chargerValidationObservationPrincipale(); |
vue.chargerImagePrincipale(imagePrincipale); |
chargerObservationsEflore(); |
33,18 → 51,18 |
gererEvenements(); |
} |
|
private void chargerValidationObservationPrincipale() { |
public void chargerValidationObservationPrincipale() { |
List<VoteProtocole> observationValidations = validationService.getVote(imagePrincipale.getIdImage()); |
imagePrincipale.setVoteProtocoles(observationValidations); |
} |
|
private void chargerObservationsEflore() { |
imagesEflore = observationService.getImagesEfloreParTaxon(nomTaxonComparaison); |
public void chargerObservationsEflore() { |
imagesEflore = imageService.getImagesEfloreParTaxon(nomTaxonComparaison); |
vue.chargerImagesEflore(imagesEflore, 0); |
} |
|
private void gererEvenements() { |
vue.scrollLeftImage.addClickHandler(new ClickHandler() { |
vue.getScrollLeftImage().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent event) { |
52,7 → 70,7 |
} |
}); |
|
vue.scrollRightImage.addClickHandler(new ClickHandler() { |
vue.getScrollRightImage().addClickHandler(new ClickHandler() { |
|
@Override |
public void onClick(ClickEvent event) { |
61,4 → 79,8 |
}); |
} |
|
public List<org.tela_botanica.del.client.modeles.Image> getImagesEflore() { |
return imagesEflore; |
} |
|
} |