Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 1687 Rev 1762
Line 2... Line 2...
2
 
2
 
3
import java.util.ArrayList;
3
import java.util.ArrayList;
4
import java.util.Iterator;
4
import java.util.Iterator;
Line 5... Line -...
5
import java.util.List;
-
 
6
 
5
import java.util.List;
7
 
6
 
8
import org.tela_botanica.client.Mediateur;
7
import org.tela_botanica.client.Mediateur;
9
import org.tela_botanica.client.RegistreId;
8
import org.tela_botanica.client.RegistreId;
10
import org.tela_botanica.client.composants.ChampFiltreRecherche;
9
import org.tela_botanica.client.composants.ChampFiltreRecherche;
11
import org.tela_botanica.client.composants.InfoLogger;
10
import org.tela_botanica.client.composants.InfoLogger;
12
import org.tela_botanica.client.images.Images;
11
import org.tela_botanica.client.images.Images;
13
import org.tela_botanica.client.interfaces.Rafraichissable;
12
import org.tela_botanica.client.interfaces.Rafraichissable;
14
import org.tela_botanica.client.modeles.Information;
13
import org.tela_botanica.client.modeles.Information;
-
 
14
import org.tela_botanica.client.modeles.Utilisateur;
15
import org.tela_botanica.client.modeles.Utilisateur;
15
import org.tela_botanica.client.modeles.personne.Personne;
16
import org.tela_botanica.client.modeles.personne.Personne;
16
import org.tela_botanica.client.modeles.personne.PersonneAsyncDao;
17
import org.tela_botanica.client.modeles.personne.PersonneListe;
17
import org.tela_botanica.client.modeles.personne.PersonneListe;
18
import org.tela_botanica.client.modeles.projet.Projet;
18
import org.tela_botanica.client.modeles.projet.Projet;
Line 23... Line 23...
23
import com.extjs.gxt.ui.client.Style.SortDir;
23
import com.extjs.gxt.ui.client.Style.SortDir;
24
import com.extjs.gxt.ui.client.data.ModelComparer;
24
import com.extjs.gxt.ui.client.data.ModelComparer;
25
import com.extjs.gxt.ui.client.event.BaseEvent;
25
import com.extjs.gxt.ui.client.event.BaseEvent;
26
import com.extjs.gxt.ui.client.event.ButtonEvent;
26
import com.extjs.gxt.ui.client.event.ButtonEvent;
27
import com.extjs.gxt.ui.client.event.Events;
27
import com.extjs.gxt.ui.client.event.Events;
-
 
28
import com.extjs.gxt.ui.client.event.GridEvent;
28
import com.extjs.gxt.ui.client.event.Listener;
29
import com.extjs.gxt.ui.client.event.Listener;
29
import com.extjs.gxt.ui.client.event.SelectionChangedEvent;
30
import com.extjs.gxt.ui.client.event.SelectionChangedEvent;
30
import com.extjs.gxt.ui.client.event.SelectionChangedListener;
31
import com.extjs.gxt.ui.client.event.SelectionChangedListener;
31
import com.extjs.gxt.ui.client.event.SelectionListener;
32
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.ListStore;
Line 40... Line 41...
40
import com.extjs.gxt.ui.client.widget.grid.GridSelectionModel;
41
import com.extjs.gxt.ui.client.widget.grid.GridSelectionModel;
41
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
42
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
42
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
43
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
43
import com.google.gwt.core.client.GWT;
44
import com.google.gwt.core.client.GWT;
44
import com.google.gwt.i18n.client.Constants;
45
import com.google.gwt.i18n.client.Constants;
-
 
46
import com.google.gwt.user.client.Window;
Line 45... Line 47...
45
 
47
 
Line 46... Line 48...
46
public class PersonneListeVue extends ContentPanel implements Rafraichissable {
48
public class PersonneListeVue extends ContentPanel implements Rafraichissable {
Line 126... Line 128...
126
				clicListe(personneSelectionnee);
128
				clicListe(personneSelectionnee);
127
			}
129
			}
