Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 1645 Rev 1657
Line 1... Line 1...
1
package org.tela_botanica.client.vues.personne;
1
package org.tela_botanica.client.vues.personne;
Line 2... Line 2...
2
 
2
 
-
 
3
import java.util.ArrayList;
3
import java.util.ArrayList;
4
import java.util.Iterator;
Line 4... Line 5...
4
import java.util.List;
5
import java.util.List;
5
 
6
 
Line 18... Line 19...
18
import org.tela_botanica.client.util.Debug;
19
import org.tela_botanica.client.util.Debug;
19
import org.tela_botanica.client.vues.BarrePaginationVue;
20
import org.tela_botanica.client.vues.BarrePaginationVue;
Line 20... Line 21...
20
 
21
 
21
import com.extjs.gxt.ui.client.Registry;
22
import com.extjs.gxt.ui.client.Registry;
-
 
23
import com.extjs.gxt.ui.client.Style.SortDir;
22
import com.extjs.gxt.ui.client.Style.SortDir;
24
import com.extjs.gxt.ui.client.data.ModelComparer;
23
import com.extjs.gxt.ui.client.event.BaseEvent;
25
import com.extjs.gxt.ui.client.event.BaseEvent;
24
import com.extjs.gxt.ui.client.event.ButtonEvent;
26
import com.extjs.gxt.ui.client.event.ButtonEvent;
25
import com.extjs.gxt.ui.client.event.Events;
27
import com.extjs.gxt.ui.client.event.Events;
26
import com.extjs.gxt.ui.client.event.Listener;
28
import com.extjs.gxt.ui.client.event.Listener;
27
import com.extjs.gxt.ui.client.event.SelectionChangedEvent;
29
import com.extjs.gxt.ui.client.event.SelectionChangedEvent;
28
import com.extjs.gxt.ui.client.event.SelectionChangedListener;
30
import com.extjs.gxt.ui.client.event.SelectionChangedListener;
29
import com.extjs.gxt.ui.client.event.SelectionListener;
31
import com.extjs.gxt.ui.client.event.SelectionListener;
-
 
32
import com.extjs.gxt.ui.client.store.ListStore;
-
 
33
import com.extjs.gxt.ui.client.store.Store;
30
import com.extjs.gxt.ui.client.store.ListStore;
34
import com.extjs.gxt.ui.client.store.StoreSorter;
31
import com.extjs.gxt.ui.client.widget.ContentPanel;
35
import com.extjs.gxt.ui.client.widget.ContentPanel;
32
import com.extjs.gxt.ui.client.widget.button.Button;
36
import com.extjs.gxt.ui.client.widget.button.Button;
33
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig;
37
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig;
34
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;
38
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;
Line 122... Line 126...
122
				clicListe(personneSelectionnee);
126
				clicListe(personneSelectionnee);
123
			}
127
			}
124
		});
128
		});
Line 125... Line 129...
125
		
129
		
126
		store = new ListStore<Personne>();
130
		store = new ListStore<Personne>();
Line 127... Line 131...
127
		store.sort("fmt_nom_complet", SortDir.ASC);
131
		store.sort("nom", SortDir.ASC);
128
		
132
		
129
		grille = new Grid<Personne>(store, modeleColonnes);		
133
		grille = new Grid<Personne>(store, modeleColonnes);		
130
		grille.setSelectionModel(gsmSelectionGrille);
134
		grille.setSelectionModel(gsmSelectionGrille);
131
		grille.setWidth("100%");
135
		grille.setWidth("100%");
132
		grille.setAutoExpandColumn("fmt_nom_complet");
136
		grille.setAutoExpandColumn("fmt_nom_complet");
133
		grille.getView().setAutoFill(true);
137
		grille.getView().setAutoFill(true);
134
		grille.getView().setForceFit(true);
138
		grille.getView().setForceFit(true);
135
		grille.addListener(Events.ViewReady, new Listener<BaseEvent>() {
139
		grille.addListener(Events.ViewReady, new Listener<BaseEvent>() {
136
			public void handleEvent(BaseEvent be) {
140
			public void handleEvent(BaseEvent be) {
137
				grille.getStore().sort("fmt_nom_complet", SortDir.ASC);
141
				grille.getStore().sort("nom", SortDir.ASC);
138
				grille.getSelectionModel().select(0, false);
142
				grille.getSelectionModel().select(0, false);
139
			}
143
			}
140
		});
144
		});
Line 181... Line 185...
181
	public void rafraichir(Object nouvellesDonnees) {
185
	public void rafraichir(Object nouvellesDonnees) {
Line 182... Line 186...
182
		
186
		
183
		if (nouvellesDonnees instanceof PersonneListe) {
187
		if (nouvellesDonnees instanceof PersonneListe) {
Line -... Line 188...
-
 
188
			PersonneListe listePersonnes = (PersonneListe) nouvellesDonnees;
-
 
189
			
-
 
190
			// la grille de gxt est case sensitive, on harmonise donc tous les noms en majuscule et sans espaces
-
 
191
			// au début et à la fin  afin de pouvoir trier correctement 
-
 
192
			// (la colonne nom ne sert qu'au tri et n'est pas affichée)
-
 
193
			for (Iterator<Personne> iterator = listePersonnes.toList().iterator(); iterator.hasNext();) {
-
 
194
				 Personne personne =  iterator.next();
-
 
195
				 personne.setNom(personne.getNom().toUpperCase().trim());
184
			PersonneListe listePersonnes = (PersonneListe) nouvellesDonnees;
196
			}
185
			
197
			
186
			champFiltreRecherche.setListePaginable(listePersonnes);
198
			champFiltreRecherche.setListePaginable(listePersonnes);
Line 187... Line 199...
187
			pagination.setlistePaginable(listePersonnes);
199
			pagination.setlistePaginable(listePersonnes);
188
			pagination.rafraichir(listePersonnes.getPageTable());
200
			pagination.rafraichir(listePersonnes.getPageTable());
189
			
201
			
190
			if (listePersonnes != null) {
202
			if (listePersonnes != null) {
191
				List<Personne> liste = (List<Personne>) listePersonnes.toList();
-
 
-
 
203
				List<Personne> liste = (List<Personne>) listePersonnes.toList();
192
				store.removeAll();
204
				store.removeAll();
193
				store.add(liste);
205
				store.add(liste);
194
				
206
				store.sort("nom", SortDir.ASC);
195
				mediateur.actualiserPanneauCentral();
207
				mediateur.actualiserPanneauCentral();
196
				grille.fireEvent(Events.ViewReady);
208
				grille.fireEvent(Events.ViewReady);