Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 146 → Rev 147

/src/org/tela_botanica/del/client/cache/CacheClient.java
1,5 → 1,8
package org.tela_botanica.del.client.cache;
 
import java.util.List;
 
import org.tela_botanica.del.client.modeles.Image;
import org.tela_botanica.del.client.modeles.Observation;
 
public class CacheClient {
6,8 → 9,16
 
private Observation currentObservation;
private Image imageCourante;
 
private String taxonPourRechercheEflore;
 
private List<Image> images;
 
private int numPageRechercheImage = 0;
 
private int pasPageRechercheImage = 10;
 
private static CacheClient instance;
 
private CacheClient() {
37,4 → 48,36
this.taxonPourRechercheEflore = taxonPourRechercheEflore;
}
 
public int getNumPageRechercheImage() {
return numPageRechercheImage;
}
 
public void setNumPageRechercheImage(int numPageRechercheImage) {
this.numPageRechercheImage = numPageRechercheImage;
}
 
public int getPasPageRechercheImage() {
return pasPageRechercheImage;
}
 
public void setPasPageRechercheImage(int pasPageRechercheImage) {
this.pasPageRechercheImage = pasPageRechercheImage;
}
 
public List<Image> getImages() {
return images;
}
 
public void setImages(List<Image> images) {
this.images = images;
}
 
public Image getImageCourante() {
return imageCourante;
}
 
public void setImageCourante(Image imageCourante) {
this.imageCourante = imageCourante;
}
 
}
/src/org/tela_botanica/del/client/gestionhistorique/GestionnaireHistorique.java
1,11 → 1,8
package org.tela_botanica.del.client.gestionhistorique;
 
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.utils.MockDatasource;
import org.tela_botanica.del.client.vues.comparaisoneflore.ComparaisonEflorePresenteur;
import org.tela_botanica.del.client.vues.plateformedetermination.DeterminationPresenteur;
import org.tela_botanica.del.client.vues.plateformedetermination.vote.EnsembleVotesPresenteur;
import org.tela_botanica.del.client.vues.rechercheobservations.ObservationRecherchePresenteur;
import org.tela_botanica.del.client.vues.rechercheimages.ImageRecherchePresenteur;
 
import com.google.gwt.event.logical.shared.ValueChangeEvent;
import com.google.gwt.event.logical.shared.ValueChangeHandler;
25,8 → 22,11
 
if (event.getValue().equals(ConstantesNavigation.PAGE_PRINCIPALE)) {
RootPanel.get().clear();
 
new ObservationRecherchePresenteur().go(RootPanel.get());
new ImageRecherchePresenteur().go(RootPanel.get());
}
if (event.getValue().equals(ConstantesNavigation.PAGE_RECHERCHE_IMAGES)) {
RootPanel.get().clear();
new ImageRecherchePresenteur().go(RootPanel.get());
} else if (event.getValue().equals(ConstantesNavigation.PAGE_VALIDATION)) {
RootPanel.get().clear();
new DeterminationPresenteur().go(RootPanel.get());
/src/org/tela_botanica/del/client/modeles/VoteDetermination.java
8,14 → 8,12
 
private String id;
 
private String idImage;
 
private int vote;
 
private String contributeur;
 
private Date date;
 
public int getVote() {
return vote;
}
40,14 → 38,6
this.id = id;
}
 
public String getIdImage() {
return idImage;
}
 
public void setIdImage(String idImage) {
this.idImage = idImage;
}
 
public Date getDate() {
return date;
}
/src/org/tela_botanica/del/client/modeles/Image.java
New file
0,0 → 1,48
package org.tela_botanica.del.client.modeles;
 
import java.util.ArrayList;
import java.util.List;
 
