Subversion Repositories eFlore/Applications.coel

Rev

Rev 1513 | Go to most recent revision | 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);
1630 aurelien 30
 
31
		Button reinitialiser = creerBouton(CODE_BOUTON_REINITIALISER);
32
		reinitialiser.setToolTip(Mediateur.i18nC.indicationReinitialiser());
33
		this.add(reinitialiser);
34
 
775 jpm 35
		this.add(new FillToolItem());
1630 aurelien 36
		Button appliquer = creerBouton(CODE_BOUTON_APPLIQUER);
37
		this.add(appliquer);
38
		appliquer.setToolTip(Mediateur.i18nC.indicationAppliquer());
39
 
40
		Button annuler = creerBouton(CODE_BOUTON_ANNULER);
41
		annuler.setToolTip(Mediateur.i18nC.indicationAnnuler());
42
		this.add(annuler);
43
 
44
		Button valider = creerBouton(CODE_BOUTON_VALIDER);
45
		valider.setToolTip(Mediateur.i18nC.indicationValider());
46
		this.add(valider);
775 jpm 47
	}
48
 
49
	private Button creerBouton(final String code) {
50
		String nom = getNom(code);
51
 
52
		Button bouton = new Button(nom);
53
		bouton.setData("code", code);
54
		bouton.setIcon(getIcone(code));
55
		bouton.addSelectionListener(ecouteur);
56
 
57
		return bouton;
58
	}
59
 
60
	private AbstractImagePrototype getIcone(final String code) {
61
		AbstractImagePrototype icone = null;
62
		if (code.equals(CODE_BOUTON_VALIDER)) {
63
			icone = Images.ICONES.valider();
64
		} else if (code.equals(CODE_BOUTON_APPLIQUER)) {
65
			icone = Images.ICONES.appliquer();
66
		} else if (code.equals(CODE_BOUTON_ANNULER)) {
67
			icone = Images.ICONES.annuler();
68
		} else if (code.equals(CODE_BOUTON_REINITIALISER)) {
69
			icone = Images.ICONES.reinitialiser();
70
		}
71
		return icone;
72
	}
73
 
74
	private String getNom(final String code) {
75
		String nom = null;
76
		if (code.equals(CODE_BOUTON_VALIDER)) {
77
			nom = Mediateur.i18nC.valider();
78
		} else if (code.equals(CODE_BOUTON_APPLIQUER)) {
79
			nom = Mediateur.i18nC.appliquer();
80
		} else if (code.equals(CODE_BOUTON_ANNULER)) {
81
			nom = Mediateur.i18nC.annuler();
82
		} else if (code.equals(CODE_BOUTON_REINITIALISER)) {
83
			nom = Mediateur.i18nC.reinitialiser();
84
		}
85
		return nom;
86
	}
87
}