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;
|
4 |
import java.util.Iterator;
|
Line 4... |
Line 5... |
4 |
import java.util.List;
|
5 |
import java.util.List;
|
5 |
|
6 |
|
6 |
import org.tela_botanica.client.Mediateur;
|
7 |
import org.tela_botanica.client.Mediateur;
|
7 |
import org.tela_botanica.client.RegistreId;
|
8 |
import org.tela_botanica.client.RegistreId;
|
8 |
import org.tela_botanica.client.i18n.Constantes;
|
9 |
import org.tela_botanica.client.i18n.Constantes;
|
9 |
import org.tela_botanica.client.images.Images;
|
10 |
import org.tela_botanica.client.images.Images;
|
- |
|
11 |
import org.tela_botanica.client.interfaces.Rafraichissable;
|
10 |
import org.tela_botanica.client.interfaces.Rafraichissable;
|
12 |
import org.tela_botanica.client.modeles.Information;
|
11 |
import org.tela_botanica.client.modeles.Information;
|
13 |
import org.tela_botanica.client.modeles.Personne;
|
12 |
import org.tela_botanica.client.modeles.Publication;
|
14 |
import org.tela_botanica.client.modeles.Publication;
|
Line 13... |
Line 15... |
13 |
import org.tela_botanica.client.modeles.PublicationListe;
|
15 |
import org.tela_botanica.client.modeles.PublicationListe;
|
Line 24... |
Line 26... |
24 |
import com.extjs.gxt.ui.client.event.SelectionListener;
|
26 |
import com.extjs.gxt.ui.client.event.SelectionListener;
|
25 |
import com.extjs.gxt.ui.client.store.ListStore;
|
27 |
import com.extjs.gxt.ui.client.store.ListStore;
|
26 |
import com.extjs.gxt.ui.client.widget.ContentPanel;
|
28 |
import com.extjs.gxt.ui.client.widget.ContentPanel;
|
27 |
import com.extjs.gxt.ui.client.widget.button.Button;
|
29 |
import com.extjs.gxt.ui.client.widget.button.Button;
|
28 |
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig;
|
30 |
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig;
|
- |
|
31 |
import com.extjs.gxt.ui.client.widget.grid.ColumnData;
|
29 |
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;
|
32 |
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;
|
30 |
import com.extjs.gxt.ui.client.widget.grid.Grid;
|
33 |
import com.extjs.gxt.ui.client.widget.grid.Grid;
|
- |
|
34 |
import com.extjs.gxt.ui.client.widget.grid.GridCellRenderer;
|
31 |
import com.extjs.gxt.ui.client.widget.grid.GridSelectionModel;
|
35 |
import com.extjs.gxt.ui.client.widget.grid.GridSelectionModel;
|
32 |
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
|
36 |
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
|
33 |
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
|
37 |
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
|
34 |
import com.google.gwt.core.client.GWT;
|
38 |
import com.google.gwt.core.client.GWT;
|
- |
|
39 |
import com.google.gwt.user.client.Window;
|
Line 35... |
Line 40... |
35 |
|
40 |
|
Line 36... |
Line 41... |
36 |
public class PublicationListeVue extends ContentPanel implements Rafraichissable {
|
41 |
public class PublicationListeVue extends ContentPanel implements Rafraichissable {
|
37 |
|
42 |
|
Line 38... |
Line 43... |
38 |
private Mediateur mediateur = null;
|
43 |
private Mediateur mediateur = null;
|
39 |
private Constantes i18nC = null;
|
44 |
private Constantes i18nC = null;
|
- |
|
45 |
|
Line 40... |
Line 46... |
40 |
|
46 |
private Grid<Publication> grille = null;
|
41 |
private Grid<Publication> grille = null;
|
47 |
private ListStore<Publication> store = null;
|
42 |
private ListStore<Publication> store = null;
|
48 |
private ColumnModel modeleDesColonnes = null;
|
Line 84... |
Line 90... |
84 |
|
90 |
|
85 |
List<ColumnConfig> colonnes = new ArrayList<ColumnConfig>();
|
91 |
List<ColumnConfig> colonnes = new ArrayList<ColumnConfig>();
|
86 |
// ATTENTION : les noms des colonnes doivent correspondre aux noms variables de la classe utilisée dans la liste
|
92 |
// ATTENTION : les noms des colonnes doivent correspondre aux noms variables de la classe utilisée dans la liste
|
87 |
ColumnConfig auteurColonne = new ColumnConfig("fmt_auteur", "Auteur(s)", 150);
|
93 |
ColumnConfig auteurColonne = new ColumnConfig("fmt_auteur", "Auteur(s)", 150);
|
88 |
// FIXME : ne fonctionne plus avec GXT2.0
|
94 |
// FIXME : ne fonctionne plus avec GXT2.0
|
89 |
/*
|
95 |
|
Line -... |
Line 96... |
- |
|
96 |
auteurColonne.setRenderer(new GridCellRenderer<Publication>() {
|
90 |
auteurColonne.setRenderer(new CellRenderer() {
|
97 |
|
91 |
|
98 |
@Override
|
- |
|
99 |
public Object render(Publication model, String property,
|
92 |
public String render(Component item, String property, Object value) {
|
100 |
ColumnData config, int rowIndex, int colIndex,
|
93 |
// TODO Auto-generated method stub
|
101 |
ListStore<Publication> store, Grid<Publication> grid) {
|
Line 94... |
Line 102... |
94 |
return ((String)value).replaceAll("\\|", ", ");
|
102 |
return (model.getAuteur()).replaceAll("\\|", ", ");
|
- |
|
103 |
}
|
95 |
}
|
104 |
|
96 |
|
105 |
});
|
Line 97... |
Line 106... |
97 |
});
|
106 |
|
98 |
*/
|
107 |
|
99 |
colonnes.add(auteurColonne);
|
108 |
colonnes.add(auteurColonne);
|
100 |
|
109 |
|
101 |
colonnes.add(new ColumnConfig("titre", "Titre", 250));
|
110 |
colonnes.add(new ColumnConfig("titre", "Titre", 250));
|
102 |
colonnes.add(new ColumnConfig("fmt_nom_complet", "Nom de la revue", 150));
|
111 |
colonnes.add(new ColumnConfig("fmt_nom_complet", "Nom de la revue", 150));
|
103 |
colonnes.add(new ColumnConfig("ce_truk_editeur", "Editeur", 75));
|
112 |
colonnes.add(new ColumnConfig("ce_truk_editeur", "Editeur", 75));
|
104 |
colonnes.add(new ColumnConfig("date_parution", "Date de parution", 75));
|
113 |
colonnes.add(new ColumnConfig("date_parution", "Date de parution", 75));
|
Line 105... |
Line 114... |
105 |
colonnes.add(new ColumnConfig("indication_nvt", "Tome", 75));
|
114 |
colonnes.add(new ColumnConfig("indication_nvt", "Tome", 75));
|
106 |
colonnes.add(new ColumnConfig("fascicule", "Fascicule", 75));
|
115 |
colonnes.add(new ColumnConfig("fascicule", "Fascicule", 75));
|
107 |
colonnes.add(new ColumnConfig("truk_pages", "Pages", 75));
|
116 |
colonnes.add(new ColumnConfig("truk_pages", "Pages", 75));
|
108 |
ColumnModel modeleDesColonnes = new ColumnModel(colonnes);
|
117 |
modeleDesColonnes = new ColumnModel(colonnes);
|
Line 157... |
Line 166... |
157 |
public void rafraichir(Object nouvelleDonnees) {
|
166 |
public void rafraichir(Object nouvelleDonnees) {
|
158 |
if (nouvelleDonnees instanceof PublicationListe) {
|
167 |
if (nouvelleDonnees instanceof PublicationListe) {
|
159 |
PublicationListe publications = (PublicationListe) nouvelleDonnees;
|
168 |
PublicationListe publications = (PublicationListe) nouvelleDonnees;
|
Line 160... |
Line 169... |
160 |
|
169 |
|
161 |
if (publications != null) {
|
170 |
if (publications != null) {
|
- |
|
171 |
List<Publication> liste = publications.toList();
|
162 |
List<Publication> liste = (List<Publication>) publications.toList();
|
172 |
store = new ListStore<Publication>();
|
163 |
store.removeAll();
|
173 |
store.removeAll();
|
164 |
store.add(liste);
|
- |
|
165 |
|
174 |
store.add(liste);
|
166 |
gererEtatActivationBouton();
|
- |
|
167 |
|
175 |
grille.reconfigure(store, modeleDesColonnes);
|
168 |
mediateur.actualiserPanneauCentral();
|
176 |
grille.getSelectionModel().select(0, false);
|
- |
|
177 |
}
|
- |
|
178 |
|
- |
|
179 |
//mediateur.actualiserPanneauCentral();
|
- |
|
180 |
gererEtatActivationBouton();
|
169 |
}
|
181 |
layout(true);
|
170 |
} else if (nouvelleDonnees instanceof Information) {
|
182 |
} else if (nouvelleDonnees instanceof Information) {
|
171 |
Information info = (Information) nouvelleDonnees;
|
183 |
Information info = (Information) nouvelleDonnees;
|
172 |
if (info.getType().equals("maj_utilisateur")) {
|
184 |
if (info.getType().equals("maj_utilisateur")) {
|
173 |
gererEtatActivationBouton();
|
185 |
gererEtatActivationBouton();
|
174 |
}
|
186 |
}
|
175 |
} else {
|
187 |
} else {
|
176 |
GWT.log("Pas de correspondance dans la méthode rafraichir() de la classe "+this.getClass(), null);
|
188 |
GWT.log("Pas de correspondance dans la méthode rafraichir() de la classe "+this.getClass(), null);
|
177 |
}
|
189 |
}
|
178 |
layout();
|
190 |
layout();
|
- |
|
191 |
}
|
- |
|
192 |
|
- |
|
193 |
public void supprimerPublicationsSelectionnees() {
|
- |
|
194 |
List<Publication> selPub = grille.getSelectionModel().getSelectedItems();
|
- |
|
195 |
GWT.log("Le résultat dans supprimer est : "+grille.getSelectionModel().getSelection().size()+" ", null);
|
- |
|
196 |
for(Iterator<Publication> it = selPub.iterator(); it.hasNext();) {
|
- |
|
197 |
GWT.log("Le résultat dans rafraichir est : "+grille.getSelectionModel().getSelection().size()+" ", null);
|
- |
|
198 |
grille.getStore().remove(it.next());
|
- |
|
199 |
Window.alert("Retire l'item num : ");
|
- |
|
200 |
}
|
- |
|
201 |
grille.reconfigure(store, modeleDesColonnes);
|
- |
|
202 |
layout(true);
|
Line 179... |
Line 203... |
179 |
}
|
203 |
}
|