Subversion Repositories eFlore/Applications.coel

Compare Revisions

Ignore whitespace Rev 702 → Rev 703

/trunk/src/org/tela_botanica/client/i18n/Constantes.properties
10,6 → 10,8
non = non
autres = Autres
nom = Nom
date = Date
lieu = Lieu
 
# Identification
modeAnonyme = Mode anonyme
18,6 → 20,7
ajouter = Ajouter
modifier = Modifier
supprimer = Supprimer
rafraichir = Rafraichir
reinitialiser = Réinitialiser
appliquer = Appliquer
annuler = Annuler
179,8 → 182,9
personneModeAjout = Ajouter une personne
personneModeModifier = Modifier une personne
 
personnePrefix = Préfixe
personnePrefixInfo = Civilité (abbé, colonel, etc...)
personneIdentite = Identité
personnePrefixe = Préfixe
personnePrefixeInfo = Civilité (abbé, colonel, etc...)
personnePrenom = Prénom
personneNom = Nom
personneNomAutre = Autre Nom
187,19 → 191,22
personneNomComplet = Nom Complet
personneAbreviation = Abréviation
personneAbreviationAutre = Autres abréviations
personneNaissance = Naissance
personneDateNaissance = Date de naissance
personneLieuNaissance = Lieu de naissance
personneEstDecedee = Est decedee
personneDeces = Décès
personneEstDecedee = Est décédée
personneDecedeeInterogation = Décédée?
personneDateDeces = Date de décès
personneLieuDeces = Lieu de décès
 
personneAdresses = Adresses
personneCodePostal = Code Postal
personneVille = Ville
personneCourriel = Courriel
 
personneIdentite = Identité
personneInfoNat = Informations Naturalistes
personneProjet = Projet
personneAdresses = Adresses
personneLogos = Logos
 
# Pagination
/trunk/src/org/tela_botanica/client/i18n/Constantes.java
18,11 → 18,14
String non();
String autres();
String nom();
String date();
String lieu();
 
// Boutons
String ajouter();
String modifier();
String supprimer();
String rafraichir();
String reinitialiser();
String appliquer();
String annuler();
181,32 → 184,34
String personneListeLabel();
String personneModeAjout();
String personneModeModifier();
String personneNomComplet();
String personneCodePostal();
String personneVille();
String personneCourriel();
 
String personneIdentite();
String personnePrefixe();
String personnePrefixeInfo();
String personnePrenom();
String personneNom();
String personneNomAutre();
String personneAbreviation();
String personneAbreviationAutre();
String personneNomComplet();
String personneNaissance();
String personneDateNaissance();
String personneLieuNaissance();
String personneDeces();
String personneEstDecedee();
String personneDecedeeInterogation();
String personneDateDeces();
String personneLieuDeces();
String personneAdresses();
String personneCodePostal();
String personneVille();
String personneCourriel();
String personneLogos();
String personnePrenom();
String personneIdentite();
String personneInfoNat();
String personneProjet();
 
String personneAdresses();
String personneLogos();
//Pagination:
String page();
String sur();
/trunk/src/org/tela_botanica/client/vues/CollectionFormAuteur.java
New file
0,0 → 1,381
package org.tela_botanica.client.vues;
 
import java.util.ArrayList;
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.Information;
import org.tela_botanica.client.modeles.Personne;
import org.tela_botanica.client.modeles.PersonneListe;
import org.tela_botanica.client.modeles.ValeurListe;
 
import com.extjs.gxt.ui.client.event.ButtonEvent;
import com.extjs.gxt.ui.client.event.ComponentEvent;
import com.extjs.gxt.ui.client.event.Events;
import com.extjs.gxt.ui.client.event.GridEvent;
import com.extjs.gxt.ui.client.event.KeyListener;
import com.extjs.gxt.ui.client.event.Listener;
import com.extjs.gxt.ui.client.event.SelectionListener;
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.Info;
import com.extjs.gxt.ui.client.widget.MessageBox;
import com.extjs.gxt.ui.client.widget.button.Button;
import com.extjs.gxt.ui.client.widget.form.ComboBox;
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
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.grid.HeaderGroupConfig;
import com.extjs.gxt.ui.client.widget.grid.RowNumberer;
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
import com.google.gwt.core.client.GWT;
 
