Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 853 Rev 857
Line 1... Line 1...
1
package org.tela_botanica.client.composants;
1
package org.tela_botanica.client.composants;
Line 2... Line -...
2
 
-
 
3
 
-
 
4
import java.util.ArrayList;
-
 
5
import java.util.HashMap;
-
 
6
import java.util.Iterator;
2
 
Line 7... Line 3...
7
import java.util.List;
3
import java.util.List;
8
 
4
 
9
import org.tela_botanica.client.Mediateur;
5
import org.tela_botanica.client.Mediateur;
10
import org.tela_botanica.client.RegistreId;
6
import org.tela_botanica.client.RegistreId;
11
import org.tela_botanica.client.images.Images;
7
import org.tela_botanica.client.images.Images;
12
import org.tela_botanica.client.interfaces.Rafraichissable;
8
import org.tela_botanica.client.interfaces.Rafraichissable;
13
import org.tela_botanica.client.modeles.Configuration;
9
import org.tela_botanica.client.modeles.Configuration;
-
 
10
import org.tela_botanica.client.modeles.Valeur;
-
 
11
import org.tela_botanica.client.modeles.ValeurListe;
Line 14... Line 12...
14
import org.tela_botanica.client.modeles.Valeur;
12
import org.tela_botanica.client.modeles.aDonneeListe;
15
import org.tela_botanica.client.modeles.ValeurListe;
13
import org.tela_botanica.client.vues.Formulaire;
16
 
14
 
17
import com.extjs.gxt.ui.client.Registry;
15
import com.extjs.gxt.ui.client.Registry;
Line 22... Line 20...
22
import com.extjs.gxt.ui.client.widget.Text;
20
import com.extjs.gxt.ui.client.widget.Text;
23
import com.extjs.gxt.ui.client.widget.button.Button;
21
import com.extjs.gxt.ui.client.widget.button.Button;
24
import com.extjs.gxt.ui.client.widget.form.ComboBox;
22
import com.extjs.gxt.ui.client.widget.form.ComboBox;
25
import com.extjs.gxt.ui.client.widget.layout.ColumnData;
23
import com.extjs.gxt.ui.client.widget.layout.ColumnData;
26
import com.extjs.gxt.ui.client.widget.layout.ColumnLayout;
24
import com.extjs.gxt.ui.client.widget.layout.ColumnLayout;
27
import com.extjs.gxt.ui.client.widget.layout.RowLayout;
-
 
28
import com.google.gwt.core.client.GWT;
-
 
29
import com.google.gwt.user.client.ui.Image;
-
 
Line 30... Line 25...
30
 
25
 
