Subversion Repositories eFlore/Applications.coel

Compare Revisions

Ignore whitespace Rev 213 → Rev 214

/trunk/src/org/tela_botanica/client/modeles/StructureAPersonne.java
20,6 → 20,8
public StructureAPersonne() {
// Définition des valeurs par défaut de variables obligatoires vis à vis de l'utilisation de l'objet
this.set("contact", false);
this.set("fonction", "");
this.set("statut", "");
}
/**
30,6 → 32,8
public StructureAPersonne(JSONObject personnel) {
// Définition des valeurs par défaut de variables obligatoires vis à vis de l'utilisation de l'objet
this.set("contact", false);
this.set("fonction", "");
this.set("statut", "");
// L'objet JSON est une table de hachage
Set<String> im = personnel.keySet();
86,6 → 90,8
setFonction(fonction);
// Définition des valeurs par défaut de variables obligatoires vis à vis de l'utilisation de l'objet
this.set("contact", false);
this.set("fonction", "");
this.set("statut", "");
}
// ID
/trunk/src/org/tela_botanica/client/vues/FormStructureVue.java
30,6 → 30,8
import com.extjs.gxt.ui.client.Style.Scroll;
import com.extjs.gxt.ui.client.event.BaseEvent;
import com.extjs.gxt.ui.client.event.ComponentEvent;
import com.extjs.gxt.ui.client.event.EditorEvent;
import com.extjs.gxt.ui.client.event.GridEvent;
import com.extjs.gxt.ui.client.event.Listener;
import com.extjs.gxt.ui.client.event.SelectionChangedEvent;
import com.extjs.gxt.ui.client.event.SelectionChangedListener;
81,6 → 83,7
import com.google.gwt.i18n.client.DateTimeFormat;
import com.google.gwt.i18n.client.NumberFormat;
import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.Random;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.Widget;
204,8 → 207,6
private TextField<String> publicationChp;
private ContentPanel materielConservationCp;
 
 
 
public FormStructureVue() {
//+-----------------------------------------------------------------------------------------------------------+
// Initialisation de variables
861,7 → 862,6
}
if (personnel != null) {
ArrayList<StructureAPersonne> personnes = new ArrayList<StructureAPersonne>();
for (Iterator<String> it = personnel.keySet().iterator(); it.hasNext();) {
String index = it.next();
869,21 → 869,15
GWT.log(personnel.get(index).getFonction(), null);
personnel.get(index).set("fonction", magazinLiFonction.findModel("id_valeur", personnel.get(index).getFonction()).getNom());
} else {
personnel.get(index).set("fonction", personnel.get(index).getFonction());
personnel.get(index).set("fonction", personnel.get(index).getFonction().replaceFirst("AUTRE##", ""));
}
personnes.add(personnel.get(index));
}
personnelGrilleMagazin.removeAll();
personnelGrilleMagazin.add(personnes);
grillePersonnel.getColumnModel().getColumn(1).getEditor().fireEvent(Events.StateSave);
/*
int nbreLigne = personnelGrilleMagazin.getCount();
for (int i = 0; i < nbreLigne; i++) {
}
*/
personnelOnglet.layout();
// Nous vidons la variable personnel une fois qu'elle a remplie la grille
personnel = null;
}
}
935,7 → 929,7
CheckBoxSelectionModel<StructureAPersonne> sm = new CheckBoxSelectionModel<StructureAPersonne>();
configs.add(sm.getColumn());
ColumnConfig column = new ColumnConfig("fonction", "Fonction", 100);
ColumnConfig column = new ColumnConfig("fonction", "Fonction", 150);
modele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId("fonction"));
magazinLiFonction = new ListStore<Valeur>();
magazinLiFonction.add(new ArrayList<Valeur>());
944,33 → 938,22
comboLiFonction.setTriggerAction(TriggerAction.ALL);
comboLiFonction.setEditable(true);
comboLiFonction.setDisplayField("nom");
//comboLiStatut.setEmptyText("Sélectionez une fonction...");
comboLiFonction.setStore(magazinLiFonction);
/*
comboLiFonction.addListener(Events.Blur, new Listener<BaseEvent>() {
 
@Override
public void handleEvent(BaseEvent be) {
//grillePersonnel..comboLiFonction.getRawValue();
}
});*/
CellEditor fonctionEditor = new CellEditor(comboLiFonction) {
@Override
public Object preProcessValue(Object valeur) {
if (valeur == null) {
GWT.log("pre null :", null);
return null;
//GWT.log("pre null :"+this.getValue()+"-"+this.row, null);
return null;
}
GWT.log("pre : "+valeur.toString(), null);
//GWT.log("pre : "+valeur.toString(), null);
Object retour = null;
if (((String) valeur).matches("^[0-9]+$")) {
Valeur valeurRecherche = comboLiFonction.getStore().findModel("id_valeur", (String) valeur);
if (valeurRecherche != null) {
retour = valeurRecherche;
GWT.log("pre - retour valeur par chiffre : \n"+retour.toString(), null);
//GWT.log("pre - retour valeur par chiffre : \n"+retour.toString(), null);
} else {
this.getField().setRawValue((String) valeur);
retour = null;
977,10 → 960,10
}
} else if (valeur instanceof String) {
this.getField().setRawValue((String) valeur);
retour = null;
retour = new Valeur("", (String) valeur, "", "");
} else {
retour = comboLiFonction.getStore().findModel("nom", (String) valeur);
GWT.log("pre - retour valeur par chaine : \n"+retour.toString(), null);
//GWT.log("pre - retour valeur par chaine : \n"+retour.toString(), null);
}
return retour;
990,10 → 973,10
public Object postProcessValue(Object valeur) {
if (valeur == null) {
// Si la combobox n'a pas été utilisé, nous renvoyons la valeur brute saisie par l'utilisateur
GWT.log("post raw : \n"+this.getField().getRawValue(), null);
//GWT.log("post raw : \n"+this.getField().getRawValue(), null);
String retour = this.getField().getRawValue();
if (retour.matches("^[0-9]+$")) {
GWT.log("ici", null);
//GWT.log("ici", null);
Valeur valeurRecherche = comboLiFonction.getStore().findModel("id_valeur", (String) retour);
if (valeurRecherche != null) {
retour = valeurRecherche.getNom();
1001,11 → 984,11
}
return retour;
} else {
GWT.log("post : \n"+valeur.toString(), null);
//GWT.log("post : \n"+valeur.toString(), null);
String nom = "";
if (valeur instanceof Valeur) {
nom = (((Valeur) valeur).getNom());
GWT.log("la "+nom, null);
//GWT.log("la "+nom, null);
}
return nom;
}
1046,7 → 1029,7
column.setEditor(new CellEditor(faxChp));
configs.add(column);
column = new ColumnConfig("courriel", "Courriel", 100);
column = new ColumnConfig("courriel", "Courriel principal", 200);
TextField<String> emailChp = new TextField<String>();
column.setEditor(new CellEditor(emailChp));
configs.add(column);
1058,8 → 1041,8
comboLiStatut = new ComboBox<Valeur>();
comboLiStatut.setTriggerAction(TriggerAction.ALL);
comboLiStatut.setEditable(false);
comboLiStatut.disableTextSelection(true);
comboLiStatut.setDisplayField("nom");
comboLiStatut.setEmptyText("Sélectionez un statut...");
comboLiStatut.setStore(magazinLiStatut);
CellEditor statutEditor = new CellEditor(comboLiStatut) {
1080,7 → 1063,7
//GWT.log("post : "+value.toString(), null);
return ((Valeur) value).get("nom");
}
};
};
column = new ColumnConfig("statut", "Statut", 100);
column.setEditor(statutEditor);
configs.add(column);
1106,7 → 1089,7
cp.setIconStyle("icone-table");
cp.setScrollMode(Scroll.AUTO);
cp.setLayout(new FitLayout());
cp.setSize(1100, 200);
cp.setSize(1250, 200);
cp.setFrame(true);
ToolBar toolBar = new ToolBar();
1115,8 → 1098,10
ajouterPersonnelBtn.addSelectionListener(new SelectionListener<ToolBarEvent>() {
@Override
public void componentSelected(ToolBarEvent ce) {
StructureAPersonne personne = new StructureAPersonne();
grillePersonnel.stopEditing();
StructureAPersonne personne = new StructureAPersonne();
grillePersonnel.stopEditing();
int numNouveau = grillePersonnel.getData("nouveau");
grillePersonnel.setData("nouveau", ++numNouveau);
personnelGrilleMagazin.insert(personne, 0);
grillePersonnel.startEditing(0, 0);
// Mise à jour du nombre de personnel travaillant sur les collections
1148,6 → 1133,7
ColumnModel cm = new ColumnModel(configs);
grillePersonnel = new EditorGrid<StructureAPersonne>(personnelGrilleMagazin, cm);
grillePersonnel.setData("nouveau", 0);
grillePersonnel.setBorders(true);
grillePersonnel.setSelectionModel(sm);
grillePersonnel.addPlugin(sm);
1155,6 → 1141,20
grillePersonnel.setAutoExpandColumn("specialite");
grillePersonnel.setStripeRows(true);
grillePersonnel.setTrackMouseOver(true);
grillePersonnel.addListener(Events.ValidateEdit, new Listener<GridEvent>() {
 
public void handleEvent(GridEvent ge) {
GWT.log(ge.property+" : "+ge.value, null);
List<StructureAPersonne> personnes = personnelGrilleMagazin.getModels();
StructureAPersonneListe personnelModifie = new StructureAPersonneListe();
for (int i = 0; i < personnes.size(); i++) {
personnelModifie.put(""+i, personnes.get(i));
}
personnel = personnelModifie;
}
});
cp.add(grillePersonnel);
return cp;