public class CollectionFormAuteur extends FormulaireOnglet implements Rafraichissable {
private ContentPanel panneauPrincipal = null;
private ToolBar barreOutils = null;
private Grid<Personne> grille;
private PersonneListe auteurs = null;
private PersonneListe auteursAjoutes = null;
private PersonneListe auteursSupprimes = null;
private ComboBox<Personne> auteursSaisisComboBox = null;
private Button auteursBoutonSupprimer = null;
private Button auteursBoutonModifier = null;
private static final String ETAT_AJOUTE = "A";
private static final String ETAT_SUPPRIME = "S";
public CollectionFormAuteur(Formulaire formulaireCourrant) {
initialiserOnglet(formulaireCourrant);
setId("auteur");
setText(Mediateur.i18nC.collectionAuteur());
setStyleAttribute("padding", "0");
panneauPrincipal = creerPanneauContenantGrille();
barreOutils = creerBarreOutilsGrille();
panneauPrincipal.setTopComponent(barreOutils);
grille = creerGrille();
panneauPrincipal.add(grille);
add(panneauPrincipal);
initialiser();
}
private void initialiser() {
// Remise à zéro des modification dans la liste des auteurs
auteursAjoutes = new PersonneListe();
auteursSupprimes = new PersonneListe();
// Actualisation de l'état des boutons de la barre d'outils
actualiserEtatBoutonsBarreOutils();
}
private ContentPanel creerPanneauContenantGrille() {
ContentPanel panneau = new ContentPanel();
panneau.setHeading(i18nC.collectionAuteurTitre());
panneau.setIcon(Images.ICONES.table());
panneau.setLayout(new FitLayout());
panneau.setFrame(true);
return panneau;
}
 
private ToolBar creerBarreOutilsGrille() {
ToolBar barreOutils = new ToolBar();
Button ajouterPersonneBouton = creerBoutonAjouter();
barreOutils.add(ajouterPersonneBouton);
barreOutils.add(new SeparatorToolItem());
auteursBoutonModifier = creerBoutonModifier();
barreOutils.add(auteursBoutonModifier);
barreOutils.add(new SeparatorToolItem());
auteursBoutonSupprimer = creerBoutonSupprimer();
barreOutils.add(auteursBoutonSupprimer);
barreOutils.add(new SeparatorToolItem());
Button rafraichirPersonneBouton = creerBoutonRafraichir();
barreOutils.add(rafraichirPersonneBouton);
barreOutils.add(new SeparatorToolItem());
auteursSaisisComboBox = creerComboBoxAuteursSaisis();
barreOutils.add(auteursSaisisComboBox);
Button ajouterAuteurSaisiBouton = creerBoutonAjouterAuteurSaisi();
barreOutils.add(ajouterAuteurSaisiBouton);
return barreOutils;
}
 
private Button creerBoutonAjouter() {
Button bouton = new Button(i18nC.ajouter());
bouton.setIcon(Images.ICONES.vcardAjouter());
bouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
@Override
public void componentSelected(ButtonEvent ce) {
PersonneForm formulairePersonne = new PersonneForm(Formulaire.MODE_AJOUTER);
formulairePersonne.setHeaderVisible(false);
formulairePersonne.setTopComponent(null);
// TODO : gérer la barre d'outil avec des évènements spécifique au contexte de fenêtre modale
//formulairePersonne.setBottomComponent(null);
final FenetreForm fenetre = new FenetreForm(i18nC.personneModeAjout());
fenetre.add(formulairePersonne);
fenetre.show();
}
});
return bouton;
}
private Button creerBoutonModifier() {
Button bouton = new Button(i18nC.modifier());
bouton.setIcon(Images.ICONES.vcardModifier());
bouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
@Override
public void componentSelected(ButtonEvent ce) {
Personne auteurSaisiSelectionne = grille.getSelectionModel().getSelectedItem();
if (auteurSaisiSelectionne == null) {
Info.display("Info", "Veuillez selectionner un auteur");
} else {
PersonneForm formulairePersonne = new PersonneForm(Formulaire.MODE_MODIFIER);
formulairePersonne.setHeaderVisible(false);
formulairePersonne.setTopComponent(null);
// TODO : gérer la barre d'outil avec des évènements spécifique au contexte de fenêtre modale
//formulairePersonne.setBottomComponent(null);
// TODO : simplifier la gestion de l'ajout des données d'une Personne au form pour la modification... (pas besoin de passer par une liste).
Information info = new Information("liste_personne");
PersonneListe personnes = new PersonneListe();
personnes.put(auteurSaisiSelectionne.getId(), auteurSaisiSelectionne);
info.setDonnee(0, personnes);
formulairePersonne.rafraichir(info);
final FenetreForm fenetre = new FenetreForm(i18nC.personneModeModifier());
fenetre.add(formulairePersonne);
fenetre.show();
}
}
});
return bouton;
}
 
