Subversion Repositories eFlore/Applications.del

Compare Revisions

Regard whitespace Rev 357 → Rev 358

/trunk/src/org/tela_botanica/del/client/composants/pagination/PaginationPresenteur.java
10,12 → 10,12
import com.google.gwt.user.client.ui.ListBox;
 
/**
* @author gregoire
* Pagination GENERIQUE qui permet d'afficher un nombre donné d'éléments (pas)
* La méthode changerPage est abstraite et doit être définie lors de l'instanciation
* de la classe pagination pour permettre d'afficher la suite des éléments
* La méthode actualiserPasCache est abstraite car le pas est différent en
* fonction de la page où l'on se trouve
* @author gregoire Pagination GENERIQUE qui permet d'afficher un nombre donné
* d'éléments (pas) La méthode changerPage est abstraite et doit être
* définie lors de l'instanciation de la classe pagination pour
* permettre d'afficher la suite des éléments La méthode
* actualiserPasCache est abstraite car le pas est différent en fonction
* de la page où l'on se trouve
* */
public abstract class PaginationPresenteur {
 
27,15 → 27,29
/**
* Constructeur de l'application
* @param nbElementsTotal : le nombre total des éléments à paginer
* @param pas : le nombre d'éléments à afficher par page
*
* @param nbElementsTotal
* : le nombre total des éléments à paginer
* @param pas
* : le nombre d'éléments à afficher par page
* */
public PaginationPresenteur(int nbElementsTotal, int pas) {
this.nbElementsTotal = nbElementsTotal;
this.pas=pas;
vue = new PaginationVue();
changerPas(pas);
}
/**
* Methode go du modèle MVP
*
* @param container
* : la vue ou éxécuter l'affichage
*/
public void go(HasWidgets container) {
actualiserLiens();
container.add(vue);
}
 
/** Met à jour le nombre de page en fonction du pas */
private void actualiserNbPage() {
Double nombrePages = Math.ceil((double) nbElementsTotal / (double) pas);
42,28 → 56,43
this.nbPage = nombrePages.intValue();
}
 
/** Changer le pas de la pagination
* @param pas : le nombre d'éléments à afficher par page */
/**
* Changer le pas de la pagination
*
* @param pas
* : le nombre d'éléments à afficher par page
*/
public void changerPas(int pas) {
this.pas = pas;
actualiserNbPage();
changerPage(pas * pageCourante, pas * (pageCourante + 1));
switch (pas) {
case 5:
vue.getSelecteurPas().setSelectedIndex(0);
break;
case 10:
vue.getSelecteurPas().setSelectedIndex(1);
break;
case 15:
vue.getSelecteurPas().setSelectedIndex(2);
break;
case 20:
vue.getSelecteurPas().setSelectedIndex(3);
break;
default:
break;
}
actualiserPasCache(pas);
}
/** Methode Go du modèle MVP
* @param container : la vue ou éxécuter l'affichage */
public void go(HasWidgets container) {
actualiserLiens();
container.add(vue);
}
/** Actualiser les liens pour n'afficher 5 avant et 5 après
/**
* Actualiser les liens pour n'afficher 5 avant et 5 après
* */
public void actualiserLiens() {
 
HorizontalPanel zoneLiens = vue.zoneLiens;
zoneLiens.clear();
int pageDebut = pagesAvant();
int pageFin = pagesApres();
108,7 → 137,8
}
}
 
/** Gérer les évènements sur les boutons
/**
* Gérer les évènements sur les boutons
* */
public void gererEvenements() {
vue.selecteurPas.addChangeHandler(new ChangeHandler() {
135,7 → 165,6
}
});
int nbLiens = vue.zoneLiens.getWidgetCount();
for (int i=0; i < nbLiens; i++) {
Button boutonCourant = (Button) vue.zoneLiens.getWidget(i);
156,7 → 185,8
}
}
 
/** Retourne la limite supèrieur du nombre de pages à afficher
/**
* Retourne la limite supèrieur du nombre de pages à afficher
* */
public void pageSuivante() {
if (pageCourante < nbPage - 1) {
168,7 → 198,8
}
}
/** Retourne la limite infèrieure du nombre de pages à afficher
/**
* Retourne la limite infèrieure du nombre de pages à afficher
* */
public void pagePrecedente() {
if (pageCourante > 1) {
185,6 → 216,7
}
 
public abstract void changerPage(int debut, int fin);
 
public abstract void actualiserPasCache(int pas);
 
}