936 |
jpm |
1 |
package org.tela_botanica.client.vues;
|
60 |
jpm |
2 |
|
277 |
jp_milcent |
3 |
import org.tela_botanica.client.Mediateur;
|
|
|
4 |
import org.tela_botanica.client.interfaces.Rafraichissable;
|
|
|
5 |
import org.tela_botanica.client.modeles.Information;
|
935 |
jpm |
6 |
import org.tela_botanica.client.modeles.collection.CollectionListe;
|
|
|
7 |
import org.tela_botanica.client.modeles.personne.PersonneListe;
|
|
|
8 |
import org.tela_botanica.client.modeles.projet.ProjetListe;
|
|
|
9 |
import org.tela_botanica.client.modeles.publication.PublicationListe;
|
|
|
10 |
import org.tela_botanica.client.modeles.structure.StructureListe;
|
156 |
jp_milcent |
11 |
|
277 |
jp_milcent |
12 |
import com.extjs.gxt.ui.client.widget.Info;
|
60 |
jpm |
13 |
import com.extjs.gxt.ui.client.widget.LayoutContainer;
|
|
|
14 |
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
|
277 |
jp_milcent |
15 |
import com.google.gwt.core.client.GWT;
|
60 |
jpm |
16 |
|
444 |
jp_milcent |
17 |
public class ContenuVue extends LayoutContainer implements Rafraichissable {
|
60 |
jpm |
18 |
|
373 |
jp_milcent |
19 |
private Mediateur mediateur = null;
|
|
|
20 |
|
444 |
jp_milcent |
21 |
public ContenuVue(Mediateur mediateurCourant) {
|
373 |
jp_milcent |
22 |
mediateur = mediateurCourant;
|
60 |
jpm |
23 |
setLayout(new FitLayout());
|
364 |
jp_milcent |
24 |
setBorders(true);
|
60 |
jpm |
25 |
}
|
277 |
jp_milcent |
26 |
|
653 |
jp_milcent |
27 |
public Rafraichissable getContenu() {
|
|
|
28 |
Rafraichissable contenuPanneauCentre = null;
|
|
|
29 |
if (getItems() != null && getItems().size() == 1) {
|
|
|
30 |
contenuPanneauCentre = (Rafraichissable) getItem(0);
|
|
|
31 |
}
|
|
|
32 |
return contenuPanneauCentre;
|
|
|
33 |
}
|
|
|
34 |
|
277 |
jp_milcent |
35 |
//+----------------------------------------------------------------------------------------------------------------+
|
|
|
36 |
// RAFRAICHISSEMENT
|
|
|
37 |
//+----------------------------------------------------------------------------------------------------------------+
|
|
|
38 |
|
416 |
gduche |
39 |
public void rafraichir(Object nouvellesDonnees) {
|
|
|
40 |
if (nouvellesDonnees instanceof StructureListe) {
|
|
|
41 |
mediateur.afficherListeStructures((StructureListe) nouvellesDonnees);
|
468 |
jp_milcent |
42 |
} else if (nouvellesDonnees instanceof CollectionListe) {
|
|
|
43 |
mediateur.afficherListeCollections((CollectionListe) nouvellesDonnees);
|
416 |
gduche |
44 |
} else if (nouvellesDonnees instanceof PublicationListe) {
|
|
|
45 |
mediateur.afficherListePublication((PublicationListe) nouvellesDonnees);
|
|
|
46 |
} else if (nouvellesDonnees instanceof PersonneListe) {
|
|
|
47 |
mediateur.afficherListePersonnes((PersonneListe) nouvellesDonnees);
|
|
|
48 |
} else if (nouvellesDonnees instanceof ProjetListe) {
|
877 |
aurelien |
49 |
GWT.log("reception d'une liste de projets", null);
|
416 |
gduche |
50 |
mediateur.afficherListeProjets((ProjetListe) nouvellesDonnees);
|
|
|
51 |
} else if (nouvellesDonnees instanceof Information) {
|
|
|
52 |
Information info = (Information) nouvellesDonnees;
|
667 |
gduche |
53 |
if (info.getType().equals("maj_utilisateur")) {
|
911 |
jpm |
54 |
if (getContenu() != null) {
|
672 |
gduche |
55 |
getContenu().rafraichir(info);
|
|
|
56 |
}
|
667 |
gduche |
57 |
} else {
|
|
|
58 |
// Affichage des éventuels messages de déboguage ou d'alerte
|
|
|
59 |
if (info.getMessages() != null && !info.getMessages().toString().equals("[]")) {
|
|
|
60 |
GWT.log(info.getMessages().toString(), null);
|
|
|
61 |
}
|
|
|
62 |
// Traitement en fonction des types d'information
|
|
|
63 |
if (info.getType().equals("liste_personne")) {
|
|
|
64 |
mediateur.afficherListePersonnes((PersonneListe) info.getDonnee(0));
|
|
|
65 |
Info.display("Chargement d'une liste de personnes", "");
|
|
|
66 |
}
|
277 |
jp_milcent |
67 |
}
|
|
|
68 |
}
|
358 |
jp_milcent |
69 |
mediateur.desactiverChargement();
|
277 |
jp_milcent |
70 |
}
|
60 |
jpm |
71 |
}
|