private Button creerBoutonSupprimer() {
Button bouton = new Button(i18nC.supprimer());
bouton.setIcon(Images.ICONES.vcardSupprimer());
bouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
@Override
public void componentSelected(ButtonEvent ce) {
Personne auteurSaisiSelectionne = grille.getSelectionModel().getSelectedItem();
if (auteurSaisiSelectionne == null) {
Info.display("Info", "Veuillez selectionner un auteur");
} else {
supprimerAuteurDansGrille(auteurSaisiSelectionne);
}
}
});
return bouton;
}
private Button creerBoutonRafraichir() {
Button bouton = new Button(i18nC.rafraichir());
bouton.setIcon(Images.ICONES.rafraichir());
bouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
@Override
public void componentSelected(ButtonEvent ce) {
// TODO : mettre en place le rafraichissement de la liste
}
});
return bouton;
}
private ComboBox<Personne> creerComboBoxAuteursSaisis() {
ListStore<Personne> personneExistanteStore = new ListStore<Personne>();
personneExistanteStore.add(new ArrayList<Personne>());
ComboBox<Personne> comboBox = new ComboBox<Personne>();
comboBox.setWidth(200);
comboBox.setEmptyText("Chercher une personne existante...");
comboBox.setTriggerAction(TriggerAction.ALL);
comboBox.setEditable(true);
comboBox.setDisplayField("fmt_nom_complet");
comboBox.setStore(personneExistanteStore);
comboBox.addKeyListener(new KeyListener() {
public void componentKeyUp(ComponentEvent ce) {
ComboBox<Personne> comboBox = (ComboBox<Personne>) ce.getComponent();
if (!ce.isNavKeyPress() && comboBox.getRawValue() != null && comboBox.getRawValue().length() > 0) {
obtenirAuteursSaisis(comboBox.getRawValue());
}
}
});
return comboBox;
}
private Button creerBoutonAjouterAuteurSaisi() {
Button bouton = new Button("Ajouter");
bouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
@Override
public void componentSelected(ButtonEvent ce) {
Personne auteurSaisiSelectionne = auteursSaisisComboBox.getValue();
ajouterAuteurDansGrille(auteurSaisiSelectionne);
}
});
return bouton;
}
private void ajouterAuteurDansGrille(Personne auteur) {
if (auteur != null) {
// Ajout de la personne ajoutée à la liste
if (auteur.getId() != null && !auteur.getId().equals("")) {
auteursAjoutes.put(auteur.getId(), auteur);
}
// Définition de l'état
auteur.set("etat", ETAT_AJOUTE);
// Ajout à la grille
grille.getStore().insert(auteur, 0);
}
}
private void supprimerAuteurDansGrille(Personne auteur) {
if (auteur != null) {
// Ajout de la personne supprimée à la liste
if ((auteur.get("etat") == null || !auteur.get("etat").equals(ETAT_AJOUTE)) && auteur.getId() != null && !auteur.getId().equals("")) {
auteursSupprimes.put(auteur.getId(), auteur);
}
// Suppression de l'enregistrement de la grille
grille.getStore().remove(auteur);
}
}
 
