Subversion Repositories eFlore/Applications.coel

Rev

Rev 1918 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
934 jpm 1
package org.tela_botanica.client.vues.collection;
862 jpm 2
 
3
import org.tela_botanica.client.Mediateur;
4
import org.tela_botanica.client.composants.ChampCaseACocher;
5
import org.tela_botanica.client.composants.ChampComboBoxListeValeurs;
6
import org.tela_botanica.client.composants.ChampSliderPourcentage;
1918 aurelien 7
import org.tela_botanica.client.modeles.OntologiesLocales;
8
import org.tela_botanica.client.modeles.SimpleModelData;
954 jpm 9
import org.tela_botanica.client.modeles.collection.Collection;
10
import org.tela_botanica.client.modeles.collection.CollectionBotanique;
11
import org.tela_botanica.client.util.Debug;
934 jpm 12
import org.tela_botanica.client.vues.Formulaire;
13
import org.tela_botanica.client.vues.FormulaireOnglet;
862 jpm 14
 
1918 aurelien 15
import com.extjs.gxt.ui.client.Style.SortDir;
16
import com.extjs.gxt.ui.client.store.ListStore;
17
import com.extjs.gxt.ui.client.widget.form.ComboBox;
862 jpm 18
import com.extjs.gxt.ui.client.widget.form.TextArea;
1918 aurelien 19
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction;
862 jpm 20
import com.extjs.gxt.ui.client.widget.layout.FormData;
21
 
