Line 4... |
Line 4... |
4 |
import java.util.Iterator;
|
4 |
import java.util.Iterator;
|
5 |
import java.util.List;
|
5 |
import java.util.List;
|
Line 6... |
Line 6... |
6 |
|
6 |
|
7 |
import org.tela_botanica.client.ComposantClass;
|
7 |
import org.tela_botanica.client.ComposantClass;
|
- |
|
8 |
import org.tela_botanica.client.Mediateur;
|
- |
|
9 |
import org.tela_botanica.client.composants.ChampComboBoxListeValeurs;
|
8 |
import org.tela_botanica.client.Mediateur;
|
10 |
import org.tela_botanica.client.composants.ChampComboBoxRechercheTempsReelPaginable;
|
- |
|
11 |
import org.tela_botanica.client.composants.InfoLogger;
|
- |
|
12 |
import org.tela_botanica.client.composants.pagination.ProxyPersonnes;
|
9 |
import org.tela_botanica.client.composants.InfoLogger;
|
13 |
import org.tela_botanica.client.composants.pagination.ProxyProjets;
|
10 |
import org.tela_botanica.client.images.Images;
|
14 |
import org.tela_botanica.client.images.Images;
|
11 |
import org.tela_botanica.client.interfaces.Rafraichissable;
|
15 |
import org.tela_botanica.client.interfaces.Rafraichissable;
|
12 |
import org.tela_botanica.client.modeles.Information;
|
16 |
import org.tela_botanica.client.modeles.Information;
|
13 |
import org.tela_botanica.client.modeles.InterneValeur;
|
17 |
import org.tela_botanica.client.modeles.InterneValeur;
|
Line 31... |
Line 35... |
31 |
import org.tela_botanica.client.vues.FormulaireBarreValidation;
|
35 |
import org.tela_botanica.client.vues.FormulaireBarreValidation;
|
32 |
import org.tela_botanica.client.vues.FormulaireOnglet;
|
36 |
import org.tela_botanica.client.vues.FormulaireOnglet;
|
33 |
import org.tela_botanica.client.vues.personne.PersonneForm;
|
37 |
import org.tela_botanica.client.vues.personne.PersonneForm;
|
Line 34... |
Line 38... |
34 |
|
38 |
|
- |
|
39 |
import com.extjs.gxt.ui.client.Style.Scroll;
|
- |
|
40 |
import com.extjs.gxt.ui.client.data.ModelData;
|
35 |
import com.extjs.gxt.ui.client.Style.Scroll;
|
41 |
import com.extjs.gxt.ui.client.data.ModelType;
|
36 |
import com.extjs.gxt.ui.client.event.BaseEvent;
|
42 |
import com.extjs.gxt.ui.client.event.BaseEvent;
|
37 |
import com.extjs.gxt.ui.client.event.ButtonEvent;
|
43 |
import com.extjs.gxt.ui.client.event.ButtonEvent;
|
38 |
import com.extjs.gxt.ui.client.event.ComponentEvent;
|
44 |
import com.extjs.gxt.ui.client.event.ComponentEvent;
|
39 |
import com.extjs.gxt.ui.client.event.EventType;
|
45 |
import com.extjs.gxt.ui.client.event.EventType;
|
Line 49... |
Line 55... |
49 |
import com.extjs.gxt.ui.client.widget.Info;
|
55 |
import com.extjs.gxt.ui.client.widget.Info;
|
50 |
import com.extjs.gxt.ui.client.widget.Text;
|
56 |
import com.extjs.gxt.ui.client.widget.Text;
|
51 |
import com.extjs.gxt.ui.client.widget.button.Button;
|
57 |
import com.extjs.gxt.ui.client.widget.button.Button;
|
52 |
import com.extjs.gxt.ui.client.widget.button.ButtonBar;
|
58 |
import com.extjs.gxt.ui.client.widget.button.ButtonBar;
|
53 |
import com.extjs.gxt.ui.client.widget.form.ComboBox;
|
59 |
import com.extjs.gxt.ui.client.widget.form.ComboBox;
|
- |
|
60 |
import com.extjs.gxt.ui.client.widget.form.Field;
|
54 |
import com.extjs.gxt.ui.client.widget.form.FormPanel;
|
61 |
import com.extjs.gxt.ui.client.widget.form.FormPanel;
|
- |
|
62 |
import com.extjs.gxt.ui.client.widget.form.TextArea;
|
- |
|
63 |
import com.extjs.gxt.ui.client.widget.form.TextField;
|
- |
|
64 |
import com.extjs.gxt.ui.client.widget.form.Validator;
|
55 |
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
|
65 |
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
|
56 |
import com.extjs.gxt.ui.client.widget.grid.CellEditor;
|
66 |
import com.extjs.gxt.ui.client.widget.grid.CellEditor;
|
57 |
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig;
|
67 |
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig;
|
58 |
import com.extjs.gxt.ui.client.widget.grid.ColumnData;
|
68 |
import com.extjs.gxt.ui.client.widget.grid.ColumnData;
|
59 |
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;
|
69 |
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;
|
Line 63... |
Line 73... |
63 |
import com.extjs.gxt.ui.client.widget.grid.GridSelectionModel;
|
73 |
import com.extjs.gxt.ui.client.widget.grid.GridSelectionModel;
|
64 |
import com.extjs.gxt.ui.client.widget.grid.HeaderGroupConfig;
|
74 |
import com.extjs.gxt.ui.client.widget.grid.HeaderGroupConfig;
|
65 |
import com.extjs.gxt.ui.client.widget.grid.RowNumberer;
|
75 |
import com.extjs.gxt.ui.client.widget.grid.RowNumberer;
|
66 |
import com.extjs.gxt.ui.client.widget.layout.AnchorLayout;
|
76 |
import com.extjs.gxt.ui.client.widget.layout.AnchorLayout;
|
67 |
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
|
77 |
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
|
- |
|
78 |
import com.extjs.gxt.ui.client.widget.layout.FormData;
|
68 |
import com.extjs.gxt.ui.client.widget.layout.FormLayout;
|
79 |
import com.extjs.gxt.ui.client.widget.layout.FormLayout;
|
69 |
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
|
80 |
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
|
70 |
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
|
81 |
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
|
71 |
import com.google.gwt.core.client.GWT;
|
82 |
import com.google.gwt.core.client.GWT;
|
72 |
import com.google.gwt.dom.client.Element;
|
83 |
import com.google.gwt.dom.client.Element;
|
Line 83... |
Line 94... |
83 |
private EditorGrid<CollectionAPersonne> grille;
|
94 |
private EditorGrid<CollectionAPersonne> grille;
|
84 |
private ComboBox<Valeur> typeRelationCombo = null;
|
95 |
private ComboBox<Valeur> typeRelationCombo = null;
|
Line 85... |
Line 96... |
85 |
|
96 |
|
86 |
private CollectionAPersonneListe personnesAjoutees = null;
|
97 |
private CollectionAPersonneListe personnesAjoutees = null;
|
87 |
private CollectionAPersonneListe personnesSupprimees = null;
|
98 |
private CollectionAPersonneListe personnesSupprimees = null;
|
- |
|
99 |
private ChampComboBoxRechercheTempsReelPaginable personnesSaisisComboBox = null;
|
88 |
private ComboBox<Personne> personnesSaisisComboBox = null;
|
100 |
private ChampComboBoxRechercheTempsReelPaginable recherchePersonnesCombo = null;
|
89 |
private Button personnesBoutonSupprimer = null;
|
101 |
private Button personnesBoutonSupprimer = null;
|
90 |
private Button personnesBoutonModifier = null;
|
102 |
private Button personnesBoutonModifier = null;
|
Line 91... |
Line 103... |
91 |
private ListStore<Valeur> listeIon = null;
|
103 |
private ListStore<Valeur> listeIon = null;
|
Line 274... |
Line 286... |
274 |
}
|
286 |
}
|
275 |
});
|
287 |
});
|
276 |
return bouton;
|
288 |
return bouton;
|
277 |
}
|
289 |
}
|
Line 278... |
Line 290... |
278 |
|
290 |
|
- |
|
291 |
private ChampComboBoxRechercheTempsReelPaginable creerComboBoxPersonnesSaisies() {
|
279 |
private ComboBox<Personne> creerComboBoxPersonnesSaisies() {
|
292 |
|
- |
|
293 |
ModelType modelTypePersonnes = new ModelType();
|
- |
|
294 |
modelTypePersonnes.setRoot("personnes");
|
- |
|
295 |
modelTypePersonnes.setTotalName("nbElements");
|
280 |
ListStore<Personne> personnesSaisiesStore = new ListStore<Personne>();
|
296 |
modelTypePersonnes.addField("cp_fmt_nom_complet");
|
281 |
personnesSaisiesStore.add(new ArrayList<Personne>());
|
297 |
modelTypePersonnes.addField("cp_id_personne");
|
- |
|
298 |
|
282 |
|
299 |
String displayNamePersonnes = "cp_fmt_nom_complet";
|
- |
|
300 |
ProxyPersonnes<ModelData> proxyPersonnes = new ProxyPersonnes<ModelData>();
|
- |
|
301 |
|
283 |
ComboBox<Personne> comboBox = new ComboBox<Personne>();
|
302 |
recherchePersonnesCombo = new ChampComboBoxRechercheTempsReelPaginable(proxyPersonnes, modelTypePersonnes, displayNamePersonnes);
|
- |
|
303 |
recherchePersonnesCombo.getCombo().setForceSelection(true);
|
284 |
comboBox.setWidth(200);
|
304 |
|
285 |
comboBox.setEmptyText(i18nC.chercherPersonneSaisi());
|
305 |
recherchePersonnesCombo.getCombo().setValidator(new Validator() {
|
286 |
comboBox.setTriggerAction(TriggerAction.ALL);
|
306 |
public String validate(Field<?> field, String value) {
|
287 |
comboBox.setEditable(true);
|
307 |
String retour = null;
|
288 |
comboBox.setDisplayField("fmt_nom_complet");
|
308 |
if (field.getRawValue().equals("")) {
|
289 |
comboBox.setStore(personnesSaisiesStore);
|
309 |
field.setValue(null);
|
290 |
comboBox.addKeyListener(new KeyListener() {
|
310 |
} else if (recherchePersonnesCombo.getStore().findModel("cp_fmt_nom_complet", field.getRawValue()) == null) {
|
291 |
public void componentKeyUp(ComponentEvent ce) {
|
311 |
String contenuBrut = field.getRawValue();
|
292 |
if (personnesSaisisComboBox.getRawValue() != null && personnesSaisisComboBox.getRawValue().length() > 0) {
|
312 |
field.setValue(null);
|
293 |
if (!ce.isNavKeyPress()) {
|
313 |
field.setRawValue(contenuBrut);
|
294 |
obtenirPersonnesSaisis(personnesSaisisComboBox.getRawValue());
|
- |
|
295 |
}
|
314 |
retour = "Veuillez sélectionner une valeur ou laisser le champ vide";
|
- |
|
315 |
}
|
296 |
}
|
316 |
return retour;
|
297 |
}
|
317 |
}
|
- |
|
318 |
});
|
298 |
});
|
319 |
|
299 |
comboBox.addListener(Events.Select, new Listener<BaseEvent>() {
|
320 |
recherchePersonnesCombo.getCombo().addListener(Events.Select, new Listener<BaseEvent>() {
|
300 |
public void handleEvent(BaseEvent be) {
|
321 |
public void handleEvent(BaseEvent be) {
|
301 |
if (personnesSaisisComboBox.getValue() instanceof Personne) {
|
322 |
if (personnesSaisisComboBox.getValeur() instanceof ModelData) {
|
302 |
Personne personneSaisiSelectionnee = personnesSaisisComboBox.getValue();
|
323 |
Personne personneSaisiSelectionnee = new Personne(personnesSaisisComboBox.getValeur());
|
303 |
ajouterDansGrille(personneSaisiSelectionnee);
|
324 |
ajouterDansGrille(personneSaisiSelectionnee);
|
304 |
personnesSaisisComboBox.setValue(null);
|
325 |
personnesSaisisComboBox.getCombo().setValue(null);
|
305 |
}
|
326 |
}
|
306 |
}
|
327 |
}
|
- |
|
328 |
});
|
307 |
});
|
329 |
|
308 |
return comboBox;
|
330 |
return recherchePersonnesCombo;
|
Line 309... |
Line 331... |
309 |
}
|
331 |
}
|
310 |
|
332 |
|
311 |
private void ajouterDansGrille(Personne personne) {
|
333 |
private void ajouterDansGrille(Personne personne) {
|
Line 516... |
Line 538... |
516 |
if (info.getMessages() != null && !info.getMessages().toString().equals("[]")) {
|
538 |
if (info.getMessages() != null && !info.getMessages().toString().equals("[]")) {
|
517 |
GWT.log("MESSAGES:\n"+info.getMessages().toString(), null);
|
539 |
GWT.log("MESSAGES:\n"+info.getMessages().toString(), null);
|
518 |
}
|
540 |
}
|
519 |
String type = info.getType();
|
541 |
String type = info.getType();
|
520 |
if (type.equals("liste_personne")) {
|
542 |
if (type.equals("liste_personne")) {
|
521 |
if (info.getDonnee(0) != null) {
|
543 |
if (info.getDonnee(0) != null) {/*
|
522 |
PersonneListe personnes = (PersonneListe) info.getDonnee(0);
|
544 |
PersonneListe personnes = (PersonneListe) info.getDonnee(0);
|
523 |
List<Personne> liste = personnes.toList();
|
545 |
List<Personne> liste = personnes.toList();
|
Line 524... |
Line 546... |
524 |
|
546 |
|
525 |
personnesSaisisComboBox.getStore().removeAll();
|
547 |
personnesSaisisComboBox.getStore().removeAll();
|
526 |
personnesSaisisComboBox.getStore().add(liste);
|
548 |
personnesSaisisComboBox.getStore().add(liste);
|
527 |
personnesSaisisComboBox.expand();
|
549 |
personnesSaisisComboBox.expand();*/
|
528 |
}
|
550 |
}
|
529 |
} else if (info.getType().equals("liste_collection_a_personne")) {
|
551 |
} else if (info.getType().equals("liste_collection_a_personne")) {
|
530 |
if (info.getDonnee(0) != null) {
|
552 |
if (info.getDonnee(0) != null) {
|
531 |
initialiser();
|
553 |
initialiser();
|