public class Image {
 
private String idImage;
 
private Observation observation;
 
private String url;
 
public String getUrl() {
return url;
}
 
public void setUrl(String url) {
this.url = url;
}
 
public String getIdImage() {
return idImage;
}
 
public void setIdImage(String idImage) {
this.idImage = idImage;
}
 
private List<VoteProtocole> voteProtocoles = new ArrayList<VoteProtocole>();
 
public List<VoteProtocole> getVoteProtocoles() {
return voteProtocoles;
}
 
public void setVoteProtocoles(List<VoteProtocole> voteProtocoles) {
this.voteProtocoles = voteProtocoles;
}
 
public Observation getObservation() {
return observation;
}
 
public void setObservation(Observation observation) {
this.observation = observation;
}
 
}
/src/org/tela_botanica/del/client/modeles/VoteProtocole.java
12,8 → 12,6
 
private String id;
 
private String idImage;
 
private int vote;
 
private String contributeur;
46,14 → 44,6
this.id = id;
}
 
public String getIdImage() {
return idImage;
}
 
public void setIdImage(String idImage) {
this.idImage = idImage;
}
 
public Date getDate() {
return date;
}
/src/org/tela_botanica/del/client/modeles/PropositionDetermination.java
94,4 → 94,12
public void setEspece(String espece) {
this.espece = espece;
}
 
public ArrayList<VoteDetermination> getVotesDeterminations() {
return votesDeterminations;
}
 
public void setVotesDeterminations(ArrayList<VoteDetermination> votesDeterminations) {
this.votesDeterminations = votesDeterminations;
}
}
/src/org/tela_botanica/del/client/modeles/Observation.java
22,17 → 22,13
 
private String date;
 
private String url;
 
private String idImage;
 
private String numNomenclatural;
 
private List<String> motsClefs = new ArrayList<String>();
 
private List<PropositionDetermination> imageCelValidationDatas;
private List<PropositionDetermination> imageCelValidationDatas = new ArrayList<PropositionDetermination>();
 
private List<VoteProtocole> voteProtocoles;
private List<Image> images=new ArrayList<Image>();
 
public String getAuteur() {
return auteur;
82,14 → 78,6
this.date = date;
}
 
public String getUrl() {
return url;
}
 
public void setUrl(String url) {
this.url = url;
}
 
public String getNumNomenclatural() {
return numNomenclatural;
}
98,14 → 86,6
this.numNomenclatural = numNomenclatural;
}
 
public String getIdImage() {
return idImage;
}
 
public void setIdImage(String idImage) {
this.idImage = idImage;
}
 
public List<PropositionDetermination> getImageCelValidationDatas() {
return imageCelValidationDatas;
}
122,14 → 102,6
this.motsClefs = motsClefs;
}
 
public List<VoteProtocole> getVoteProtocoles() {
return voteProtocoles;
}
 
public void setVoteProtocoles(List<VoteProtocole> voteProtocoles) {
this.voteProtocoles = voteProtocoles;
}
 
public void addImageCelValidationData(PropositionDetermination observationValidation) {
imageCelValidationDatas.add(observationValidation);
setChanged();
149,4 → 121,12
return propositionsTaxonDatas;
}
 
public List<Image> getImages() {
return images;
}
 
public void setImages(List<Image> images) {
this.images = images;
}
 
}
/src/org/tela_botanica/del/client/pagination/PaginationPresenteur.java
3,6 → 3,8
import java.util.Iterator;
import java.util.Vector;
 
import org.tela_botanica.del.client.cache.CacheClient;
 
import com.google.gwt.event.dom.client.ChangeEvent;
import com.google.gwt.event.dom.client.ChangeHandler;
import com.google.gwt.event.dom.client.ClickEvent;
21,8 → 23,6
private int nbElementsTotal = 0;
private int nbPage;
private Vector<Button> liens;
private int pageActuelle = 0;
private int pas;
 
public PaginationPresenteur(int nbElements) {
presenteur = this;
29,7 → 29,7
this.nbElementsTotal = nbElements;
actualiserNbPage();
vue = new PaginationVue();
setPas(10);
setPas(CacheClient.getInstance().getPasPageRechercheImage());
}
 
