Subversion Repositories eFlore/Applications.coel

Rev

Rev 521 | Rev 553 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 521 Rev 551
Line 1... Line 1...
1
package org.tela_botanica.client.vues;
1
package org.tela_botanica.client.vues;
Line 2... Line 2...
2
 
2
 
3
import java.util.ArrayList;
3
import java.util.ArrayList;
Line 4... Line -...
4
import java.util.List;
-
 
5
 
4
import java.util.List;
6
import org.tela_botanica.client.ComposantClass;
5
 
7
import org.tela_botanica.client.Mediateur;
6
import org.tela_botanica.client.Mediateur;
8
import org.tela_botanica.client.RegistreId;
7
import org.tela_botanica.client.RegistreId;
9
import org.tela_botanica.client.i18n.Constantes;
8
import org.tela_botanica.client.i18n.Constantes;
Line 13... Line 12...
13
import org.tela_botanica.client.modeles.Structure;
12
import org.tela_botanica.client.modeles.Structure;
14
import org.tela_botanica.client.modeles.StructureListe;
13
import org.tela_botanica.client.modeles.StructureListe;
15
import org.tela_botanica.client.modeles.Utilisateur;
14
import org.tela_botanica.client.modeles.Utilisateur;
Line 16... Line 15...
16
 
15
 
17
import com.extjs.gxt.ui.client.Registry;
-
 
18
import com.extjs.gxt.ui.client.Style.SelectionMode;
16
import com.extjs.gxt.ui.client.Registry;
19
import com.extjs.gxt.ui.client.Style.SortDir;
17
import com.extjs.gxt.ui.client.Style.SortDir;
20
import com.extjs.gxt.ui.client.event.ButtonEvent;
-
 
21
import com.extjs.gxt.ui.client.event.ComponentEvent;
18
import com.extjs.gxt.ui.client.event.ButtonEvent;
22
import com.extjs.gxt.ui.client.event.SelectionChangedEvent;
19
import com.extjs.gxt.ui.client.event.SelectionChangedEvent;
23
import com.extjs.gxt.ui.client.event.SelectionChangedListener;
20
import com.extjs.gxt.ui.client.event.SelectionChangedListener;
24
import com.extjs.gxt.ui.client.event.SelectionListener;
21
import com.extjs.gxt.ui.client.event.SelectionListener;
25
import com.extjs.gxt.ui.client.store.ListStore;
22
import com.extjs.gxt.ui.client.store.ListStore;
Line 49... Line 46...
49
 
46
 
