Subversion Repositories eFlore/Applications.coel

Rev

Rev 69 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 69 Rev 91
Line 1... Line 1...
1
package org.tela_botanica.client.vues;
1
package org.tela_botanica.client.vues;
Line -... Line 2...
-
 
2
 
2
 
3
import java.util.ArrayList;
3
import java.util.Collections;
4
import java.util.Collections;
-
 
5
import java.util.Comparator;
4
import java.util.Comparator;
6
import java.util.Iterator;
Line -... Line 7...
-
 
7
import java.util.List;
-
 
8
 
-
 
9
import org.tela_botanica.client.Mediateur;
5
import java.util.List;
10
import org.tela_botanica.client.Modele;
-
 
11
import org.tela_botanica.client.RegistreId;
-
 
12
import org.tela_botanica.client.interfaces.Rafraichissable;
-
 
13
import org.tela_botanica.client.modeles.Configuration;
-
 
14
import org.tela_botanica.client.modeles.Structure;
-
 
15
import org.tela_botanica.client.modeles.StructureListe;
Line -... Line 16...
-
 
16
import org.tela_botanica.client.modeles.Valeur;
6
 
17
import org.tela_botanica.client.modeles.ValeurListe;
7
import org.tela_botanica.client.interfaces.Rafraichissable;
18
 
8
 
19
import com.extjs.gxt.ui.client.Registry;
9
import com.extjs.gxt.ui.client.Style.HorizontalAlignment;
20
import com.extjs.gxt.ui.client.Style.HorizontalAlignment;
10
import com.extjs.gxt.ui.client.data.BasePagingLoadResult;
21
import com.extjs.gxt.ui.client.data.BasePagingLoadResult;
Line 30... Line 41...
30
import com.extjs.gxt.ui.client.widget.layout.ColumnData;
41
import com.extjs.gxt.ui.client.widget.layout.ColumnData;
31
import com.extjs.gxt.ui.client.widget.layout.ColumnLayout;
42
import com.extjs.gxt.ui.client.widget.layout.ColumnLayout;
32
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
43
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
33
import com.extjs.gxt.ui.client.widget.layout.FlowLayout;
44
import com.extjs.gxt.ui.client.widget.layout.FlowLayout;
34
import com.extjs.gxt.ui.client.widget.layout.FormLayout;
45
import com.extjs.gxt.ui.client.widget.layout.FormLayout;
-
 
46
import com.google.gwt.core.client.GWT;
Line 35... Line 47...
35
 
47
 
Line -... Line 48...
-
 
