3,7 → 3,9 |
// TODO Detecter redim et supprimer ajuster |
|
import java.util.Date; |
import java.util.HashMap; |
import java.util.Iterator; |
import java.util.Map; |
|
import org.tela_botanica.client.CarnetEnLigneMediateur; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
252,6 → 254,8 |
|
private ComboBox selecteurStadePheno = null; |
|
private Map<String, TextField> listeChampsEtendus; |
|
/** |
* Constructeur sans argument (privé car ne doit pas être utilisé) |
*/ |
1299,6 → 1303,7 |
obs.setPhenologie(getPhenologie()); |
|
obs.setReferentielTaxo(Ontologies.getInfosReferentielNomParCode(referentielTaxo).getCodeVersionComplet()); |
obs.setChampsEtendus(getValeursChampsEtendus()); |
|
observationMediateur.ajouterObservation(obs); |
} |
1348,6 → 1353,7 |
obs.setCertitude(getCertitude()); |
obs.setPhenologie(getPhenologie()); |
obs.setReferentielTaxo(getReferentielTaxo()); |
obs.setChampsEtendus(getValeursChampsEtendus()); |
|
observationMediateur.modifierObservation(obs); |
|
1606,9 → 1612,66 |
referentielTaxo = ""; |
selecteurReferentielTaxo.setRawValue(VALEURS_MULTIPLES); |
} |
|
afficherChampsEtendus(obs); |
} |
|
private void viderChampsEtendus() { |
if(listeChampsEtendus != null) { |
for (Iterator<String> it = listeChampsEtendus.keySet().iterator(); it.hasNext();) { |
TextField champEtendu = listeChampsEtendus.get(it.next()); |
champEtendu.destroy(); |
} |
listeChampsEtendus = null; |
} |
} |
|
private void afficherChampsEtendus(Observation obs) { |
viderChampsEtendus(); |
if(obs.getChampsEtendus().size() > 0) { |
listeChampsEtendus = new HashMap<String, TextField>(obs.getChampsEtendus().size()); |
boolean gauche = true; |
for (Iterator<String> iterator = obs.getChampsEtendus().keySet().iterator(); iterator.hasNext();) { |
String label = iterator.next(); |
String valeur = obs.getChampsEtendus().get(label); |
|
TextField champEtendu = new TextField(); |
champEtendu.setAutoWidth(true); |
champEtendu.setLabel(formaterLabel(label)); |
champEtendu.setTitle(label); |
champEtendu.setValue(valeur); |
if(gauche) { |
panneauPremierColonne.add(champEtendu); |
} else { |
panneauSecondeColonne.add(champEtendu); |
} |
listeChampsEtendus.put(label, champEtendu); |
gauche = !gauche; |
} |
} |
doLayout(); |
} |
|
private Map<String, String> getValeursChampsEtendus() { |
Map<String, String> valeursChampsEtendus = new HashMap<String, String>(); |
if(listeChampsEtendus != null) { |
for (Iterator<String> it = listeChampsEtendus.keySet().iterator(); it.hasNext();) { |
String labelChamp = it.next(); |
TextField champEtendu = listeChampsEtendus.get(labelChamp); |
valeursChampsEtendus.put(labelChamp, champEtendu.getValueAsString()); |
} |
} |
return valeursChampsEtendus; |
} |
|
private String formaterLabel(String label) { |
String labelFmt = label; |
if(label.length() > 15) { |
labelFmt = label.substring(0, 14); |
} |
return labelFmt; |
} |
|
public void raz() |
{ |
raz(Champs.TOUT); |