Line 31... Line -...
31
public class ChampMultiValeursMultiTypes extends ChampMultiValeurs implements Rafraichissable{
-
 
32
 
26
public class ChampMultiValeursMultiTypes extends ChampMultiValeurs implements Rafraichissable {
-
 
27
 
-
 
28
	private Configuration config = (Configuration) Registry.get(RegistreId.CONFIG);
Line 33... Line 29...
33
	private String idListeType;
29
	private String idListeType = null;
34
	private Configuration config = (Configuration) Registry.get(RegistreId.CONFIG);
30
	private String idListeCombo = null;
35
	
31
	
Line 43... Line 39...
43
	
39
	
44
	public ChampMultiValeursMultiTypes(String label, int largeurTotale) {
40
	public ChampMultiValeursMultiTypes(String label, int largeurTotale) {
45
		super(true, label, largeurTotale);
41
		super(true, label, largeurTotale);
Line -... Line 42...
-
 
42
	}
-
 
43
	
-
 
44
	public ChampMultiValeursMultiTypes(String label, int largeurTotale, boolean combobox) {
-
 
45
		super(true, true, label, largeurTotale);
46
	}
46
	}
-
 
47
	
47
	
48
	public void initialiserType(String idListe) {
48
	public void initialiserType(String idListeType, Mediateur mediateur)	{
49
		Mediateur mediateur = (Mediateur) Registry.get(RegistreId.MEDIATEUR);
49
		this.idListeType = idListeType;
50
		idListeType = idListe;
Line 50... Line 51...
50
		mediateur.obtenirListeValeurEtRafraichir(this, idListeType);
51
		mediateur.obtenirListeValeurEtRafraichir(this, idListeType);
-
 
52
	}
51
	}
53
	
-
 
54
	public void initialiserCombobox(String idListe) {
52
	
55
		Mediateur mediateur = (Mediateur) Registry.get(RegistreId.MEDIATEUR);
Line 53... Line 56...
53
	public ListStore getStore()	{		
56
		this.idListeCombo = idListe;
54
		return this.types.getStore();
57
		mediateur.obtenirListeValeurEtRafraichir(this, idListeCombo);
55
	}
-
 
56
	
58
	}
57
	public void rafraichir(Object nouvellesDonnees) {
-
 
58
		if (nouvellesDonnees instanceof ValeurListe)	{
-
 
59
 
-
 
60
			ValeurListe listeValeurs = (ValeurListe) nouvellesDonnees;
-
 
61
			
-
 
62
			// Créer une liste de valeurs
-
 
63
			List<Valeur> liste = new ArrayList<Valeur>();
-
 
64
			for (Iterator<String> it = listeValeurs.keySet().iterator(); it.hasNext();) {
59
	
65
				liste.add(listeValeurs.get(it.next()));
-
 
66
			}
60
	public void rafraichir(Object nouvellesDonnees) {
67
			
-
 
68
			if (listeValeurs.getId().equals(config.getListeId(idListeType)))	{
61
		if (nouvellesDonnees instanceof ValeurListe)	{
69
				
62
			ValeurListe listeValeurs = (ValeurListe) nouvellesDonnees;
70
				ListStore<Valeur> store = getStore();
63
			if (listeValeurs.getId().equals(config.getListeId(idListeType)))	{
71
				store.removeAll();
-
 
72
				store.add(liste);
64
				Formulaire.rafraichirComboBox(listeValeurs, types);
73
				types.setStore(store);
65
			} else if (listeValeurs.getId().equals(config.getListeId(idListeCombo)))	{
Line 74... Line 66...
74
			}
66
				Formulaire.rafraichirComboBox(listeValeurs, champValeurCombo, "id_valeur");
75
				
-
 
76
		}		
67
			}
77
	}
68
		}	
78
	
69
	}
Line 79... Line 70...
79
	public void ajouterValeur(final String texte, final String type, final String id)	{
70
	
Line 113... Line 104...
113
		
104
		
114
		// Ajout du layout de la valeur au layout principal
105
		// Ajout du layout de la valeur au layout principal
Line 115... Line 106...
115
		principalLayout.add(colonneLayout);
106
		principalLayout.add(colonneLayout);
-
 
107
		
116
		
108
		// Ajout de la valeur au champ récapitulatif des valeurs ajoutées
-
 
109
		if (estComboBox) {
-
 
110
			ajouterValeurAuRecapitulatif(texte, id);
-
 
111
		} else {
117
		// Ajout de la valeur au champ récapitulatif des valeurs ajoutées
112
			ajouterValeurAuRecapitulatif(champValeurCombo.getValue().getId(), id);
118
		ajouterValeurAuRecapitulatif(texte, id);
113
		}
119
		reinitialiserChamp();
114
		reinitialiserChamp();
Line 120... Line -...
120
		actualiserLayoutGlobal();
-
 
121
	}
-
 
122
	
-
 
123
	public void reinitialiserChamp()	{
-
 
124
		champTexte.setValue(valeurParDefaut);
-
 
125
		types.reset();
115
		actualiserLayoutGlobal();
126
	}
116
	}
127
	
117
	
128
	public void ajouterValeurAuRecapitulatif(String texte, String id) {
118
	public void ajouterValeurAuRecapitulatif(String texte, String id) {
129
		String texteRecapitulatif = "";
119
		String texteRecapitulatif = "";