Subversion Repositories eFlore/Applications.coel

Compare Revisions

Ignore whitespace Rev 114 → Rev 115

/trunk/src/org/tela_botanica/client/vues/FormStructureVue.java
6,6 → 6,7
 
import org.tela_botanica.client.Modele;
import org.tela_botanica.client.RegistreId;
import org.tela_botanica.client.i18n.Constantes;
import org.tela_botanica.client.interfaces.Rafraichissable;
import org.tela_botanica.client.modeles.Configuration;
import org.tela_botanica.client.modeles.InterneValeur;
65,10 → 66,16
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.json.client.JSONArray;
import com.google.gwt.json.client.JSONString;
import com.google.gwt.json.client.JSONValue;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.RadioButton;
 
public class FormStructureVue extends LayoutContainer implements Rafraichissable {
 
private Constantes i18nC = null;
private Modele coelModele = null ;
private ListStore<Valeur> magazinLstpr = null;
private ComboBox<Valeur> comboLstpr = null;
87,53 → 94,55
private ListStore<Personne> personnelGrilleMagazin = null;
private LabelField nbreTotalPersonnelChp = null;
private TabItem conservationOnglet = null;
private CheckBoxGroup trukLocalStockageCacGrpChp = null;
private ContentPanel trukLocalStockageCp = null;
private CheckBoxGroup trukMeubleStockageCacGrpChp = null;
private ContentPanel trukMeubleStockageCp = null;
private CheckBoxGroup trukParametreStockageCacGrpChp = null;
private ContentPanel trukParametreStockageCp = null;
private CheckBoxGroup localStockageTrukCacGrpChp = null;
private ContentPanel localStockageTrukCp = null;
private CheckBoxGroup meubleStockageTrukCacGrpChp = null;
private ContentPanel meubleStockageTrukCp = null;
private CheckBoxGroup parametreStockageTrukCacGrpChp = null;
private ContentPanel parametreStockageTrukCp = null;
private ContentPanel collectionAutreTrukCp = null;
private CheckBoxGroup collectionAutreTrukCacGrpChp = null;
private CheckBoxGroup trukOpRestauCacGrpChp = null;
private CheckBoxGroup opRestauTrukCacGrpChp = null;
private ContentPanel opRestauTrukCp = null;
private ContentPanel ceMaterielConservationCp = null;
private CheckBoxGroup ceMaterielConservationCacGrpChp = null;
private CheckBoxGroup trukAutreMaterielCacGrpChp = null;
private ContentPanel trukAutreMaterielCp = null;
private CheckBoxGroup autreMaterielTrukCacGrpChp = null;
private ContentPanel autreMaterielTrukCp = null;
private ContentPanel traitementTrukCp = null;
private CheckBoxGroup traitementTrukCacGrpChp = null;
private ContentPanel trukPoisonTraitementCp = null;
private ContentPanel poisonTraitementTrukCp = null;
private ContentPanel insecteTraitementTrukCp = null;
private CheckBoxGroup insecteTraitementTrukCacGrpChp = null;
private CheckBoxGroup trukPoisonTraitementCacGrpChp = null;
private CheckBoxGroup poisonTraitementTrukCacGrpChp = null;
private TabItem valorisationOnglet = null;
private ContentPanel actionTrukCp;
private CheckBoxGroup trukActionCacGrpChp;
private ContentPanel autreCollectionTrukCp;
private CheckBoxGroup trukAutreCollectionCacGrpChp;
private ContentPanel provenanceRechercheTrukCp;
private CheckBoxGroup trukProvenanceRechercheCacGrpChp;
private CheckBoxGroup trukTypeRechercheCacGrpChp;
private ContentPanel TypeRechercheTrukCp;
private TextField<String> futureActionChp;
private TextField<String> sansMotifAccesChp;
private TextField<String> avecMotifAccesChp;
private TextField<String> formationChp;
private ContentPanel actionTrukCp = null;
private CheckBoxGroup actionTrukCacGrpChp = null;
private ContentPanel autreCollectionTrukCp = null;
private CheckBoxGroup trukAutreCollectionCacGrpChp = null;
private ContentPanel provenanceRechercheTrukCp = null;
private CheckBoxGroup provenanceRechercheTrukCacGrpChp = null;
private CheckBoxGroup typeRechercheTrukCacGrpChp = null;
private ContentPanel TypeRechercheTrukCp = null;
private TextField<String> futureActionChp = null;
private TextField<String> sansMotifAccesChp = null;
private TextField<String> avecMotifAccesChp = null;
private TextField<String> formationChp = null;
private RadioGroup traitementAcquisitionMarkRGrpChp = null;
private LabelField traitementAcquisitionMarkLabel = null;
private RadioGroup materielConservationCeRGrpChp = null;
public FormStructureVue() {
//+-----------------------------------------------------------------------------------------------------------+
// Initialisation de variables
i18nC = GWT.create(Constantes.class);
setLayout(new FitLayout());
coelModele = Registry.get(RegistreId.MODELE);
//+-----------------------------------------------------------------------------------------------------------+
// Création du panneau du FORMULAIRE GÉNÉRAL
FormPanel panel = new FormPanel();
FormPanel panel = new FormPanel();
panel.setFrame(true);
panel.setIconStyle("icone-form-ajouter");
panel.setCollapsible(false);
panel.setHeading("Ajout d'une institution");
panel.setHeading(i18nC.titreAjoutFormStructurePanneau());
panel.setButtonAlign(HorizontalAlignment.CENTER);
panel.setLayout(new FlowLayout());
 
182,13 → 191,14
valorisationOnglet.setScrollMode(Scroll.AUTO);
valorisationOnglet.setLayout(creerFormLayout(650, LabelAlign.TOP, null));
RadioGroup actionMarkRGrpChp = new RadioGroup("action_mark_grp");
RadioGroup actionMarkRGrpChp = creerChoixUniqueRadioGroupe("action_mark", "ouiNon");
actionMarkRGrpChp.setFieldLabel("Avez-vous réalisé des actions de valorisation de vos collections botaniques ou avez-vous été sollicités pour la valorisation de ces collections ?");
creerChoixUniqueBr(actionMarkRGrpChp, "action_mark_grp");
valorisationOnglet.add(actionMarkRGrpChp);
actionTrukCp = creerChoixMultipleCp("actionValorisation");
actionTrukCp.hide();
actionTrukCacGrpChp = new CheckBoxGroup();
actionTrukCacGrpChp.setFieldLabel("Si oui, lesquelles ?");
valorisationOnglet.add(actionTrukCp);
TextField<String> publicationChp = new TextField<String>();
196,11 → 206,12
valorisationOnglet.add(publicationChp);
autreCollectionTrukCp = creerChoixMultipleCp("autreCollection");
trukAutreCollectionCacGrpChp = new CheckBoxGroup();
trukAutreCollectionCacGrpChp.setFieldLabel("L'organisme dispose-t-il d'autres collections (permettant une valorisation pluridisciplinaire) ?");
valorisationOnglet.add(autreCollectionTrukCp);
RadioGroup futureActionMarkRGrpChp = new RadioGroup("future_action_mark_grp");
RadioGroup futureActionMarkRGrpChp = creerChoixUniqueRadioGroupe("future_action_mark", "ouiNon");
futureActionMarkRGrpChp.setFieldLabel("Envisagez vous des actions de valorisation dans le cadre de votre politique culturelle ?");
creerChoixUniqueBr(futureActionMarkRGrpChp, "future_action_mark_grp");
valorisationOnglet.add(futureActionMarkRGrpChp);
futureActionChp = new TextField<String>();
208,22 → 219,24
futureActionChp.hide();
valorisationOnglet.add(futureActionChp);
RadioGroup rechercheMarkRGrpChp = new RadioGroup("recherche_mark_grp");
RadioGroup rechercheMarkRGrpChp = creerChoixUniqueRadioGroupe("recherche_mark", "ouiNon");
rechercheMarkRGrpChp.setFieldLabel("Vos collections botaniques sont-elles utilisées pour des recherches scientifiques ?");
creerChoixUniqueBr(rechercheMarkRGrpChp, "recherche_mark_grp");
valorisationOnglet.add(rechercheMarkRGrpChp);
provenanceRechercheTrukCp = creerChoixMultipleCp("continentEtFr");
provenanceRechercheTrukCp.hide();
provenanceRechercheTrukCacGrpChp = new CheckBoxGroup();
provenanceRechercheTrukCacGrpChp.setFieldLabel("Si oui, par des chercheurs (professionnels ou amateurs) de quelle provenance ?");
valorisationOnglet.add(provenanceRechercheTrukCp);
TypeRechercheTrukCp = creerChoixMultipleCp("typeRecherche");
TypeRechercheTrukCp.hide();
typeRechercheTrukCacGrpChp = new CheckBoxGroup();
typeRechercheTrukCacGrpChp.setFieldLabel("Et pour quelles recherches ?");
valorisationOnglet.add(TypeRechercheTrukCp);
RadioGroup sansMotifAccesMarkRGrpChp = new RadioGroup("sans_motif_acces_mark_grp");
RadioGroup sansMotifAccesMarkRGrpChp = creerChoixUniqueRadioGroupe("sans_motif_acces_mark", "ouiNon");
sansMotifAccesMarkRGrpChp.setFieldLabel("Peut-on consulter vos collections botaniques sans motif de recherches scientifiques ?");
creerChoixUniqueBr(sansMotifAccesMarkRGrpChp, "sans_motif_acces_mark_grp");
valorisationOnglet.add(sansMotifAccesMarkRGrpChp);
sansMotifAccesChp = new TextField<String>();
231,15 → 244,13
sansMotifAccesChp.setFieldLabel("Si oui, quelles démarches doit-on faire pour les consulter ?");
valorisationOnglet.add(sansMotifAccesChp);
RadioGroup avecMotifAccesMarkRGrpChp = new RadioGroup("avec_motif_acces_mark_grp");
RadioGroup avecMotifAccesMarkRGrpChp = creerChoixUniqueRadioGroupe("avec_motif_acces_mark", "ouiNon");
avecMotifAccesMarkRGrpChp.setFieldLabel("Peut-on visiter vos collections botaniques avec des objectifs de recherches scientifiques ?");
creerChoixUniqueBr(avecMotifAccesMarkRGrpChp, "avec_motif_acces_mark_grp");
valorisationOnglet.add(avecMotifAccesMarkRGrpChp);
avecMotifAccesChp = new TextField<String>();
valorisationOnglet.add(avecMotifAccesChp = new TextField<String>());
avecMotifAccesChp.hide();
avecMotifAccesChp.setFieldLabel("Si oui, quelles démarches doit-on faire pour les visiter ?");
valorisationOnglet.add(avecMotifAccesChp);
return valorisationOnglet;
}
250,9 → 261,8
conservationOnglet.setScrollMode(Scroll.AUTO);
conservationOnglet.setLayout(creerFormLayout(650, LabelAlign.TOP, null));
RadioGroup markFormationRGrpChp = new RadioGroup("formation_mark_grp");
RadioGroup markFormationRGrpChp = creerChoixUniqueRadioGroupe("formation_mark", "ouiNon");
markFormationRGrpChp.setFieldLabel("Le personnel s'occupant des collections a-t-il suivi des formations en conservations ?");
creerChoixUniqueBr(markFormationRGrpChp, "formation_mark_grp");
conservationOnglet.add(markFormationRGrpChp);
formationChp = new TextField<String>();
260,80 → 270,102
formationChp.setFieldLabel("Si oui, lesquelles ?");
conservationOnglet.add(formationChp);
RadioGroup markInteretFormationRGrpChp = new RadioGroup("mark_interet_formation_grp");
RadioGroup markInteretFormationRGrpChp = creerChoixUniqueRadioGroupe("interet_formation_mark", "ouiNon");
markInteretFormationRGrpChp.setFieldLabel("Seriez vous intéressé par une formation à la conservation et à la restauration d'herbier ?");
creerChoixUniqueBr(markInteretFormationRGrpChp, "mark_interet_formation_grp");
conservationOnglet.add(markInteretFormationRGrpChp);
trukLocalStockageCp = creerChoixMultipleCp("localStockage");
conservationOnglet.add(trukLocalStockageCp);
localStockageTrukCp = creerChoixMultipleCp("localStockage");
localStockageTrukCacGrpChp = new CheckBoxGroup();
localStockageTrukCacGrpChp.setFieldLabel("Avez vous des locaux spécifiques de stockage des collections botaniques ?");
conservationOnglet.add(localStockageTrukCp);
trukMeubleStockageCp = creerChoixMultipleCp("meubleStockage");
conservationOnglet.add(trukMeubleStockageCp);
meubleStockageTrukCp = creerChoixMultipleCp("meubleStockage");
meubleStockageTrukCacGrpChp = new CheckBoxGroup();
meubleStockageTrukCacGrpChp.setFieldLabel("Avez vous des meubles spécifiques au stockage des collections botaniques ?");
conservationOnglet.add(meubleStockageTrukCp);
trukParametreStockageCp = creerChoixMultipleCp("parametreStockage");
conservationOnglet.add(trukParametreStockageCp);
parametreStockageTrukCp = creerChoixMultipleCp("parametreStockage");
parametreStockageTrukCacGrpChp = new CheckBoxGroup();
parametreStockageTrukCacGrpChp.setFieldLabel("Quels paramètres maîtrisez vous ?");
conservationOnglet.add(parametreStockageTrukCp);
RadioGroup collectionCommuneMarkRGrpChp = new RadioGroup("collection_commune_mark_grp");
RadioGroup collectionCommuneMarkRGrpChp = creerChoixUniqueRadioGroupe("collection_commune_mark", "ouiNon");
collectionCommuneMarkRGrpChp.setFieldLabel("Les collections botaniques sont-elles conservées avec d'autres collections dans les mêmes locaux (problème de conservation en commun) ?");
creerChoixUniqueBr(collectionCommuneMarkRGrpChp, "collection_commune_mark");
conservationOnglet.add(collectionCommuneMarkRGrpChp);
collectionAutreTrukCp = creerChoixMultipleCp("autreCollection");
collectionAutreTrukCacGrpChp = new CheckBoxGroup();
collectionAutreTrukCacGrpChp.setFieldLabel("Si oui, lesquelles ?");
collectionAutreTrukCp.hide();
conservationOnglet.add(collectionAutreTrukCp);
RadioGroup markAccesControleRGrpChp = new RadioGroup("mark_acces_controle_grp");
markAccesControleRGrpChp.setFieldLabel("L'accès à vos collections botanique est-il contrôlé (ex. : manipulation réservées à des personnes compétentes) ?");
creerChoixUniqueBr(markAccesControleRGrpChp, "mark_acces_controle");
conservationOnglet.add(markAccesControleRGrpChp);
RadioGroup accesControleMarkRGrpChp = creerChoixUniqueRadioGroupe("mark_acces_controle", "ouiNon");
accesControleMarkRGrpChp.setFieldLabel("L'accès à vos collections botanique est-il contrôlé (ex. : manipulation réservées à des personnes compétentes) ?");
conservationOnglet.add(accesControleMarkRGrpChp);
RadioGroup markRestaurationRGrpChp = new RadioGroup("restauration_mark_grp");
markRestaurationRGrpChp.setFieldLabel("Effectuez vous des opérations de restauration ou de remise en état de vos collections botaniques ?");
creerChoixUniqueBr(markRestaurationRGrpChp, "restauration_mark");
conservationOnglet.add(markRestaurationRGrpChp);
RadioGroup restaurationMarkRGrpChp = creerChoixUniqueRadioGroupe("restauration_mark", "ouiNon");
restaurationMarkRGrpChp.setFieldLabel("Effectuez vous des opérations de restauration ou de remise en état de vos collections botaniques ?");
conservationOnglet.add(restaurationMarkRGrpChp);
opRestauTrukCp = creerChoixMultipleCp("opRestau");
opRestauTrukCacGrpChp = new CheckBoxGroup();
opRestauTrukCacGrpChp.setFieldLabel("Si oui, lesquelles ?");
opRestauTrukCp.hide();
conservationOnglet.add(opRestauTrukCp);
ceMaterielConservationCp = creerChoixMultipleCp("onep");
conservationOnglet.add(ceMaterielConservationCp);
materielConservationCeRGrpChp = creerChoixUniqueRadioGroupe("materiel_conservation_ce", "onep");
materielConservationCeRGrpChp.setFieldLabel("Utilisez vous du matériel de conservation ?");
materielConservationCeRGrpChp.setToolTip(new ToolTipConfig("Matériel de conservation", "matériel spécialisé pour la conservation des archives ou du patrimoine fragile. Ce matériel possède des propriétés mécaniques et chimiques qui font qu'il résiste dans le temps et que sa dégradation n'entraîne pas de dommages sur le matériel qu'il aide à conserver. Exemples : papier neutre, papier gommé, etc..."));
conservationOnglet.add(materielConservationCeRGrpChp);
trukAutreMaterielCp = creerChoixMultipleCp("autreMateriel");
conservationOnglet.add(trukAutreMaterielCp);
autreMaterielTrukCp = creerChoixMultipleCp("autreMateriel");
autreMaterielTrukCp.hide();
autreMaterielTrukCacGrpChp = new CheckBoxGroup();
autreMaterielTrukCacGrpChp.setFieldLabel("Si non, qu'utilisez vous comme matériel ?");
conservationOnglet.add(autreMaterielTrukCp);
RadioGroup markTraitementRGrpChp = new RadioGroup("traitement_grp");
RadioGroup markTraitementRGrpChp = creerChoixUniqueRadioGroupe("traitement_mark", "ouiNon");
markTraitementRGrpChp.setFieldLabel("Réalisez vous actuellement des traitements globaux contre les insectes ?");
creerChoixUniqueBr(markTraitementRGrpChp, "mark_traitement");
conservationOnglet.add(markTraitementRGrpChp);
traitementTrukCp = creerChoixMultipleCp("insecteTraitement");
traitementTrukCp.hide();
traitementTrukCacGrpChp = new CheckBoxGroup();
traitementTrukCacGrpChp.setFieldLabel("Si oui, lesquels ?");
conservationOnglet.add(traitementTrukCp);
RadioGroup markCollectionAcquisitionRGrpChp = new RadioGroup("collection_acquisition_grp");
RadioGroup markCollectionAcquisitionRGrpChp = creerChoixUniqueRadioGroupe("collection_acquisition_mark", "ouiNon");
markCollectionAcquisitionRGrpChp.setFieldLabel("Actuellement, vos collections botaniques s'accroissent-elles de nouvelles acquisitions ?");
creerChoixUniqueBr(markCollectionAcquisitionRGrpChp, "mark_collection_acquisition");
conservationOnglet.add(markCollectionAcquisitionRGrpChp);
RadioGroup markEchantillonAcquisitionRGrpChp = new RadioGroup("echantillon_acquisition_grp");
RadioGroup markEchantillonAcquisitionRGrpChp = creerChoixUniqueRadioGroupe("echantillon_acquisition_mark", "ouiNon");
markEchantillonAcquisitionRGrpChp.setFieldLabel("Actuellement, mettez vous en herbier de nouveaux échantillons ?");
creerChoixUniqueBr(markEchantillonAcquisitionRGrpChp, "mark_echantillon_acquisition");
conservationOnglet.add(markEchantillonAcquisitionRGrpChp);
 
RadioGroup markTraitementAcquisitionRGrpChp = new RadioGroup("traitement_acquisition_grp");
markTraitementAcquisitionRGrpChp.setFieldLabel("Si oui, faites-vous un traitement contre les insectes avant l'intégration dans vos collections ?");
creerChoixUniqueBr(markTraitementAcquisitionRGrpChp, "mark_traitement_acquisition");
conservationOnglet.add(markTraitementAcquisitionRGrpChp);
traitementAcquisitionMarkRGrpChp = creerChoixUniqueRadioGroupe("traitement_acquisition_mark", "ouiNon");
traitementAcquisitionMarkRGrpChp.hide();
traitementAcquisitionMarkRGrpChp.setFieldLabel("Si oui, faites-vous un traitement contre les insectes avant l'intégration dans vos collections ?");
conservationOnglet.add(traitementAcquisitionMarkRGrpChp);
LabelField question = new LabelField();
question.setFieldLabel("Si oui, lesquels ?");
conservationOnglet.add(question);
traitementAcquisitionMarkLabel = new LabelField();
traitementAcquisitionMarkLabel.hide();
traitementAcquisitionMarkLabel.setFieldLabel("Si oui, lesquels ?");
conservationOnglet.add(traitementAcquisitionMarkLabel);
trukPoisonTraitementCp = creerChoixMultipleCp("poisonTraitement");
conservationOnglet.add(trukPoisonTraitementCp);
poisonTraitementTrukCp = creerChoixMultipleCp("poisonTraitement");
poisonTraitementTrukCp.hide();
poisonTraitementTrukCacGrpChp = new CheckBoxGroup();
poisonTraitementTrukCacGrpChp.setFieldLabel("Empoisonnement");
poisonTraitementTrukCacGrpChp.setLabelStyle("font-weight:normal;text-decoration:underline;");
poisonTraitementTrukCacGrpChp.setLabelSeparator("");
conservationOnglet.add(poisonTraitementTrukCp);
insecteTraitementTrukCp = creerChoixMultipleCp("insecteTraitement");
insecteTraitementTrukCp.hide();
insecteTraitementTrukCacGrpChp = new CheckBoxGroup();
insecteTraitementTrukCacGrpChp.setLabelStyle("font-weight:normal;text-decoration:underline;");
insecteTraitementTrukCacGrpChp.setLabelSeparator("");
insecteTraitementTrukCacGrpChp.setFieldLabel("Désinsectisation");
conservationOnglet.add(insecteTraitementTrukCp);
return conservationOnglet;
820,75 → 852,104
* @param listeNom nom de la liste de valeur
* @return
*/
private void creerChoixUniqueBr(RadioGroup radioGroup, String attributNom ) {
Radio ouiRadio = new Radio();
ouiRadio.setName(attributNom);
ouiRadio.setId("oui_"+attributNom);
ouiRadio.setBoxLabel("Oui");
ouiRadio.addListener(Events.OnClick, new Listener<BaseEvent>() {
 
public void handleEvent(BaseEvent be) {
afficherChamp(((Radio) be.source), "oui");
}
});
 
//ouiRadio.setValue(true);
private RadioGroup creerChoixUniqueRadioGroupe(String groupeNom, String listeNom) {
groupeNom += "_grp";
// NOTE : il semblerait qu'il faille aussi utiliser setName() pour éviter tout problème...
RadioGroup radioGroup = new RadioGroup(groupeNom);
radioGroup.setName(groupeNom);
Radio nonRadio = new Radio();
nonRadio.setName(attributNom);
nonRadio.setId("non_"+attributNom);
nonRadio.setBoxLabel("Non");
nonRadio.addListener(Events.OnClick, new Listener<BaseEvent>() {
 
public void handleEvent(BaseEvent be) {
afficherChamp(((Radio) be.source), "non");
}
});
if (! listeNom.equals("ouiNon")) {
coelModele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId(listeNom));
} else {
ValeurListe ouiNonListe = new ValeurListe();
ouiNonListe.ajouter(new Valeur("oui", "Oui", "NULL", "NULL"));
ouiNonListe.ajouter(new Valeur("non", "Non", "NULL", "NULL"));
creerChoixUniqueBoutonRadio(radioGroup, ouiNonListe);
}
radioGroup.add(ouiRadio);
radioGroup.add(nonRadio);
return radioGroup;
}
private void afficherChamp(Radio r, String type) {
private void creerChoixUniqueBoutonRadio(RadioGroup radioGroupe, ValeurListe listeValeurs) {
for (Iterator<String> it = listeValeurs.keySet().iterator(); it.hasNext();) {
Valeur val = listeValeurs.get(it.next());
Radio radioBtn = new Radio();
//radioBtn.setName(radioGroupe.getName().replace("_grp", ""));
//radioBtn.setId(val.getId()+"_"+radioBtn.getName());
radioBtn.setBoxLabel(val.getNom());
radioBtn.addListener(Events.Change, new Listener<BaseEvent>() {
public void handleEvent(BaseEvent be) {
Window.alert(((Radio) be.source).getId());
afficherChampSupplementaire(((Radio) be.source));
}
});
 
if (! val.getDescription().equals("NULL")) {
radioBtn.setToolTip(new ToolTipConfig(val.getNom(), val.getDescription()));
}
radioGroupe.add(radioBtn);
}
}
private void afficherChampSupplementaire(Radio radioBtn) {
//GWT.log("Nom : "+radioBtn.getGroup().getName(), null);
// Valeur du bouton radio déclenchant l'affichage des composants cachés
String valeurPourAfficher = "oui";
// Construction de la liste des composants à afficher/cacher
String radioGroupeNom = radioBtn.getGroup().getName();
ArrayList<Object> composants = new ArrayList<Object>();
if (radioGroupeNom.equals("action_mark_grp")) {
composants.add(actionTrukCp);
} else if (radioGroupeNom.equals("future_action_mark_grp")) {
composants.add(futureActionChp);
} else if (radioGroupeNom.equals("sans_motif_acces_mark_grp")) {
composants.add(sansMotifAccesChp);
} else if (radioGroupeNom.equals("avec_motif_acces_mark_grp")) {
composants.add(avecMotifAccesChp);
} else if (radioGroupeNom.equals("recherche_mark_grp")) {
composants.add(provenanceRechercheTrukCp);
composants.add(TypeRechercheTrukCp);
} else if (radioGroupeNom.equals("formation_mark_grp")) {
composants.add(formationChp);
} else if (radioGroupeNom.equals("collection_commune_mark_grp")) {
composants.add(collectionAutreTrukCp);
} else if (radioGroupeNom.equals("restauration_mark_grp")) {
composants.add(opRestauTrukCp);
} else if (radioGroupeNom.equals("traitement_mark_grp")) {
composants.add(traitementTrukCp);
} else if (radioGroupeNom.equals("echantillon_acquisition_mark_grp")) {
composants.add(traitementAcquisitionMarkRGrpChp);
} else if (radioGroupeNom.equals("traitement_acquisition_mark_grp")) {
composants.add(traitementAcquisitionMarkLabel);
composants.add(poisonTraitementTrukCp);
composants.add(insecteTraitementTrukCp);
} else if (radioGroupeNom.equals("materiel_conservation_ce_grp")) {
composants.add(autreMaterielTrukCp);
valeurPourAfficher = "non";
}
ArrayList<Component> cp = new ArrayList<Component>();
if (r.getName().equals("action_mark_grp")) {
cp.add(actionTrukCp);
} else if (r.getName().equals("future_action_mark_grp")) {
cp.add(futureActionChp);
} else if (r.getName().equals("sans_motif_acces_mark_grp")) {
cp.add(sansMotifAccesChp);
} else if (r.getName().equals("avec_motif_acces_mark_grp")) {
cp.add(avecMotifAccesChp);
} else if (r.getName().equals("recherche_mark_grp")) {
cp.add(provenanceRechercheTrukCp);
cp.add(TypeRechercheTrukCp);
} else if (r.getName().equals("formation_mark_grp")) {
cp.add(formationChp);
} else if (r.getName().equals("collection_commune_mark")) {
cp.add(collectionAutreTrukCp);
} else if (r.getName().equals("restauration_mark")) {
cp.add(opRestauTrukCp);
}
final int tailleMax = cp.size();
// Nous affichons/cachons les composant de la liste
final int tailleMax = composants.size();
//GWT.log("Id : "+radioBtn.getId()+" - Class : "+radioBtn.getClass().toString()+"- Taille : "+tailleMax, null);
Window.alert("Radio grp nom : "+radioGroupeNom+" - Id btn : "+radioBtn.getId()+" - Class : "+radioBtn.getClass().toString()+"- Taille : "+tailleMax);
for (int i = 0; i < tailleMax; i++) {
// En fonction du type de bouton cliquer, on affiche ou cache les champs
if (r.getValue() == true && type.equals("oui")) {
cp.get(i).show();
String type = radioBtn.getBoxLabel().toLowerCase();
GWT.log(type, null);
if (radioBtn.getValue() == true) {
if (type.equals(valeurPourAfficher)) {
((Component) composants.get(i)).show();
} else {
((Component) composants.get(i)).hide();
}
}
if (r.getValue() == true && type.equals("non")) {
cp.get(i).hide();
}
 
// Si on a à faire à un ContentPanel, on l'actualise pour déclencher l'affichage
// FIXME : régler le problème ci-dessous : instanceof ne fonctionne pas car cp est un tableau de componet...
if (cp.get(i) instanceof ContentPanel) {
GWT.log(r.getId(), null);
((ContentPanel) cp.get(i)).layout();
if (composants.get(i) instanceof ContentPanel) {
((ContentPanel) composants.get(i)).layout();
}
}
915,18 → 976,17
*
* @param cp panneau conteant le groupe de case à cocher
* @param cacGroup le groupe de case à cocher
* @param labelTxt le texte du champ
* @param listeValeurs la liste de valeurs à transformer en case à cocher
* @param boolAutreChp booléen indiquant si oui ou non le champ autre doit apparaître
* @return
*/
private void creerChoixMultipleCac(ContentPanel cp, CheckBoxGroup cacGroupe, String labelTxt, ValeurListe listeValeurs, Boolean boolAutreChp) {
cacGroupe.setFieldLabel(labelTxt);
private void creerChoixMultipleCac(ContentPanel cp, CheckBoxGroup cacGroupe, ValeurListe listeValeurs, Boolean boolAutreChp) {
cacGroupe.setAutoWidth(true);
for (Iterator<String> it = listeValeurs.keySet().iterator(); it.hasNext();) {
Valeur val = listeValeurs.get(it.next());
String nom = val.get("nom");
CheckBox cac = new CheckBox();
cac.setId("val-"+val.getId());
cac.setBoxLabel(nom);
if (! val.getDescription().equals("NULL")) {
cac.setToolTip(new ToolTipConfig(val.getNom(), val.getDescription()));
982,85 → 1042,54
comboLiFonction.setStore(magazinLiFonction);
}
if (listeValeurs.getId().equals(config.getListeId("localStockage"))) {
trukLocalStockageCacGrpChp = new CheckBoxGroup();
String labelTxt = "Avez vous des locaux spécifiques de stockage des collections botaniques ?";
creerChoixMultipleCac(trukLocalStockageCp, trukLocalStockageCacGrpChp, labelTxt, listeValeurs, true);
creerChoixMultipleCac(localStockageTrukCp, localStockageTrukCacGrpChp, listeValeurs, true);
}
if (listeValeurs.getId().equals(config.getListeId("meubleStockage"))) {
trukMeubleStockageCacGrpChp = new CheckBoxGroup();
String labelTxt = "Avez vous des meubles spécifiques au stockage des collections botaniques ?";
creerChoixMultipleCac(trukMeubleStockageCp, trukMeubleStockageCacGrpChp, labelTxt, listeValeurs, true);
creerChoixMultipleCac(meubleStockageTrukCp, meubleStockageTrukCacGrpChp, listeValeurs, true);
}
if (listeValeurs.getId().equals(config.getListeId("parametreStockage"))) {
trukParametreStockageCacGrpChp = new CheckBoxGroup();
String labelTxt = "Quels paramètres maîtrisez vous ?";
creerChoixMultipleCac(trukParametreStockageCp, trukParametreStockageCacGrpChp, labelTxt, listeValeurs, true);
creerChoixMultipleCac(parametreStockageTrukCp, parametreStockageTrukCacGrpChp, listeValeurs, true);
}
if (listeValeurs.getId().equals(config.getListeId("autreCollection"))) {
if (collectionAutreTrukCp.getItemByItemId("collectionAutreTrukCacGrpChp") == null) {
collectionAutreTrukCacGrpChp = new CheckBoxGroup();
collectionAutreTrukCacGrpChp.setId("collectionAutreTrukCacGrpChp");
String labelTxt = "Si oui, lesquelles ?";
creerChoixMultipleCac(collectionAutreTrukCp, collectionAutreTrukCacGrpChp, labelTxt, listeValeurs, true);
creerChoixMultipleCac(collectionAutreTrukCp, collectionAutreTrukCacGrpChp, listeValeurs, true);
}
if (autreCollectionTrukCp.getItemByItemId("autreCollectionTrukCacGrpChp") == null) {
trukAutreCollectionCacGrpChp = new CheckBoxGroup();
trukAutreCollectionCacGrpChp.setId("autreCollectionTrukCacGrpChp");
String labelTxt = "L'organisme dispose-t-il d'autres collections (permettant une valorisation pluridisciplinaire) ?";
creerChoixMultipleCac(autreCollectionTrukCp, trukAutreCollectionCacGrpChp, labelTxt, listeValeurs, true);
creerChoixMultipleCac(autreCollectionTrukCp, trukAutreCollectionCacGrpChp, listeValeurs, true);
}
}
if (listeValeurs.getId().equals(config.getListeId("opRestau"))) {
trukOpRestauCacGrpChp = new CheckBoxGroup();
String labelTxt = "Si oui, lesquelles ?";
creerChoixMultipleCac(opRestauTrukCp, trukOpRestauCacGrpChp, labelTxt, listeValeurs, true);
creerChoixMultipleCac(opRestauTrukCp, opRestauTrukCacGrpChp, listeValeurs, true);
}
if (listeValeurs.getId().equals(config.getListeId("onep"))) {
ceMaterielConservationCacGrpChp = new CheckBoxGroup();
String labelTxt = "Utilisez vous du matériel de conservation ?";
ceMaterielConservationCp.setToolTip(new ToolTipConfig("Matériel de conservation", "matériel spécialisé pour la conservation des archives ou du patrimoine fragile. Ce matériel possède des propriétés mécaniques et chimiques qui font qu'il résiste dans le temps et que sa dégradation n'entraîne pas de dommages sur le matériel qu'il aide à conserver. Exemples : papier neutre, papier gommé, etc..."));
creerChoixMultipleCac(ceMaterielConservationCp, ceMaterielConservationCacGrpChp, labelTxt, listeValeurs, true);
creerChoixUniqueBoutonRadio(materielConservationCeRGrpChp, listeValeurs);
}
if (listeValeurs.getId().equals(config.getListeId("autreMateriel"))) {
trukAutreMaterielCacGrpChp = new CheckBoxGroup();
String labelTxt = "Si non, qu'utilisez vous comme matériel ?";
creerChoixMultipleCac(trukAutreMaterielCp, trukAutreMaterielCacGrpChp, labelTxt, listeValeurs, true);
creerChoixMultipleCac(autreMaterielTrukCp, autreMaterielTrukCacGrpChp, listeValeurs, true);
}
if (listeValeurs.getId().equals(config.getListeId("poisonTraitement"))) {
trukPoisonTraitementCacGrpChp = new CheckBoxGroup();
String labelTxt = "Empoisonnement";
trukPoisonTraitementCacGrpChp.setLabelStyle("font-weight:normal;text-decoration:underline;");
trukPoisonTraitementCacGrpChp.setLabelSeparator("");
creerChoixMultipleCac(trukPoisonTraitementCp, trukPoisonTraitementCacGrpChp, labelTxt, listeValeurs, true);
creerChoixMultipleCac(poisonTraitementTrukCp, poisonTraitementTrukCacGrpChp, listeValeurs, true);
}
if (listeValeurs.getId().equals(config.getListeId("insecteTraitement"))) {
if (traitementTrukCp.getItemByItemId("trukTraitementCacGrpChp") == null) {
traitementTrukCacGrpChp = new CheckBoxGroup();
traitementTrukCacGrpChp.setId("trukTraitementCacGrpChp");
creerChoixMultipleCac(traitementTrukCp, traitementTrukCacGrpChp, "Si oui, lesquels ?", listeValeurs, true);
if (traitementTrukCp.getItemByItemId("traitementTrukCacGrpChp") == null) {
traitementTrukCacGrpChp.setId("traitementTrukCacGrpChp");
creerChoixMultipleCac(traitementTrukCp, traitementTrukCacGrpChp, listeValeurs, true);
}
if (insecteTraitementTrukCp.getItemByItemId("trukInsecteTraitementCacGrpChp") == null) {
insecteTraitementTrukCacGrpChp = new CheckBoxGroup();
insecteTraitementTrukCacGrpChp.setId("trukInsecteTraitementCacGrpChp");
insecteTraitementTrukCacGrpChp.setLabelStyle("font-weight:normal;text-decoration:underline;");
insecteTraitementTrukCacGrpChp.setLabelSeparator("");
creerChoixMultipleCac(insecteTraitementTrukCp, insecteTraitementTrukCacGrpChp, "Désinsectisation", listeValeurs, true);
if (insecteTraitementTrukCp.getItemByItemId("insecteTraitementTrukCacGrpChp") == null) {
insecteTraitementTrukCacGrpChp.setId("insecteTraitementTrukCacGrpChp");
creerChoixMultipleCac(insecteTraitementTrukCp, insecteTraitementTrukCacGrpChp, listeValeurs, true);
}
}
if (listeValeurs.getId().equals(config.getListeId("actionValorisation"))) {
trukActionCacGrpChp = new CheckBoxGroup();
String labelTxt = "Si oui, lesquelles ?";
creerChoixMultipleCac(actionTrukCp, trukActionCacGrpChp, labelTxt, listeValeurs, true);
creerChoixMultipleCac(actionTrukCp, actionTrukCacGrpChp, listeValeurs, true);
}
if (listeValeurs.getId().equals(config.getListeId("continentEtFr"))) {
trukProvenanceRechercheCacGrpChp = new CheckBoxGroup();
String labelTxt = "Si oui, par des chercheurs (professionnels ou amateurs) de quelle provenance ?";
creerChoixMultipleCac(provenanceRechercheTrukCp, trukProvenanceRechercheCacGrpChp, labelTxt, listeValeurs, true);
creerChoixMultipleCac(provenanceRechercheTrukCp, provenanceRechercheTrukCacGrpChp, listeValeurs, true);
}
if (listeValeurs.getId().equals(config.getListeId("typeRecherche"))) {
trukTypeRechercheCacGrpChp = new CheckBoxGroup();
String labelTxt = "Et pour quelles recherches ?";
creerChoixMultipleCac(TypeRechercheTrukCp, trukTypeRechercheCacGrpChp, labelTxt, listeValeurs, true);
creerChoixMultipleCac(TypeRechercheTrukCp, typeRechercheTrukCacGrpChp, listeValeurs, true);
}
//GWT.log("La liste #"+listeValeurs.getId()+" a été reçue!", null);
} else {
1069,4 → 1098,4
}
}
}
}