Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 445 → Rev 446

/trunk/src/org/tela_botanica/del/client/composants/pagination/PaginationPresenteur.java
73,6 → 73,8
private int pageCourante = 1;
private int nbElementsTotal = 0;
private int pas = 10;
private String groupePagination = null;
 
/**
* Constructeur de l'application
87,6 → 89,8
this.vue = vue;
this.pas = pas;
this.pageCourante = pageCourante;
this.nbPage = calculerNbPage();
}
 
/**
110,8 → 114,7
vue.getSelecteurPas().addChangeHandler(new ChangeHandler() {
@Override
public void onChange(ChangeEvent event) {
chargerElements(0, vue.getPasSelectionne());
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPas(vue.getPasSelectionne()));
changerPas(vue.getPasSelectionne());
}
});
 
132,7 → 135,7
vue.getBoutonPremierePage().addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
afficherLaPremierePage();
allerALaPremierePage();
}
});
 
139,7 → 142,7
vue.getBoutonDernierePage().addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
afficherlaDernierePage();
allerAlaDernierePage();
}
});
 
147,8 → 150,10
 
@Override
public void onChangementPage(EvenementChangementPage event) {
pageCourante = event.getPageAAfficher();
mettreEnValeurPageCourante();
if(event.getGroupePagination() == groupePagination) {
pageCourante = event.getPageAAfficher();
mettreEnValeurPageCourante();
}
}
});
 
156,19 → 161,23
 
@Override
public void onChangementPas(EvenementChangementPas event) {
 
// remet la page a zero lors du changement de pas
pageCourante = 1;
 
// modifie le pas et les liens en fonction
pas = event.getPas();
actualiserPas();
actualiserLiensPagesPagination();
 
if(event.getGroupePagination() == groupePagination) {
// modifie le pas et les liens en fonction
pas = event.getPas();
actualiserPas();
actualiserLiensPagesPagination();
}
}
});
}
 
private void gererDecalagePageCourante(int ancienPas, int nouveauPas) {
if(ancienPas != nouveauPas) {
double rapportPas = (double)ancienPas/(double)nouveauPas;
pageCourante = (int)(Math.ceil((double)pageCourante*(double)rapportPas));
}
}
/**
* Gérer les évènements sur les boutons dynamiques (qui sont recréés à
* chaque fois)
182,8 → 191,9
public void onClick(ClickEvent event) {
HasText boutonCourant = (HasText) event.getSource();
int pageAAfficher = Integer.parseInt(boutonCourant.getText());
pageCourante = pageAAfficher;
chargerElements(pas * (pageAAfficher - 1), pas * (pageAAfficher));
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher));
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher, groupePagination));
}
});
}
225,12 → 235,21
public void setPageCourante(int pageCourante) {
this.pageCourante = pageCourante;
}
public void changerPas(int nouveauPas) {
gererDecalagePageCourante(pas, nouveauPas);
pas = nouveauPas;
chargerElements((pageCourante - 1)*pas, pageCourante*pas);
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPas(nouveauPas, groupePagination));
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageCourante, groupePagination));
}
 
public void allerALaPagePrecedente() {
if (pageCourante > 1) {
int pageAAfficher = pageCourante - 1;
pageCourante = pageAAfficher;
chargerElements(pas * (pageAAfficher - 1), pas * (pageAAfficher));
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher));
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher, groupePagination));
}
 
}
238,21 → 257,24
public void allerALapageSuivante() {
if (pageCourante < nbPage - 1) {
int pageAAfficher = pageCourante + 1;
pageCourante = pageAAfficher;
chargerElements(pas * (pageAAfficher - 1), pas * (pageAAfficher));
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher));
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher, groupePagination));
}
}
 
public void afficherLaPremierePage() {
public void allerALaPremierePage() {
int pageAAfficher = 1;
pageCourante = pageAAfficher;
chargerElements(0, pas);
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher));
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher, groupePagination));
}
 
public void afficherlaDernierePage() {
public void allerAlaDernierePage() {
int pageAAfficher = nbPage - 1;
pageCourante = pageAAfficher;
chargerElements(pas * (pageAAfficher - 1), pas * (pageAAfficher));
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher));
BusEvenementiel.getInstance().fireEvent(new EvenementChangementPage(pageAAfficher, groupePagination));
}
 
/** calcule le nombre de page en fonction du pas */
284,5 → 306,13
public void setPas(int pas) {
this.pas = pas;
}
public void setGroupePagination(String groupePagination) {
this.groupePagination = groupePagination;
}
public String getGroupePagination() {
return groupePagination;
}
 
}