private Grid<Personne> creerGrille() {
ListStore<Personne> storeGrille = new ListStore<Personne>();
storeGrille.addListener(Store.Add, new Listener<StoreEvent<Personne>>() {
public void handleEvent(StoreEvent<Personne> ce) {
actualiserEtatBoutonsBarreOutils();
}
});
storeGrille.addListener(Store.Remove, new Listener<StoreEvent<Personne>>() {
public void handleEvent(StoreEvent<Personne> ce) {
actualiserEtatBoutonsBarreOutils();
}
});
RowNumberer pluginLigneNumero = new RowNumberer();
List<ColumnConfig> colonnes = new ArrayList<ColumnConfig>();
colonnes.add(pluginLigneNumero);
colonnes.add(new ColumnConfig("fmt_nom_complet", i18nC.personneNomComplet(), 150));
colonnes.add(new ColumnConfig("nom", i18nC.personneNom(), 75));
colonnes.add(new ColumnConfig("prenom", i18nC.personnePrenom(), 75));
colonnes.add(new ColumnConfig("prefixe", i18nC.personnePrefixe(), 50));
//colonnes.add(new ColumnConfig("truk_nom_autre", i18nC.personneNomAutre(), 200));
colonnes.add(new ColumnConfig("naissance_date", i18nC.date(), 75));
colonnes.add(new ColumnConfig("naissance_lieu", i18nC.lieu(), 100));
colonnes.add(new ColumnConfig("ce_deces", i18nC.personneDecedeeInterogation(), 50));
colonnes.add(new ColumnConfig("deces_date", i18nC.date(), 75));
colonnes.add(new ColumnConfig("deces_lieu", i18nC.lieu(), 100));
GridSelectionModel<Personne> modeleDeSelection = new GridSelectionModel<Personne>();
ColumnModel modeleDeColonnes = new ColumnModel(colonnes);
modeleDeColonnes.addHeaderGroup(0, 1, new HeaderGroupConfig(i18nC.personneIdentite(), 1, 4));
modeleDeColonnes.addHeaderGroup(0, 5, new HeaderGroupConfig(i18nC.personneNaissance(), 1, 2));
modeleDeColonnes.addHeaderGroup(0, 7, new HeaderGroupConfig(i18nC.personneDeces(), 1, 3));
Grid<Personne> grillePersonne = new Grid<Personne>(storeGrille, modeleDeColonnes);
grillePersonne.setHeight("100%");
grillePersonne.setBorders(true);
grillePersonne.setSelectionModel(modeleDeSelection);
grillePersonne.addPlugin(pluginLigneNumero);
grillePersonne.getView().setForceFit(true);
grillePersonne.setAutoExpandColumn("fmt_nom_complet");
grillePersonne.setStripeRows(true);
grillePersonne.setTrackMouseOver(true);
return grillePersonne;
}
public void actualiserEtatBoutonsBarreOutils() {
// Activation des boutons si la grille contient un élément
if (grille.getStore().getCount() > 0) {
auteursBoutonSupprimer.enable();
auteursBoutonModifier.enable();
}
// Désactivation des boutons si la grille ne contient plus d'élément
if (grille.getStore().getCount() == 0) {
auteursBoutonSupprimer.disable();
auteursBoutonModifier.disable();
}
}
public void rafraichir(Object nouvellesDonnees) {
if (nouvellesDonnees instanceof Information) {
Information info = (Information) nouvellesDonnees;
rafraichirInformation(info);
} else 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(""))) {
Formulaire.rafraichirComboBox(listeValeurs, null, null);
} else {
GWT.log("Gestion de la liste "+listeValeurs.getId()+" non implémenté!", null);
}
}
public void rafraichirInformation(Information info) {
if (info.getMessages() != null && !info.getMessages().toString().equals("[]")) {
GWT.log("MESSAGES:\n"+info.getMessages().toString(), null);
}
String type = info.getType();
if (type.equals("liste_personne")) {
if (info.getDonnee(0) != null) {
PersonneListe personnes = (PersonneListe) info.getDonnee(0);
List<Personne> liste = personnes.toList();
auteursSaisisComboBox.getStore().removeAll();
auteursSaisisComboBox.getStore().add(liste);
auteursSaisisComboBox.expand();
}
} else if (type.equals("liste_collection_a_personne")) {
if (info.getDonnee(0) != null) {
initialiser();
// TODO : passer à la méthode peupler un objet CollectionAPersonneListe et modifier le type de auteurs
//auteurs = (CollectionAPersonneListe) info.getDonnee(0);
peupler();
}
}
}
 
