Subversion Repositories eFlore/Applications.coel

Rev

Rev 721 | Rev 936 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 721 Rev 934
1
package org.tela_botanica.client.composants;
1
package org.tela_botanica.client.composants;
2
 
2
 
3
import java.util.HashMap;
3
import java.util.HashMap;
4
 
4
 
5
import org.tela_botanica.client.Mediateur;
5
import org.tela_botanica.client.Mediateur;
6
import org.tela_botanica.client.images.Images;
6
import org.tela_botanica.client.images.Images;
7
import org.tela_botanica.client.vues.ContenuVue;
7
import org.tela_botanica.client.vues.collection.ContenuVue;
8
 
8
 
9
import com.extjs.gxt.ui.client.event.ButtonEvent;
9
import com.extjs.gxt.ui.client.event.ButtonEvent;
10
import com.extjs.gxt.ui.client.event.SelectionListener;
10
import com.extjs.gxt.ui.client.event.SelectionListener;
11
import com.extjs.gxt.ui.client.widget.LayoutContainer;
11
import com.extjs.gxt.ui.client.widget.LayoutContainer;
12
import com.extjs.gxt.ui.client.widget.MessageBox;
12
import com.extjs.gxt.ui.client.widget.MessageBox;
13
import com.extjs.gxt.ui.client.widget.Text;
13
import com.extjs.gxt.ui.client.widget.Text;
14
import com.extjs.gxt.ui.client.widget.button.Button;
14
import com.extjs.gxt.ui.client.widget.button.Button;
15
import com.extjs.gxt.ui.client.widget.form.HiddenField;
15
import com.extjs.gxt.ui.client.widget.form.HiddenField;
16
import com.extjs.gxt.ui.client.widget.form.LabelField;
16
import com.extjs.gxt.ui.client.widget.form.LabelField;
17
import com.extjs.gxt.ui.client.widget.form.TextField;
17
import com.extjs.gxt.ui.client.widget.form.TextField;
18
import com.extjs.gxt.ui.client.widget.layout.ColumnData;
18
import com.extjs.gxt.ui.client.widget.layout.ColumnData;
19
import com.extjs.gxt.ui.client.widget.layout.ColumnLayout;
19
import com.extjs.gxt.ui.client.widget.layout.ColumnLayout;
20
import com.extjs.gxt.ui.client.widget.layout.FormLayout;
20
import com.extjs.gxt.ui.client.widget.layout.FormLayout;
21
import com.extjs.gxt.ui.client.widget.layout.RowLayout;
21
import com.extjs.gxt.ui.client.widget.layout.RowLayout;
22
import com.google.gwt.core.client.GWT;
22
import com.google.gwt.core.client.GWT;
23
import com.google.gwt.user.client.ui.Image;
23
import com.google.gwt.user.client.ui.Image;
24
 
24
 
