New file |
0,0 → 1,117 |
package org.tela_botanica.client.vues; |
|
import java.util.ArrayList; |
import java.util.Iterator; |
import java.util.List; |
|
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.images.Images; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.UniteRangement; |
import org.tela_botanica.client.modeles.Valeur; |
import org.tela_botanica.client.modeles.ValeurListe; |
|
import com.extjs.gxt.ui.client.event.Listener; |
import com.extjs.gxt.ui.client.store.ListStore; |
import com.extjs.gxt.ui.client.store.Store; |
import com.extjs.gxt.ui.client.store.StoreEvent; |
import com.extjs.gxt.ui.client.widget.ContentPanel; |
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig; |
import com.extjs.gxt.ui.client.widget.grid.ColumnModel; |
import com.extjs.gxt.ui.client.widget.grid.Grid; |
import com.extjs.gxt.ui.client.widget.grid.GridSelectionModel; |
import com.extjs.gxt.ui.client.widget.layout.FitLayout; |
import com.google.gwt.core.client.GWT; |
|
public class CollectionFormDescription extends FormulaireOnglet implements Rafraichissable { |
|
private Grid<UniteRangement> uniteRangementGrille = null; |
|
public CollectionFormDescription(Formulaire formulaireCourrant) { |
initialiserOnglet(formulaireCourrant); |
setId("description"); |
setText(Mediateur.i18nC.collectionDescription()); |
|
creerRangement(); |
} |
|
|
private void creerRangement() { |
ContentPanel panneauGrille = creerPanneauContenantGrilleRangement(); |
uniteRangementGrille = creerGrilleRangement(); |
panneauGrille.add(uniteRangementGrille); |
add(panneauGrille); |
} |
|
private ContentPanel creerPanneauContenantGrilleRangement() { |
ContentPanel panneau = new ContentPanel(); |
|
panneau.setHeading(i18nC.collectionUniteRangementTitre()); |
panneau.setIcon(Images.ICONES.table()); |
panneau.setLayout(new FitLayout()); |
panneau.setFrame(true); |
|
return panneau; |
} |
|
private Grid<UniteRangement> creerGrilleRangement() { |
ListStore<UniteRangement> storeGrille = new ListStore<UniteRangement>(); |
storeGrille.addListener(Store.Add, new Listener<StoreEvent<UniteRangement>>() { |
public void handleEvent(StoreEvent<UniteRangement> ce) { |
//actualiserEtatBoutonsBarreOutilsRangement(); |
} |
}); |
storeGrille.addListener(Store.Remove, new Listener<StoreEvent<UniteRangement>>() { |
public void handleEvent(StoreEvent<UniteRangement> ce) { |
//actualiserEtatBoutonsBarreOutilsRangement(); |
} |
}); |
|
List<ColumnConfig> colonnes = new ArrayList<ColumnConfig>(); |
colonnes.add(new ColumnConfig("type", i18nC.collectionUniteRangementType(), 150)); |
colonnes.add(new ColumnConfig("nombre", i18nC.collectionUniteRangementNbre(), 50)); |
colonnes.add(new ColumnConfig("precision", i18nC.collectionUniteRangementPrecision(), 50)); |
colonnes.add(new ColumnConfig("format", i18nC.collectionUniteRangementFormat(), 100)); |
|
GridSelectionModel<UniteRangement> modeleDeSelection = new GridSelectionModel<UniteRangement>(); |
|
ColumnModel modeleDeColonnes = new ColumnModel(colonnes); |
|
Grid<UniteRangement> grilleUniteRangement = new Grid<UniteRangement>(storeGrille, modeleDeColonnes); |
grilleUniteRangement.setHeight(300); |
grilleUniteRangement.setBorders(true); |
grilleUniteRangement.setSelectionModel(modeleDeSelection); |
grilleUniteRangement.getView().setForceFit(true); |
grilleUniteRangement.getView().setAutoFill(true); |
grilleUniteRangement.setAutoExpandColumn("type"); |
grilleUniteRangement.setStripeRows(true); |
grilleUniteRangement.setTrackMouseOver(true); |
|
mediateur.obtenirListeValeurEtRafraichir(this, "typeUniteRangement"); |
|
return grilleUniteRangement; |
} |
|
public void rafraichir(Object nouvellesDonnees) { |
if (nouvellesDonnees instanceof ValeurListe) { |
ValeurListe listeValeurs = (ValeurListe) nouvellesDonnees; |
rafraichirValeurListe(listeValeurs); |
} else { |
GWT.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()), null); |
} |
} |
|
private void rafraichirValeurListe(ValeurListe listeValeurs) { |
if (listeValeurs.getId().equals(config.getListeId("typeUniteRangement"))) { |
Iterator<String> it = listeValeurs.keySet().iterator(); |
while (it.hasNext()) { |
Valeur valeur = listeValeurs.get(it.next()); |
UniteRangement unite = new UniteRangement(); |
unite.setType(valeur.getNom()); |
uniteRangementGrille.getStore().add(unite); |
} |
} else { |
GWT.log("Gestion de la liste "+listeValeurs.getId()+" non implémenté!", null); |
} |
} |
} |