128
		});
130
		});
Line 129... Line 131...
129
		
131
		
130
		store = new ListStore<Personne>();
-
 
Line 131... Line 132...
131
		store.sort("nom", SortDir.ASC);
132
		store = new ListStore<Personne>();
132
		
133
		
133
		grille = new Grid<Personne>(store, modeleColonnes);		
134
		grille = new Grid<Personne>(store, modeleColonnes);		
134
		grille.setSelectionModel(gsmSelectionGrille);
135
		grille.setSelectionModel(gsmSelectionGrille);
135
		grille.setWidth("100%");
136
		grille.setWidth("100%");
136
		grille.setAutoExpandColumn("fmt_nom_complet");
137
		grille.setAutoExpandColumn("fmt_nom_complet");
137
		grille.getView().setAutoFill(true);
138
		grille.getView().setAutoFill(true);
138
		grille.getView().setForceFit(true);
139
		grille.getView().setForceFit(true);
139
		grille.addListener(Events.ViewReady, new Listener<BaseEvent>() {
-
 
140
			public void handleEvent(BaseEvent be) {
140
		grille.addListener(Events.ViewReady, new Listener<BaseEvent>() {
141
				grille.getStore().sort("nom", SortDir.ASC);
141
			public void handleEvent(BaseEvent be) {
142
				grille.getSelectionModel().select(0, false);
142
				grille.getSelectionModel().select(0, false);
143
			}
143
			}
144
		});
144
		});
145
		grille.addListener(Events.OnDoubleClick, new Listener<BaseEvent>(){
145
		grille.addListener(Events.OnDoubleClick, new Listener<BaseEvent>(){
146
			public void handleEvent(BaseEvent be) {
146
			public void handleEvent(BaseEvent be) {
147
				modifier.fireEvent(Events.Select);
147
				modifier.fireEvent(Events.Select);
-
 
148
			}
-
 
149
		});
-
 
150
 
-
 
151
		grille.addListener(Events.SortChange, new Listener<BaseEvent>() {
-
 
152
 
-
 
153
			@Override
-
 
154
			public void handleEvent(BaseEvent be) {
-
 
155
				GridEvent ge = (GridEvent<Personne>) be;
-
 
156
				// TODO rajouter un test sur le sort state pour trier par nom par défaut 
-
 
157
				// bref, on verra plus tard parce que c'est chiant et qu'on en a marre de coel
-
 
158
				String tri = ge.getSortInfo().getSortField();
-
 
159
				if(tri.equals("_courriel_princ_")) {
-
 
160
					tri = "truk_courriel";
-
 
161
				}
-
 
162
				
-
 
163
				if(tri.equals("fmt_nom_complet")) {
-
 
164
					tri = "nom";
-
 
165
				}
-
 
166
				PersonneAsyncDao.tri = Personne.PREFIXE+"_"+tri+" "+ge.getSortInfo().getSortDir().toString();
-
 
167
				pagination.changePage();
148
			}
168
			}
Line 149... Line 169...
149
		});
169
		});
150
		add(grille);
170
		add(grille);
151
		
171
		
Line 201... Line 221...
201
			
221
			
202
			if (listePersonnes != null) {
222
			if (listePersonnes != null) {
203
				List<Personne> liste = (List<Personne>) listePersonnes.toList();
223
				List<Personne> liste = (List<Personne>) listePersonnes.toList();
204
				store.removeAll();
224
				store.removeAll();
205
				store.add(liste);
-
 
206
				store.sort("nom", SortDir.ASC);
225
				store.add(liste);
207
				mediateur.actualiserPanneauCentral();
226
				mediateur.actualiserPanneauCentral();
208
				grille.fireEvent(Events.ViewReady);
227
				grille.fireEvent(Events.ViewReady);
209
			}
228
			}
210
		} else if (nouvellesDonnees instanceof Information)	{
229
		} else if (nouvellesDonnees instanceof Information)	{