82,6 → 82,7 |
import com.google.gwt.core.client.GWT; |
import com.google.gwt.i18n.client.DateTimeFormat; |
import com.google.gwt.i18n.client.NumberFormat; |
import com.google.gwt.user.client.Window; |
|
public class StructureForm extends Formulaire implements Rafraichissable { |
|
114,12 → 115,13 |
private TextArea adrChp = null; |
private TextField<String> cpChp = null; |
private TextField<String> villeChp = null; |
private TextField<String> regionChp = null; |
private ComboBox<Valeur> comboRegion = null; |
private TextField<String> telChp = null; |
private TextField<String> faxChp = null; |
private TextField<String> emailChp = null; |
private TextField<String> urlChp = null; |
private ListStore<Valeur> magazinPays = null; |
private ListStore<Valeur> magazinRegion = null; |
private ComboBox<Valeur> comboPays = null; |
|
// Onglet PERSONNEL |
648,7 → 650,16 |
structureCollectee.setAdresse(adrChp.getValue()); |
structureCollectee.setCodePostal(cpChp.getValue()); |
structureCollectee.setVille(villeChp.getValue()); |
structureCollectee.setRegion(regionChp.getValue()); |
|
String strRegion = ""; |
Valeur valeurRegion = comboRegion.getValue(); |
if (valeurRegion == null) { |
strRegion = "AUTRE##" + comboRegion.getRawValue(); |
} else { |
strRegion = valeurRegion.getId(); |
} |
|
structureCollectee.setRegion(strRegion); |
structureCollectee.setPays(null); |
if (comboPays.getValue() != null) { |
structureCollectee.setPays(comboPays.getValue().getId()); |
718,7 → 729,8 |
adrChp.setValue(identification.getAdresse()); |
cpChp.setValue(identification.getCodePostal()); |
villeChp.setValue(identification.getVille()); |
regionChp.setValue(identification.getRegion()); |
mettreAJourRegion(); |
//(identification.getRegion()); |
if (identification.getPays().matches("^[0-9]+$")) { |
comboPays.setValue(comboPays.getStore().findModel("id_valeur", identification.getPays())); |
} else { |
1640,18 → 1652,13 |
villeChp = new TextField<String>(); |
villeChp.setTabIndex(tabIndex++); |
villeChp.setFieldLabel("Ville"); |
droiteFdAdresse.add(villeChp, new FormData("95%")); |
gaucheFdAdresse.add(villeChp, new FormData("95%")); |
|
regionChp = new TextField<String>(); |
regionChp.setTabIndex(tabIndex++); |
regionChp.setFieldLabel("Région"); |
gaucheFdAdresse.add(regionChp, new FormData("95%")); |
|
magazinPays = new ListStore<Valeur>(); |
magazinPays = new ListStore<Valeur>(); |
comboPays = new ComboBox<Valeur>(); |
comboPays.setTabIndex(tabIndex++); |
comboPays.setFieldLabel("Pays"); |
comboPays.setEmptyText("Sélectioner un pays..."); |
comboPays.setEmptyText("Sélectionner un pays..."); |
comboPays.setEditable(true); |
comboPays.setLabelSeparator(""); |
comboPays.setDisplayField("nom"); |
1659,9 → 1666,33 |
comboPays.setTypeAhead(true); |
comboPays.setTriggerAction(TriggerAction.ALL); |
comboPays.setStore(magazinPays); |
|
SelectionChangedListener<Valeur> selectionChange = new SelectionChangedListener<Valeur>() { |
public void selectionChanged(SelectionChangedEvent se) { |
// Rafraichir avec le pays sélectionné |
obtenirListeRegionParPays(((Valeur) se.getSelectedItem()).getAbreviation().toString()); |
} |
}; |
|
comboPays.addSelectionChangedListener(selectionChange); |
|
|
droiteFdAdresse.add(comboPays, new FormData("95%")); |
mediateur.obtenirListeValeurEtRafraichir(this, "pays"); |
|
magazinRegion = new ListStore<Valeur>(); |
comboRegion = new ComboBox<Valeur>(); |
comboRegion.setTabIndex(tabIndex++); |
comboRegion.setFieldLabel("Région"); |
comboRegion.setEmptyText("Sélectionner une région..."); |
comboRegion.setDisplayField("nom"); |
comboRegion.setTypeAhead(true); |
comboRegion.setTriggerAction(TriggerAction.ALL); |
comboRegion.setStore(magazinRegion); |
|
droiteFdAdresse.add(comboRegion, new FormData("95%")); |
|
|
principalFdAdresse.add(gaucheFdAdresse, new ColumnData(.5)); |
principalFdAdresse.add(droiteFdAdresse, new ColumnData(.5)); |
fieldSetAdresse.add(principalFdAdresse); |
1716,6 → 1747,22 |
return identificationOnglet; |
} |
|
public void obtenirListeRegionParPays(String strPays) { |
mediateur.obtenirListeRegionsEtRafraichir(this, "region", strPays); |
} |
|
private void mettreAJourRegion() { |
//Met à jour la combo box en sélectionnant la valeur enregistrée pour la personne |
if (identification.get("ce_truk_region") != null && comboRegion.getStore().getCount() > 0) { |
Valeur valeurRegion = comboRegion.getStore().findModel("id_valeur", identification.get("ce_truk_region")); |
if (valeurRegion!=null) { |
comboRegion.setValue(valeurRegion); |
} else if (identification.get("ce_truk_region").toString().startsWith("AUTRE##")) { |
comboRegion.setRawValue(identification.get("ce_truk_region").toString().replaceFirst("^AUTRE##", "")); |
} |
} |
} |
|
private native String getTemplatePays() /*-{ |
return [ |
'<tpl for=".">', |
1963,6 → 2010,16 |
magazinPays.add(liste); |
comboPays.setStore(magazinPays); |
} |
|
if (listeValeurs.getId().equals(config.getListeId("region"))) { |
magazinRegion.removeAll(); |
magazinRegion.add(liste); |
comboRegion.setStore(magazinRegion); |
|
mettreAJourRegion(); |
} |
|
|
if (listeValeurs.getId().equals(config.getListeId("localStockage"))) { |
localStockageAutreChp = new TextField<String>(); |
creerChoixMultipleCac(localStockageTrukCp, localStockageTrukCacGrpChp, listeValeurs, localStockageAutreChp); |