50
	public StructureListeVue(Mediateur mediateurCourant) {
47
	public StructureListeVue(Mediateur mediateurCourant) {
51
		mediateur = mediateurCourant;
48
		mediateur = mediateurCourant;
Line 52... Line 49...
52
		i18nC = mediateur.i18nC;
49
		i18nC = mediateur.i18nC;
Line 53... Line 50...
53
		
50
		
54
		Utilisateur utilisateur = (Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT);
51
		setLayout(new FitLayout());
55
		
52
		
56
		ToolBar toolBar = new ToolBar();
53
		ToolBar toolBar = new ToolBar();
Line 68... Line 65...
68
		modifier.addSelectionListener(new SelectionListener<ButtonEvent>() {
65
		modifier.addSelectionListener(new SelectionListener<ButtonEvent>() {
69
			public void componentSelected(ButtonEvent ce) {
66
			public void componentSelected(ButtonEvent ce) {
70
				mediateur.clicModifierStructure(grille.getSelectionModel().getSelectedItems());
67
				mediateur.clicModifierStructure(grille.getSelectionModel().getSelectedItems());
71
			}
68
			}
72
		});
69
		});
73
		
-
 
74
		toolBar.add(modifier);
70
		toolBar.add(modifier);
Line 75... Line 71...
75
		
71
		
76
		supprimer = new Button(i18nC.supprimer());
72
		supprimer = new Button(i18nC.supprimer());
77
		supprimer.setIcon(Images.ICONES.supprimer());
73
		supprimer.setIcon(Images.ICONES.supprimer());
78
		supprimer.addSelectionListener(new SelectionListener<ButtonEvent>() {
74
		supprimer.addSelectionListener(new SelectionListener<ButtonEvent>() {
79
			public void componentSelected(ButtonEvent ce) {
75
			public void componentSelected(ButtonEvent ce) {
80
				clicSupprimerStructure(grille.getSelectionModel().getSelectedItems());
76
				clicSupprimerStructure(grille.getSelectionModel().getSelectedItems());
81
			}
77
			}
82
		});
-
 
83
		if (!utilisateur.isIdentifie()) {
-
 
84
			supprimer.disable();
-
 
85
		}
78
		});
Line 86... Line 79...
86
		toolBar.add(supprimer);
79
		toolBar.add(supprimer);
Line 87... Line 80...
87
 
80
 
Line 88... Line 81...
88
		setTopComponent(toolBar);
81
		setTopComponent(toolBar);
89
 
82
 
90
		List<ColumnConfig> lstColumns = new ArrayList<ColumnConfig>();
83
		List<ColumnConfig> lstColumns = new ArrayList<ColumnConfig>();
91
		
84
		
92
		ColumnConfig ccVille = new ColumnConfig();
85
		ColumnConfig ccVille = new ColumnConfig();
Line 93... Line 86...
93
		ccVille.setId("ville");
86
		ccVille.setId("ville");
94
		ccVille.setHeader("Ville");
87
		ccVille.setHeader("Ville");
95
		ccVille.setWidth(300);
88
		ccVille.setWidth(150);
96
		lstColumns.add(ccVille);
89
		lstColumns.add(ccVille);
97
		
90
		
Line 98... Line 91...
98
		ColumnConfig ccNom = new ColumnConfig();
91
		ColumnConfig ccNom = new ColumnConfig();
Line 99... Line -...
99
		ccNom.setId("nom");
-
 
100
		ccNom.setHeader("Nom");
-
 
101
		ccNom.setWidth(300);
-
 
102
		lstColumns.add(ccNom);
-
 
103
		
92
		ccNom.setId("nom");
104
		ColumnModel cmStructure = new ColumnModel(lstColumns);
93
		ccNom.setHeader("Nom");
105
		
94
		ccNom.setWidth(450);
106
		store = new ListStore<Structure>();
95
		lstColumns.add(ccNom);
107
		store.sort("ville", SortDir.ASC);
96
		
108
		grille = new Grid<Structure>(store, cmStructure);
97
		ColumnModel cmStructure = new ColumnModel(lstColumns);
109
				
98
		
Line -... Line 99...
-
 
99
		GridSelectionModel<Structure> gsmSelectionStructure = new GridSelectionModel<Structure>();
-
 
100
		gsmSelectionStructure.addSelectionChangedListener(new SelectionChangedListener<Structure>() {
-
 
101
			public void selectionChanged(SelectionChangedEvent<Structure> event) {
-
 
102
				Structure m = (Structure) event.getSelectedItem();
-
 
103
				clicListe(m);
110
		GridSelectionModel<Structure> gsmSelectionStructure = new GridSelectionModel<Structure>();
104
			}
111
		gsmSelectionStructure.addSelectionChangedListener(new SelectionChangedListener<Structure>() {
105
		});
112
			public void selectionChanged(SelectionChangedEvent<Structure> event) {
106
		
113
				Structure m = (Structure) event.getSelectedItem();
-
 
114
				clicListe(m);
107
		store = new ListStore<Structure>();
Line 115... Line 108...
115
			}
108
		store.sort("ville", SortDir.ASC);
116
		});
109
 
117
		
110
		grille = new Grid<Structure>(store, cmStructure);
Line 131... Line 124...
131
		if (store.getCount() > 0) {
124
		if (store.getCount() > 0) {
132
			mediateur.clicSupprimerStructure(this, structuresASupprimer);
125
			mediateur.clicSupprimerStructure(this, structuresASupprimer);
133
		}
126
		}
134
	}
127
	}
Line -... Line 128...
-
 
128
 
-
 