22
public class CollectionFormInventaire extends FormulaireOnglet {
23
 
1083 jpm 24
	public static final String ID = "inventaire";
954 jpm 25
	private Collection collection = null;
26
	private CollectionBotanique collectionBotanique = null;
27
	private Collection collectionCollectee = null;
28
	private CollectionBotanique collectionBotaniqueCollectee = null;
29
 
1918 aurelien 30
	private ComboBox<SimpleModelData> existenceInventaireCombo = null;
31
	private ComboBox<SimpleModelData> auteurInventaireCombo = null;
862 jpm 32
	private ChampComboBoxListeValeurs formeInventaireCombo = null;
33
	private TextArea infoInventaireChp = null;
34
	private ChampCaseACocher digitalInventaireChp = null;
35
	private ChampSliderPourcentage pourcentDigitalInventaireChp = null;
36
	private ChampComboBoxListeValeurs etatInventaireCombo = null;
37
 
38
	public CollectionFormInventaire(Formulaire formulaireCourrant) {
39
		initialiserOnglet(formulaireCourrant);
1083 jpm 40
		setId(ID);
862 jpm 41
		setText(Mediateur.i18nC.collectionInventaire());
42
		int tabIndex = formulaireCourrant.tabIndex;
43
 
1918 aurelien 44
		existenceInventaireCombo = creerSimpleComboOuiNonPeutEtre(i18nC.existenceInventaireCollection());
862 jpm 45
		add(existenceInventaireCombo, new FormData(300, 0));
46
 
1918 aurelien 47
		auteurInventaireCombo = creerSimpleComboOuiNonPeutEtre(i18nC.auteurInventaireCollection());
862 jpm 48
		add(auteurInventaireCombo, new FormData(300, 0));
49
 
50
		formeInventaireCombo = new ChampComboBoxListeValeurs(i18nC.formeInventaireCollection(), "inventaireForme", tabIndex++);
51
		formeInventaireCombo.setTabIndex(tabIndex++);
52
		add(formeInventaireCombo, new FormData(300, 0));
53
 
54
		infoInventaireChp = new TextArea();
55
		infoInventaireChp.setTabIndex(tabIndex++);
56
		infoInventaireChp.setFieldLabel(i18nC.infoInventaireCollection());
57
		add(infoInventaireChp, new FormData(550, 0));
58
 
59
		digitalInventaireChp = new ChampCaseACocher(i18nC.digitalInventaireCollection(), "inventaireLogiciel", true);
60
		add(digitalInventaireChp);
61
 
62
		pourcentDigitalInventaireChp = new ChampSliderPourcentage(i18nC.pourcentDigitalInventaireCollection());
63
		pourcentDigitalInventaireChp.setTabIndex(tabIndex++);
64
		add(pourcentDigitalInventaireChp, new FormData(200, 0));
65
 
66
		etatInventaireCombo = new ChampComboBoxListeValeurs(i18nC.etatInventaireCollection(), "inventaireEtat", tabIndex++);
67
		etatInventaireCombo.setTabIndex(tabIndex++);
68
		add(etatInventaireCombo, new FormData(300, 0));
69
	}
70
 
954 jpm 71
	public void peupler() {
72
		initialiserCollection();
73
		if (collectionBotanique != null) {
1918 aurelien 74
			remplirSimpleCombo(existenceInventaireCombo, collectionBotanique.getInventaire());
75
			remplirSimpleCombo(auteurInventaireCombo, collectionBotanique.getInventaireAuteur());
955 jpm 76
			formeInventaireCombo.peupler(collectionBotanique.getInventaireForme());
77
			infoInventaireChp.setValue(collectionBotanique.getInventaireInfo());
78
			digitalInventaireChp.peupler(collectionBotanique.getInventaireDigital());
79
			pourcentDigitalInventaireChp.peupler(collectionBotanique.getInventaireDigitalPourcent());
80
			etatInventaireCombo.peupler(collectionBotanique.getInventaireEtat());
954 jpm 81
		}
82
	}
83
 
84
	public void collecter() {
85
		initialiserCollection();
1918 aurelien 86
 
1210 cyprien 87
		if (etreAccede()) {
1918 aurelien 88
			collectionBotaniqueCollectee.setInventaire(existenceInventaireCombo.getValue().getCle());
89
			collectionBotaniqueCollectee.setInventaireAuteur(auteurInventaireCombo.getValue().getCle());
954 jpm 90
			collectionBotaniqueCollectee.setInventaireForme(formeInventaireCombo.getValeur());
91
			collectionBotaniqueCollectee.setInventaireInfo(infoInventaireChp.getValue());
92
			collectionBotaniqueCollectee.setInventaireDigital(digitalInventaireChp.getValeur());
93
			collectionBotaniqueCollectee.setInventaireDigitalPourcent(pourcentDigitalInventaireChp.getValeur());
94
			collectionBotaniqueCollectee.setInventaireEtat(etatInventaireCombo.getValeur());
95
		}
96
	}
97
 
98
	private void initialiserCollection() {
99
		collection = ((CollectionForm) formulaire).collection;
100
		if (collection != null) {
101
			collectionBotanique = collection.getBotanique();
102
		}
103
 
104
		collectionCollectee = ((CollectionForm) formulaire).collectionCollectee;
105
		if (collectionCollectee != null) {
106
			collectionBotaniqueCollectee = collectionCollectee.getBotanique();
107
		}
108
	}
109
 
862 jpm 110
	public void rafraichir(Object nouvellesDonnees) {
954 jpm 111
		Debug.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()));
862 jpm 112
	}
113
 
1918 aurelien 114
	public void remplirSimpleCombo(ComboBox<SimpleModelData> simpleCombo, String valeur) {
115
		SimpleModelData selectionne = simpleCombo.getStore().findModel("cle", valeur);
116
		simpleCombo.setValue(selectionne);
117
	}
118
 
119
	public ComboBox<SimpleModelData> creerSimpleComboOuiNonPeutEtre(String label) {
120
		ListStore<SimpleModelData> listeOuiNonPeutEtre = OntologiesLocales.convertirVersListeStore(OntologiesLocales.getListeOuiNonPeutEtre());
121
		ComboBox<SimpleModelData> combo = new ComboBox<SimpleModelData>();
122
		combo.setForceSelection(true);
123
		combo.setTriggerAction(TriggerAction.ALL);
124
		combo.setFieldLabel(label);
125
 
126
		combo.setDisplayField("valeur");
127
		combo.setValueField("cle");
128
 
129
		listeOuiNonPeutEtre.sort("ordre", SortDir.ASC);
130
		combo.setStore(listeOuiNonPeutEtre);
131
 
132
		return combo;
133
	}
862 jpm 134
}