48
public class FormStructureVue extends LayoutContainer implements Rafraichissable {
-
 
49
 
-
 
50
	private Modele coelModele = null ;
-
 
51
	private ListStore<Valeur> magazinLstpr = null;
-
 
52
	private ComboBox<Valeur> comboLstpr = null;
-
 
53
	private ListStore<Valeur> magazinLstpu = null;
36
public class FormStructureVue extends LayoutContainer implements Rafraichissable {
54
	private ComboBox<Valeur> comboLstpu = null;
37
 
55
	
Line -... Line 56...
-
 
56
	public FormStructureVue() {
-
 
57
		setLayout(new FitLayout());
-
 
58
		
38
	public FormStructureVue() {
59
		// Initialisation de variables
39
		setLayout(new FitLayout());
60
		coelModele = Registry.get(RegistreId.MODELE);
40
		
61
		
41
		// Création du panneau Formulaire
62
		// Création du panneau Formulaire
42
		FormPanel panel = new FormPanel();  
63
		FormPanel panel = new FormPanel();  
Line 78... Line 99...
78
		mnhnChp.setFieldLabel("Acronyme MNHN");
99
		mnhnChp.setFieldLabel("Acronyme MNHN");
79
		mnhnChp.setToolTip("Herbier de moins de 5000 échantillons");
100
		mnhnChp.setToolTip("Herbier de moins de 5000 échantillons");
80
		gauche.add(mnhnChp);
101
		gauche.add(mnhnChp);
Line 81... Line 102...
81
		
102
		
-
 
103
		// Combobox
82
		// Combobox
104
		coelModele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId("stpu"));
-
 
105
		magazinLstpu = new ListStore<Valeur>();
-
 
106
		magazinLstpu.add(new ArrayList<Valeur>());
83
		String url = "http://localhost/jrest/CoelValeurListe/ab/12";  
107
		comboLstpu = new ComboBox<Valeur>();  
-
 
108
		comboLstpu.setFieldLabel("Statut des structures publiques");
-
 
109
		comboLstpu.setDisplayField("nom");
-
 
110
		comboLstpu.setTriggerAction(TriggerAction.ALL);
-
 
111
		comboLstpu.setStore(magazinLstpu);
84
		ScriptTagProxy<Object, PagingLoadResult<ModelData>> proxy = new ScriptTagProxy<Object, PagingLoadResult<ModelData>>(url);  
112
		gauche.add(comboLstpu);
-
 
113
		
85
		   
114
		coelModele.obtenirListeValeurs(((Configuration) Registry.get(RegistreId.CONFIG)).getListeId("stpr"));
86
		ModelType type = new ModelType();  
115
		magazinLstpr = new ListStore<Valeur>();
87
		type.root = "topics";
116
		magazinLstpr.add(new ArrayList<Valeur>());
88
		type.totalName = "totalCount";
117
		comboLstpr = new ComboBox<Valeur>();  
89
		type.addField("cmlv_id_valeur", "id");
118
		comboLstpr.setFieldLabel("Statut des structures privées");
90
		type.addField("cmlv_ce_parent", "ce_parent");
119
		comboLstpr.setDisplayField("nom");
91
		type.addField("cmlv_ce_projet", "ce_projet");
120
		comboLstpr.setTriggerAction(TriggerAction.ALL);
92
		type.addField("cmlv_nom", "nom");
121
		comboLstpr.setStore(magazinLstpr);
-
 
122
		gauche.add(comboLstpr);
93
		type.addField("cmlv_abreviation", "abreviation");
123
		
94
		type.addField("cmlv_description", "description");
124
		TextField<String> adrChp = new TextField<String>();  
-
 
125
		adrChp.setFieldLabel("Adresse");
95
		type.addField("cmlv_ce_meta", "ce_meta");
126
		gauche.add(adrChp);
96
		
127
		
97
		JsonReader<PagingLoadConfig> reader = new JsonReader<PagingLoadConfig>(type) {  
128
		TextField<String> cpChp = new TextField<String>();  
-
 
129
		cpChp.setFieldLabel("Code postal");
-
 
130
		gauche.add(cpChp);
98
			protected ListLoadResult newLoadResult(PagingLoadConfig loadConfig, List<ModelData> models) {  
131
		
99
				PagingLoadResult result = new BasePagingLoadResult(models, loadConfig.getOffset(),  
132
		TextField<String> villeChp = new TextField<String>();  
100
				loadConfig.getLimit());  
133
		villeChp.setFieldLabel("Ville");
101
				return result;  
134
		gauche.add(villeChp);
-
 
135
		
-
 
136
		TextField<String> regionChp = new TextField<String>();  
102
			}  
137
		regionChp.setFieldLabel("Région");
103
		};
138
		gauche.add(regionChp);
104
		
139
		
-
 
140
		TextField<String> paysChp = new TextField<String>();  
-
 
141
		paysChp.setFieldLabel("Pays");
105
		PagingLoader loader = new BasePagingLoader(proxy, reader);  
142
		gauche.add(paysChp);
106
		
143
		
-
 
144
		TextField<String> telChp = new TextField<String>();  
-
 
145
		telChp.setFieldLabel("Téléphone");
107
		ListStore<ModelData> store = new ListStore<ModelData>(loader);  
146
		gauche.add(telChp);
108
		
147
		
109
		ComboBox<ModelData> combo = new ComboBox<ModelData>();  
148
		TextField<String> faxChp = new TextField<String>();  
110
		combo.setFieldLabel("Statut des structures publiques");
149
		faxChp.setFieldLabel("Fax");
-
 
150
		gauche.add(faxChp);
111
		combo.setDisplayField("nom");  
151
		
112
		combo.setItemSelector("div.search-item");  
152
		TextField<String> emailChp = new TextField<String>();  
-
 
153
		emailChp.setFieldLabel("Courriel");
113
		//combo.setTemplate(getTemplate());  
154
		emailChp.setToolTip("Saisir le courriel de l'organisation, pas de courriel individuel. Ex. : accueil@organisation.org");
-
 
155
		gauche.add(emailChp);
-
 
156
		
114
		combo.setStore(store);  
157
		TextField<String> urlChp = new TextField<String>();  
115
		combo.setHideTrigger(false);  
158
		urlChp.setFieldLabel("Site web");
-
 
159
		gauche.add(urlChp);
-
 
160
		
-
 
161
		TextField<String> dateFondationChp = new TextField<String>();  
116
		combo.setPageSize(5);
162
		dateFondationChp.setFieldLabel("Date de fondation");
Line 117... Line 163...
117
		gauche.add(combo);
163
		gauche.add(dateFondationChp);
118
		
164
		
119
		// Formulaire DROITE		
165
		// Formulaire DROITE		
120
		RadioGroup group = new RadioGroup();  
166
		RadioGroup group = new RadioGroup();  
Line 142... Line 188...
142
		// Ajout du panneau Formulaire à la disposition générale
188
		// Ajout du panneau Formulaire à la disposition générale
143
		add(panel);		  
189
		add(panel);		  
144
	}
190
	}
Line 145... Line 191...
145
 
191
 
146
	public void rafraichir(Object nouvelleDonnees) {
192
	public void rafraichir(Object nouvelleDonnees) {
-
 
193
		if (nouvelleDonnees instanceof ValeurListe) {
147
		// TODO Auto-generated method stub
194
			ValeurListe listeValeurs = (ValeurListe) nouvelleDonnees;
-
 
195
			
-
 
196
			List<Valeur> liste = new ArrayList<Valeur>();
-
 
197
			for (Iterator<String> it = listeValeurs.keySet().iterator(); it.hasNext();) {
-
 
198
				liste.add(listeValeurs.get(it.next()));
-
 
199
			}
-
 
200
			// Test pour savoir si la liste contient des éléments
-
 
201
			if (liste.size() > 0) {
-
 
202
				Configuration config = (Configuration) Registry.get(RegistreId.CONFIG);
-
 
203
				if (listeValeurs.getId().equals(config.getListeId("stpr"))) {
-
 
204
					GWT.log("La liste #"+listeValeurs.getId()+" a été reçue!", null);
-
 
205
					magazinLstpr.removeAll();
-
 
206
					magazinLstpr.add(liste);
-
 
207
					comboLstpr.setStore(magazinLstpr);
-
 
208
				}
-
 
209
				if (listeValeurs.getId().equals(config.getListeId("stpu"))) {
-
 
210
					GWT.log("La liste #"+listeValeurs.getId()+" a été reçue!", null);
-
 
211
					magazinLstpu.removeAll();
-
 
212
					magazinLstpu.add(liste);
-
 
213
					comboLstpu.setStore(magazinLstpu);
-
 
214
				}
-
 
215
			} else {
-
 
216
				GWT.log("La liste #"+listeValeurs.getId()+" ne contient aucune valeurs!", null);
-
 
217
			}
148
		
218
		}
149
	}
-
 
150
 
219
	}