25
public class ChampMultiValeursImage extends ChampMultiValeurs {
25
public class ChampMultiValeursImage extends ChampMultiValeurs {
26
	 	
26
	 	
27
	private String height, width;
27
	private String height, width;
28
	private LayoutContainer sousContenu = null;
28
	private LayoutContainer sousContenu = null;
29
	
29
	
30
	public ChampMultiValeursImage() {
30
	public ChampMultiValeursImage() {
31
		super(null, 0);
31
		super(null, 0);
32
		initialiserSousContenu();
32
		initialiserSousContenu();
33
		
33
		
34
	}
34
	}
35
	
35
	
36
	public ChampMultiValeursImage(String label) {
36
	public ChampMultiValeursImage(String label) {
37
		super(label, 0);
37
		super(label, 0);
38
		initialiserSousContenu();
38
		initialiserSousContenu();
39
	}
39
	}
40
	
40
	
41
	public ChampMultiValeursImage(String label, int largeurTotale) {
41
	public ChampMultiValeursImage(String label, int largeurTotale) {
42
		super(label, largeurTotale);
42
		super(label, largeurTotale);
43
		initialiserSousContenu();
43
		initialiserSousContenu();
44
	}
44
	}
45
	
45
	
46
	public void initialiserSousContenu()	{
46
	public void initialiserSousContenu()	{
47
		sousContenu = new LayoutContainer(new ColumnLayout());
47
		sousContenu = new LayoutContainer(new ColumnLayout());
48
		principalLayout.add(sousContenu);
48
		principalLayout.add(sousContenu);
49
	}
49
	}
50
	
50
	
51
	public void setImageHeight(String height)	{
51
	public void setImageHeight(String height)	{
52
		this.height = height;
52
		this.height = height;
53
	}
53
	}
54
	
54
	
55
	public void setImageWidth(String width)	{
55
	public void setImageWidth(String width)	{
56
		this.width = width;
56
		this.width = width;
57
	}
57
	}
58
	
58
	
59
	public void ajouterValeur(final String strUrl) 	{
59
	public void ajouterValeur(final String strUrl) 	{
60
		LayoutContainer lcUrl = new LayoutContainer();
60
		LayoutContainer lcUrl = new LayoutContainer();
61
		lcUrl.setLayout(new RowLayout());
61
		lcUrl.setLayout(new RowLayout());
62
		valeurs.put(strUrl, lcUrl);
62
		valeurs.put(strUrl, lcUrl);
63
		
63
		
64
		Image logo = new Image(strUrl);
64
		Image logo = new Image(strUrl);
65
		logo.setTitle(strUrl);
65
		logo.setTitle(strUrl);
66
		if (height != null)	{
66
		if (height != null)	{
67
			logo.setHeight(height);
67
			logo.setHeight(height);
68
		}
68
		}
69
		
69
		
70
		if (width != null)	{
70
		if (width != null)	{
71
			logo.setWidth(width);
71
			logo.setWidth(width);
72
		}
72
		}
73
		
73
		
74
		lcUrl.add(logo);
74
		lcUrl.add(logo);
75
		
75
		
76
		Button supprimerBouton = new Button();
76
		Button supprimerBouton = new Button();
77
		supprimerBouton.setIcon(Images.ICONES.supprimer());
77
		supprimerBouton.setIcon(Images.ICONES.supprimer());
78
		supprimerBouton.setData("valeur", strUrl);
78
		supprimerBouton.setData("valeur", strUrl);
79
		supprimerBouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
79
		supprimerBouton.addSelectionListener(new SelectionListener<ButtonEvent>() {
80
			public void componentSelected(ButtonEvent ce) {
80
			public void componentSelected(ButtonEvent ce) {
81
				String valeur = ce.getComponent().getData("valeur");
81
				String valeur = ce.getComponent().getData("valeur");
82
				LayoutContainer valeurLayout = valeurs.get(valeur);
82
				LayoutContainer valeurLayout = valeurs.get(valeur);
83
				principalLayout.remove(valeurLayout);
83
				principalLayout.remove(valeurLayout);
84
				
84
				
85
				valeurs.remove(valeur);
85
				valeurs.remove(valeur);
86
				
86
				
87
				supprimerValeurDuRecapitulatif(valeur);
87
				supprimerValeurDuRecapitulatif(valeur);
88
				
88
				
89
				actualiserLayoutGlobal();
89
				actualiserLayoutGlobal();
90
			}
90
			}
91
		});
91
		});
92
		lcUrl.add(supprimerBouton);
92
		lcUrl.add(supprimerBouton);
93
		
93
		
94
		// Ajout du layout de la valeur au layout principal
94
		// Ajout du layout de la valeur au layout principal
95
		sousContenu.add(lcUrl);
95
		sousContenu.add(lcUrl);
96
		
96
		
97
		// Ajout de la valeur au champ récapitulatif des valeurs ajoutées
97
		// Ajout de la valeur au champ récapitulatif des valeurs ajoutées
98
		ajouterValeurAuRecapitulatif(strUrl);
98
		ajouterValeurAuRecapitulatif(strUrl);
99
		reinitialiserChamp();
99
		reinitialiserChamp();
100
		actualiserLayoutGlobal();
100
		actualiserLayoutGlobal();
101
	}	
101
	}	
102
}
102
}