private void setBoutonActif() {
36,7 → 36,7
Iterator<Button> it = liens.iterator();
while (it.hasNext()) {
Button boutonCourant = it.next();
if (boutonCourant.getText().equals(String.valueOf(pageActuelle))) {
if (boutonCourant.getText().equals(String.valueOf(CacheClient.getInstance().getNumPageRechercheImage()))) {
boutonCourant.setStyleName("actif");
} else {
boutonCourant.setStyleName("inactif");
45,19 → 45,15
}
 
private void actualiserNbPage() {
Double a = Math.ceil((double) nbElementsTotal / (double) pas);
Double a = Math.ceil((double) nbElementsTotal / (double) CacheClient.getInstance().getPasPageRechercheImage());
this.nbPage = a.intValue();
}
 
public void setPageActuelle(int pageActuelle) {
this.pageActuelle = pageActuelle;
}
 
public void setPas(int pas) {
this.pas = pas;
CacheClient.getInstance().setPasPageRechercheImage(pas);
actualiserNbPage();
creerLiens();
changerPage(pas * pageActuelle, pas * (pageActuelle + 1));
changerPage(CacheClient.getInstance().getPasPageRechercheImage() * CacheClient.getInstance().getNumPageRechercheImage(), CacheClient.getInstance().getPasPageRechercheImage() * (CacheClient.getInstance().getNumPageRechercheImage() + 1));
}
 
public void creerLiens() {
113,7 → 109,7
 
nbElements.addItem(String.valueOf(valeur));
}
nbElements.setSelectedIndex(pas / 5);
nbElements.setSelectedIndex(CacheClient.getInstance().getPasPageRechercheImage() / 5);
nbElements.addChangeHandler(new ChangeHandler() {
 
@Override
143,9 → 139,9
@Override
public void onClick(ClickEvent event) {
Button bouton = (Button) event.getSource();
pageActuelle = Integer.parseInt(bouton.getText());
int debut = Integer.parseInt(bouton.getText()) * pas;
int fin = (debut + pas);
CacheClient.getInstance().setNumPageRechercheImage(Integer.parseInt(bouton.getText()));
int debut = Integer.parseInt(bouton.getText()) * CacheClient.getInstance().getPasPageRechercheImage();
int fin = (debut + CacheClient.getInstance().getPasPageRechercheImage());
setBoutonActif();
changerPage(debut, fin);
 
156,10 → 152,10
}
 
public void pageSuivante() {
if (pageActuelle < nbPage - 1) {
pageActuelle++;
int debut = pageActuelle * pas;
int fin = debut + pas;
if (CacheClient.getInstance().getNumPageRechercheImage() < nbPage - 1) {
CacheClient.getInstance().setNumPageRechercheImage(CacheClient.getInstance().getNumPageRechercheImage() + 1);
int debut = CacheClient.getInstance().getNumPageRechercheImage() * CacheClient.getInstance().getPasPageRechercheImage();
int fin = debut + CacheClient.getInstance().getPasPageRechercheImage();
changerPage(debut, fin);
}
setBoutonActif();
167,10 → 163,10
 
public void pagePrecedente() {
 
if (pageActuelle > 0) {
pageActuelle--;
int debut = pageActuelle * pas;
int fin = debut + pas;
if (CacheClient.getInstance().getNumPageRechercheImage() > 0) {
CacheClient.getInstance().setNumPageRechercheImage(CacheClient.getInstance().getNumPageRechercheImage() - 1);
int debut = CacheClient.getInstance().getNumPageRechercheImage() * CacheClient.getInstance().getPasPageRechercheImage();
int fin = debut + CacheClient.getInstance().getPasPageRechercheImage();
changerPage(debut, fin);
}
setBoutonActif();
/src/org/tela_botanica/del/client/navigation/evenement/BusEvenementiel.java
1,10 → 1,14
package org.tela_botanica.del.client.navigation.evenement;
 
import java.util.List;
 
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.gestionhistorique.ConstantesNavigation;
import org.tela_botanica.del.client.modeles.Observation;
import org.tela_botanica.del.client.modeles.Image;
import org.tela_botanica.del.client.navigation.evenement.comparaisoneflore.EvenementComparaisonEflore;
import org.tela_botanica.del.client.navigation.evenement.comparaisoneflore.GestionnaireEvenementComparaisonEflore;
import org.tela_botanica.del.client.navigation.evenement.rechercheimage.EvenementRechercheImage;
import org.tela_botanica.del.client.navigation.evenement.rechercheimage.GestionnaireEvenementRechercheImage;
import org.tela_botanica.del.client.navigation.evenement.validationobservation.EvenementValidation;
import org.tela_botanica.del.client.navigation.evenement.validationobservation.GestionnaireEvenementValidation;
 
33,7 → 37,7
 
@Override
public void onValidationImage(EvenementValidation event) {
doValidationObservation(event.getImageCel());
doValidationImage(event.getImage());
}
});
 
44,10 → 48,19
doComparaisonAvecEflore(event.getTaxonDemande());
}
});
 
addHandler(EvenementRechercheImage.TYPE, new GestionnaireEvenementRechercheImage() {
 
@Override
public void onRechercheImage(EvenementRechercheImage event) {
doRechercheImage(event.getImages());
}
});
}
 
private void doValidationObservation(Observation observation) {
CacheClient.getInstance().setCurrentObservation(observation);
private void doValidationImage(Image image) {
CacheClient.getInstance().setCurrentObservation(image.getObservation());
CacheClient.getInstance().setImageCourante(image);
History.newItem(ConstantesNavigation.PAGE_VALIDATION, true);
History.fireCurrentHistoryState();
}
58,4 → 71,10
History.fireCurrentHistoryState();
}
 
private void doRechercheImage(List<Image> images) {
CacheClient.getInstance().setImages(images);
History.newItem(ConstantesNavigation.PAGE_RECHERCHE_IMAGES, true);
History.fireCurrentHistoryState();
}
 
}
/src/org/tela_botanica/del/client/navigation/evenement/rechercheimage/GestionnaireEvenementRechercheImage.java
New file
0,0 → 1,8
package org.tela_botanica.del.client.navigation.evenement.rechercheimage;
 
 
import com.google.gwt.event.shared.EventHandler;
 
public interface GestionnaireEvenementRechercheImage extends EventHandler {
public void onRechercheImage(EvenementRechercheImage event);
}
/src/org/tela_botanica/del/client/navigation/evenement/rechercheimage/EvenementRechercheImage.java
New file
0,0 → 1,37
package org.tela_botanica.del.client.navigation.evenement.rechercheimage;
 
import java.util.List;
 
import org.tela_botanica.del.client.modeles.Image;
 
import com.google.gwt.event.shared.GwtEvent;
 
public class EvenementRechercheImage extends GwtEvent<GestionnaireEvenementRechercheImage> {
 
public static com.google.gwt.event.shared.GwtEvent.Type<GestionnaireEvenementRechercheImage> TYPE = new com.google.gwt.event.shared.GwtEvent.Type<GestionnaireEvenementRechercheImage>();
 
private List<Image> images;
 
public EvenementRechercheImage(List<Image> images) {
this.images = images;
}
 
@Override
protected void dispatch(GestionnaireEvenementRechercheImage handler) {
handler.onRechercheImage(this);
}
 
@Override
public com.google.gwt.event.shared.GwtEvent.Type<GestionnaireEvenementRechercheImage> getAssociatedType() {
return TYPE;
}
 
public List<Image> getImages() {
return images;
}
 
public void setImages(List<Image> images) {
this.images = images;
}
 
}
/src/org/tela_botanica/del/client/navigation/evenement/validationobservation/EvenementValidation.java
1,6 → 1,6
package org.tela_botanica.del.client.navigation.evenement.validationobservation;
 
import org.tela_botanica.del.client.modeles.Observation;
import org.tela_botanica.del.client.modeles.Image;
 
import com.google.gwt.event.shared.GwtEvent;
 
8,10 → 8,10
 
public static com.google.gwt.event.shared.GwtEvent.Type<GestionnaireEvenementValidation> TYPE = new com.google.gwt.event.shared.GwtEvent.Type<GestionnaireEvenementValidation>();
 
private final Observation observation;
private final Image image;
 
public EvenementValidation(Observation observation) {
this.observation = observation;
public EvenementValidation(Image image) {
this.image = image;
}
 
@Override
24,8 → 24,8
return TYPE;
}
 
public Observation getImageCel() {
return observation;
public Image getImage() {
return image;
}
 
}