private void peupler() {
layout();
Info.display("Chargement des Auteurs", "ok");
}
 
private void obtenirAuteursSaisis(String nom) {
mediateur.selectionnerPersonneParNomComplet(this, null, nom+"%");
}
}
/trunk/src/org/tela_botanica/client/vues/Formulaire.java
11,9 → 11,11
import org.tela_botanica.client.modeles.Configuration;
import org.tela_botanica.client.modeles.Valeur;
import org.tela_botanica.client.modeles.ValeurListe;
import org.tela_botanica.client.modeles.aDonneeListe;
 
import com.extjs.gxt.ui.client.Registry;
import com.extjs.gxt.ui.client.Style.HorizontalAlignment;
import com.extjs.gxt.ui.client.Style.SortDir;
import com.extjs.gxt.ui.client.event.BaseEvent;
import com.extjs.gxt.ui.client.event.ButtonEvent;
import com.extjs.gxt.ui.client.event.ComponentEvent;
20,6 → 22,7
import com.extjs.gxt.ui.client.event.Events;
import com.extjs.gxt.ui.client.event.Listener;
import com.extjs.gxt.ui.client.event.SelectionListener;
import com.extjs.gxt.ui.client.store.ListStore;
import com.extjs.gxt.ui.client.widget.LayoutContainer;
import com.extjs.gxt.ui.client.widget.TabItem;
import com.extjs.gxt.ui.client.widget.TabPanel;
27,6 → 30,7
import com.extjs.gxt.ui.client.widget.button.ButtonBar;
import com.extjs.gxt.ui.client.widget.form.CheckBox;
import com.extjs.gxt.ui.client.widget.form.CheckBoxGroup;
import com.extjs.gxt.ui.client.widget.form.ComboBox;
import com.extjs.gxt.ui.client.widget.form.Field;
import com.extjs.gxt.ui.client.widget.form.FormPanel;
import com.extjs.gxt.ui.client.widget.form.Radio;
276,4 → 280,15
cp.layout();
}
@SuppressWarnings({"unchecked"})
public static void rafraichirComboBox(aDonneeListe<?> listeValeurs, ListStore store, ComboBox combo) {
List<?> liste = listeValeurs.toList();
if (liste.size() > 0) {
store.removeAll();
store.add(liste);
store.sort("nom", SortDir.ASC);
combo.setStore(store);
}
}
}
/trunk/src/org/tela_botanica/client/vues/FenetreForm.java
New file
0,0 → 1,20
package org.tela_botanica.client.vues;
 
import com.extjs.gxt.ui.client.widget.Window;
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
import com.google.gwt.core.client.GWT;
 
