Subversion Repositories eFlore/Applications.coel

Compare Revisions

Ignore whitespace Rev 1036 → Rev 1040

/trunk/src/org/tela_botanica/client/vues/structure/StructureForm.java
681,6 → 681,9
}
}
System.out.println(structureARetourner);
return structureARetourner;
}
/trunk/src/org/tela_botanica/client/vues/structure/StructureListeVue.java
12,7 → 12,7
import org.tela_botanica.client.modeles.Utilisateur;
import org.tela_botanica.client.modeles.structure.Structure;
import org.tela_botanica.client.modeles.structure.StructureListe;
import org.tela_botanica.client.util.Debug;
import org.tela_botanica.client.vues.BarrePaginationVue;
 
import com.extjs.gxt.ui.client.Registry;
import com.extjs.gxt.ui.client.Style.SortDir;
34,6 → 34,7
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.Window;
 
public class StructureListeVue extends ContentPanel implements Rafraichissable {
46,6 → 47,8
private Button modifier;
private Button supprimer;
private Button ajouter;
private BarrePaginationVue pagination = null;
 
public StructureListeVue(Mediateur mediateurCourant) {
mediateur = mediateurCourant;
119,6 → 122,10
}
});
add(grille);
// Définition de la barre de pagination
pagination = new BarrePaginationVue(new StructureListe(), mediateur);
setBottomComponent(pagination);
}
 
private void clicListe(Structure structure) {
147,6 → 154,9
public void rafraichir(Object nouvellesDonnees) {
if (nouvellesDonnees instanceof StructureListe) {
StructureListe structures = (StructureListe) nouvellesDonnees;
System.out.println("rafraichir structure liste");
pagination.setlistePaginable(structures);
pagination.rafraichir(structures.getPageTable());
if (structures != null) {
List<Structure> liste = structures.toList();
156,6 → 166,7
gererEtatActivationBouton();
mediateur.actualiserPanneauCentral();
grille.fireEvent(Events.ViewReady);
}
} else if (nouvellesDonnees instanceof Information) {
Information info = (Information) nouvellesDonnees;
/trunk/src/org/tela_botanica/client/vues/BarrePaginationVue.java
25,6 → 25,7
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
import com.google.gwt.event.dom.client.KeyCodes;
import com.google.gwt.i18n.client.Dictionary;
import com.google.gwt.user.client.Window;
 
public class BarrePaginationVue extends ToolBar implements Rafraichissable {
 
39,7 → 40,12
private TextField<String> champPage = new TextField<String>();
private SimpleComboBox selecteurTaillePage = new SimpleComboBox();
 
private Text labelFiltre;
private TextField<String> filtre;
private Button annulerFiltre;
private boolean filtreActive = false;
private String termeRecherche = "";
LinkedList<Integer> intervallePages = new LinkedList<Integer>();
ListStore storeIntervalle = new ListStore() ;
145,6 → 151,19
add(nbElemParPage);
// Ajout d'un espace pour mettre le nombre d'éléments à droite
labelFiltre = new Text("Recherche rapide : ");
labelFiltre.setStyleAttribute("padding-left", "15px");
labelFiltre.setStyleAttribute("padding-right", "5px");
add(labelFiltre);
filtre = new TextField<String>();
filtre.setWidth(150);
this.add(filtre);
annulerFiltre = new Button();
annulerFiltre.setIcon(Images.ICONES.annuler());
add(annulerFiltre);
add(new FillToolItem());
intervalleElements = new Text(mediateur.i18nM.elementsAffiches(UtilString.ucFirst(labelElement), pageCourante * taillePage,
153,11 → 172,15
// on ajoute les différents listeners
ajouterListeners();
}
/**
* Texte nommant les elements pagines (Images, Observation, truc, machin etc...).
* @param label
256,8 → 279,34
listePaginable.changerNumeroPage(pageCourante);
}
});
 
 
annulerFiltre.addSelectionListener(new SelectionListener<ButtonEvent>() {
public void componentSelected(ButtonEvent ce) {
filtre.setValue("");
termeRecherche = "";
filtreActive = false;
listePaginable.changerNumeroPage(pageCourante);
}
});
filtre.addKeyListener(new KeyListener(){
public void componentKeyUp(ComponentEvent ce) {
if (ce.getKeyCode() == KeyCodes.KEY_ENTER) {
System.out.println(pageCourante +" ---- " + nbElement);
termeRecherche = filtre.getValue();
if (termeRecherche == null || termeRecherche.equals("")) {
filtreActive = false;
listePaginable.changerNumeroPage(pageCourante);
} else {
listePaginable.filtrerParNom(termeRecherche);
filtreActive = true;
}
}
}
});
champPage.addKeyListener(new KeyListener() {
 
public void componentKeyUp(ComponentEvent ce) {
296,8 → 345,9
champPage.focus();
}
}
}
}
 
/* public void onFocus(Field field) {
 
champPage.focus();
360,28 → 410,33
*/
public void rafraichirNumeroPage() {
surTotalPage.setText(" sur " + pageTotale);
 
if (nbElement == 0) {
champPage.setValue("" + (0));
// on met simplement à jour l'intervalle qui contient toujours le
// même nombre d'éléments
intervalleElements.setText(mediateur.i18nM.elementsAffiches(UtilString.ucFirst(labelElement), 0,0,0));
if (filtreActive == true) {
intervalleElements.setText("<i>Recherche rapide : </i>" + termeRecherche);
} else {
champPage.setValue("" + (pageCourante + 1));
 
// si la page n'est pas la dernière
if (pageCourante + 1 != pageTotale) {
// sauf pour la dernière page qui contient souvent moins
// d'élements que le nombre d'élements par page
intervalleElements.setText(mediateur.i18nM.elementsAffiches(UtilString.ucFirst(labelElement), pageCourante * taillePage,
(pageCourante + 1) * taillePage, nbElement));
surTotalPage.setText(" sur " + pageTotale);
if (nbElement == 0) {
champPage.setValue("" + (0));
// on met simplement à jour l'intervalle qui contient toujours le
// même nombre d'éléments
intervalleElements.setText(mediateur.i18nM.elementsAffiches(UtilString.ucFirst(labelElement), 0,0,0));
} else {
// on met simplement à jour l'intervalle qui contient toujours
// le même nombre d'éléments
intervalleElements.setText(mediateur.i18nM.elementsAffiches(UtilString.ucFirst(labelElement), pageCourante * taillePage,
nbElement, nbElement));
champPage.setValue("" + (pageCourante + 1));
// si la page n'est pas la dernière
if (pageCourante + 1 != pageTotale) {
// sauf pour la dernière page qui contient souvent moins
// d'élements que le nombre d'élements par page
intervalleElements.setText(mediateur.i18nM.elementsAffiches(UtilString.ucFirst(labelElement), pageCourante * taillePage,
(pageCourante + 1) * taillePage, nbElement));
} else {
// on met simplement à jour l'intervalle qui contient toujours
// le même nombre d'éléments
intervalleElements.setText(mediateur.i18nM.elementsAffiches(UtilString.ucFirst(labelElement), pageCourante * taillePage,
nbElement, nbElement));
}
}
}
}