Subversion Repositories eFlore/Applications.coel

Rev

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

Rev Author Line No. Line
775 jpm 1
package org.tela_botanica.client.vues;
2
 
3
import org.tela_botanica.client.Mediateur;
4
import org.tela_botanica.client.images.Images;
5
 
6
import com.extjs.gxt.ui.client.Style.HorizontalAlignment;
7
import com.extjs.gxt.ui.client.event.ButtonEvent;
8
import com.extjs.gxt.ui.client.event.SelectionListener;
9
import com.extjs.gxt.ui.client.widget.button.Button;
10
import com.extjs.gxt.ui.client.widget.button.ButtonBar;
11
import com.extjs.gxt.ui.client.widget.toolbar.FillToolItem;
12
import com.google.gwt.user.client.ui.AbstractImagePrototype;
13
 
14
public class FormulaireBarreValidation extends ButtonBar {
15
 
16
	private SelectionListener<ButtonEvent> ecouteur = null;
17
 
18
	public static final String CODE_BOUTON_VALIDER = "VA";
19
	public static final String CODE_BOUTON_APPLIQUER = "AP";
20
	public static final String CODE_BOUTON_ANNULER = "AN";
21
	public static final String CODE_BOUTON_REINITIALISER = "RE";
22
 
23
	public FormulaireBarreValidation(SelectionListener<ButtonEvent> ecouteurCourrant) {
24
		ecouteur = ecouteurCourrant;
25
		creerBarreOutilsValidation();
26
	}
27
 
28
	private void creerBarreOutilsValidation() {
29
		this.setAlignment(HorizontalAlignment.LEFT);
30
		this.add(creerBouton(CODE_BOUTON_REINITIALISER));
31
		this.add(new FillToolItem());
32
		this.add(creerBouton(CODE_BOUTON_APPLIQUER));
33
		this.add(creerBouton(CODE_BOUTON_ANNULER));
34
		this.add(creerBouton(CODE_BOUTON_VALIDER));
35
	}
36
 
37
	private Button creerBouton(final String code) {
38
		String nom = getNom(code);
39
 
40
		Button bouton = new Button(nom);
41
		bouton.setData("code", code);
42
		bouton.setIcon(getIcone(code));
43
		bouton.addSelectionListener(ecouteur);
44
 
45
		return bouton;
46
	}
47
 
48
	private AbstractImagePrototype getIcone(final String code) {
49
		AbstractImagePrototype icone = null;
50
		if (code.equals(CODE_BOUTON_VALIDER)) {
51
			icone = Images.ICONES.valider();
52
		} else if (code.equals(CODE_BOUTON_APPLIQUER)) {
53
			icone = Images.ICONES.appliquer();
54
		} else if (code.equals(CODE_BOUTON_ANNULER)) {
55
			icone = Images.ICONES.annuler();
56
		} else if (code.equals(CODE_BOUTON_REINITIALISER)) {
57
			icone = Images.ICONES.reinitialiser();
58
		}
59
		return icone;
60
	}
61
 
62
	private String getNom(final String code) {
63
		String nom = null;
64
		if (code.equals(CODE_BOUTON_VALIDER)) {
65
			nom = Mediateur.i18nC.valider();
66
		} else if (code.equals(CODE_BOUTON_APPLIQUER)) {
67
			nom = Mediateur.i18nC.appliquer();
68
		} else if (code.equals(CODE_BOUTON_ANNULER)) {
69
			nom = Mediateur.i18nC.annuler();
70
		} else if (code.equals(CODE_BOUTON_REINITIALISER)) {
71
			nom = Mediateur.i18nC.reinitialiser();
72
		}
73
		return nom;
74
	}
75
}