public class FenetreForm extends Window{
 
public FenetreForm(String titre) {
int hauteur = (int) Math.ceil(com.google.gwt.user.client.Window.getClientHeight() * .8);
int largeur = (int) Math.ceil(com.google.gwt.user.client.Window.getClientWidth() * .8);
GWT.log("Taille:"+hauteur+"x"+largeur, null);
setSize(largeur, hauteur);
setPlain(true);
setModal(true);
setBlinkModal(true);
setHeading(titre);
setLayout(new FitLayout());
}
}
/trunk/src/org/tela_botanica/client/vues/CollectionListeVue.java
84,7 → 84,7
setTopComponent(toolBar);
 
List<ColumnConfig> colonnes = new ArrayList<ColumnConfig>();
colonnes.add(new ColumnConfig("nom", i18nC.nom(), 300));
colonnes.add(new ColumnConfig("nom", i18nC.personneNom(), 300));
colonnes.add(new ColumnConfig("structure_nom", i18nC.structure(), 200));
colonnes.add(new ColumnConfig("structure_ville", i18nC.ville(), 150));
colonnes.get(1).setHidden(true);
/trunk/src/org/tela_botanica/client/vues/CollectionFormGeneral.java
1,7 → 1,5
package org.tela_botanica.client.vues;
 
import java.util.List;
 
import org.tela_botanica.client.Mediateur;
import org.tela_botanica.client.composants.ChampMultiValeurs;
import org.tela_botanica.client.interfaces.Rafraichissable;
13,10 → 11,6
import org.tela_botanica.client.modeles.StructureListe;
import org.tela_botanica.client.modeles.Valeur;
import org.tela_botanica.client.modeles.ValeurListe;
import org.tela_botanica.client.modeles.aDonnee;
import org.tela_botanica.client.modeles.aDonneeListe;
 
import com.extjs.gxt.ui.client.Style.SortDir;
import com.extjs.gxt.ui.client.store.ListStore;
import com.extjs.gxt.ui.client.widget.form.ComboBox;
import com.extjs.gxt.ui.client.widget.form.Field;
305,13 → 299,13
rafraichirValeurListe(listeValeurs);
} else if (nouvellesDonnees instanceof ProjetListe) {
ProjetListe projets = (ProjetListe) nouvellesDonnees;
rafraichirComboBox(projets, projetsStore, projetsCombo);
Formulaire.rafraichirComboBox(projets, projetsStore, projetsCombo);
} else if (nouvellesDonnees instanceof StructureListe) {
StructureListe structures = (StructureListe) nouvellesDonnees;
rafraichirComboBox(structures, structuresStore, structuresCombo);
Formulaire.rafraichirComboBox(structures, structuresStore, structuresCombo);
} else if (nouvellesDonnees instanceof CollectionListe) {
CollectionListe collections = (CollectionListe) nouvellesDonnees;
rafraichirComboBox(collections, collectionsStore, collectionsCombo);
Formulaire.rafraichirComboBox(collections, collectionsStore, collectionsCombo);
} else {
GWT.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()), null);
}
319,25 → 313,16
private void rafraichirValeurListe(ValeurListe listeValeurs) {
if (listeValeurs.getId().equals(config.getListeId("typeCollectionNcd"))) {
rafraichirComboBox(listeValeurs, typesCollectionStore, typesCollectionCombo);
Formulaire.rafraichirComboBox(listeValeurs, typesCollectionStore, typesCollectionCombo);
} else if (listeValeurs.getId().equals(config.getListeId("typeCollectionBota"))) {
rafraichirComboBox(listeValeurs, typeCollectionBotaStore, typesCollectionBotaCombo);
Formulaire.rafraichirComboBox(listeValeurs, typeCollectionBotaStore, typesCollectionBotaCombo);
} else if (listeValeurs.getId().equals(config.getListeId("typeDepot"))) {
rafraichirComboBox(listeValeurs, typeDepotStore, typeDepotCombo);
Formulaire.rafraichirComboBox(listeValeurs, typeDepotStore, typeDepotCombo);
} else {
GWT.log("Gestion de la liste "+listeValeurs.getId()+" non implémenté!", null);
}
}
@SuppressWarnings({"unchecked"})
private void rafraichirComboBox(aDonneeListe<?> listeValeurs, ListStore store, ComboBox combo) {
List<?> liste = listeValeurs.toList();
if (liste.size() > 0) {
store.removeAll();
store.add(liste);
store.sort("nom", SortDir.ASC);
combo.setStore(store);
}
}
 
}
/trunk/src/org/tela_botanica/client/vues/CollectionForm.java
71,13 → 71,6
private Collection collection = null;
private Collection collectionCollectee = null;
 