129
	private void gererEtatActivationBouton() {
-
 
130
		int nbreElementDuMagazin = store.getCount();
-
 
131
		if (nbreElementDuMagazin == 0) {
-
 
132
			supprimer.disable();
-
 
133
			modifier.disable();
-
 
134
		} else if (nbreElementDuMagazin > 0) {
-
 
135
			modifier.enable();
-
 
136
			if (((Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT)).isIdentifie()) {
-
 
137
				supprimer.enable();
-
 
138
			}
-
 
139
		}
-
 
140
	}
135
 
141
	
136
	public void rafraichir(Object nouvelleDonnees) {
142
	public void rafraichir(Object nouvelleDonnees) {
137
		if (nouvelleDonnees instanceof StructureListe) {
143
		if (nouvelleDonnees instanceof StructureListe) {
138
			StructureListe structures = (StructureListe) nouvelleDonnees;
144
			StructureListe structures = (StructureListe) nouvelleDonnees;
Line 139... Line 145...
139
			setHeading(i18nC.titreStructureListe());
145
			setHeading(i18nC.titreStructureListe());
140
			
146
			
141
			List<Structure> liste = (List<Structure>) structures.toList();
147
			List<Structure> liste = (List<Structure>) structures.toList();
Line 142... Line 148...
142
			store.removeAll();
148
			store.removeAll();
Line 143... Line 149...
143
			store.add(liste);
149
			store.add(liste);
144
 
-
 
145
			mediateur.actualiserPanneauCentral();
-
 
146
			
150
 
147
			if (store.getCount() > 0) {
151
			gererEtatActivationBouton();
-
 
152
			
-
 
153
			if (store.getCount() > 0) {
148
				//TODO : check below:
154
				grille.getSelectionModel().select(0, false);
149
				//table.getSelectionModel().select(0, 1, true);
155
			}
150
				grille.getSelectionModel().select(0, true);
156
			mediateur.actualiserPanneauCentral();
151
			}
157
 
152
		} else if (nouvelleDonnees instanceof Information) {
158
		} else if (nouvelleDonnees instanceof Information) {
Line 159... Line 165...
159
				// Suppression des structures sélectionnées
165
				// Suppression des structures sélectionnées
160
				List<Structure> selectionStructure = grille.getSelectionModel().getSelectedItems();//table.getSelectedItems();
166
				List<Structure> selectionStructure = grille.getSelectionModel().getSelectedItems();//table.getSelectedItems();
161
				final int taille = selectionStructure.size();
167
				final int taille = selectionStructure.size();
162
				for (int i = 0; i < taille; i++) {
168
				for (int i = 0; i < taille; i++) {
163
					//GWT.log("INDEX :"+table.indexOf(selectionStructure.get(i)), null);
169
					//GWT.log("INDEX :"+table.indexOf(selectionStructure.get(i)), null);
164
					//table.remove(selectionStructure.get(i));
-
 
165
					store.remove(selectionStructure.get(i));
170
					store.remove(selectionStructure.get(i));
166
				}
171
				}
Line 167... Line -...
167
				
-
 
168
				// Désactivation des boutons si la liste est vide
-
 
169
				
-
 
170
				//TODO : taille de la grille??
-
 
171
				/*if (  == 0) {  
172
				
172
					supprimer.disable();
-
 
173
					modifier.disable();
-
 
174
				}*/
173
				gererEtatActivationBouton();
175
			} else if (info.getType().equals("maj_utilisateur")) {
-
 
176
				/*if (((Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT)).isIdentifie()) {
-
 
177
					//TODO : taille de la grille??
-
 
178
					if (table.getItemCount() != 0) {
174
			} else if (info.getType().equals("maj_utilisateur")) {
179
						supprimer.enable();
-
 
180
					}
-
 
181
				} else {
-
 
182
					supprimer.disable();
-
 
183
				}*/
175
				gererEtatActivationBouton();
184
			}
176
			}
185
		} else {
177
		} else {
186
			GWT.log("Pas de correspondance dans la méthode rafraichir() de la classe "+this.getClass(), null);
178
			GWT.log("Pas de correspondance dans la méthode rafraichir() de la classe "+this.getClass(), null);
187
		}
179
		}