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