private HashMap<String,FieldSet> champsFs = new HashMap<String,FieldSet>();
private HashMap<String,LayoutContainer> champsLc = new HashMap<String,LayoutContainer>();
private HashMap<String,HiddenField<String>> champsHfs = new HashMap<String,HiddenField<String>>();
private HashMap<String,TextField<String>> champsTfs = new HashMap<String,TextField<String>>();
private HashMap<String,TextArea> champsTa = new HashMap<String,TextArea>();
private HashMap<String,ChampMultiValeurs> champsCmv = new HashMap<String,ChampMultiValeurs>();
private HashMap<String,Text> champsT = new HashMap<String,Text>();
private HashMap<String,ComboBox<Valeur>> champsCbv = new HashMap<String,ComboBox<Valeur>>();
private HashMap<String,ListStore<Valeur>> champsLsv = new HashMap<String,ListStore<Valeur>>();
89,14 → 82,6
private TabItem documentOnglet = null;
private TabItem inventaireOnglet = null;
private ListStore<Projet> projetsStore;
private ComboBox<Projet> projetsCombo;
private ListStore<Structure> structuresStore;
private ComboBox<Structure> structuresCombo;
private ListStore<Collection> collectionsStore;
private ComboBox<Collection> collectionsCombo;
 
 
public CollectionForm(Mediateur mediateurCourrant, String modeDeCreation) {
initialiserFormulaire(mediateurCourrant, modeDeCreation, MenuApplicationId.COLLECTION);
}
128,7 → 113,7
onglets.add(creerOngletInventaire());
// Sélection de l'onglet par défaut
//onglets.setSelection(personnelOnglet);
onglets.setSelection(auteurOnglet);
// Ajout des onglets au formulaire général
panneauFormulaire.add(onglets);
140,14 → 125,7
}
private TabItem creerOngletAuteur() {
auteurOnglet = creerOnglet(i18nC.collectionAuteur(), "auteur");
auteurOnglet.addListener(Events.Select, new Listener<ComponentEvent>() {
public void handleEvent(ComponentEvent be) {
//peuplerOngletAuteur();
auteurOnglet.layout();
}
});
auteurOnglet = new CollectionFormAuteur(this);
return auteurOnglet;
}
216,9 → 194,6
if (nouvellesDonnees instanceof Information) {
Information info = (Information) nouvellesDonnees;
rafraichirInformation(info);
} else if (nouvellesDonnees instanceof ValeurListe) {
ValeurListe listeValeurs = (ValeurListe) nouvellesDonnees;
rafraichirValeurListe(listeValeurs);
} else {
GWT.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()), null);
}
245,31 → 220,6
}
}
private void rafraichirValeurListe(ValeurListe listeValeurs) {
List<Valeur> liste = listeValeurs.toList();
 
// Test pour savoir si la liste contient des éléments
if (liste.size() > 0) {
String[] listesTraitables = {};
Boolean implemente = false;
for (int i = 0; i < listesTraitables.length; i++) {
String id = listesTraitables[i];
GWT.log(id, null);
if (listeValeurs.getId().equals(config.getListeId(id))) {
champsLsv.get(id).removeAll();
champsLsv.get(id).add(liste);
champsCbv.get(id).setStore(champsLsv.get(id));
implemente = true;
break;
}
}
if (implemente == false) {
GWT.log("Gestion de la liste "+listeValeurs.getId()+" non implémenté!", null);
}
}
}
private void actualiserPeuplementOnglet() {
onglets.setSelection(onglets.getSelectedItem());
}